fix(камера): не держать превью-камеру весь звонок (лампочка горела при выкл. видео)
Первопричина: LocalVideoControlButton/LocalAudioControlButton на mounted() подписываются на useDevices и держат подписку весь звонок; initializeDevices безусловно грабит камеру (getUserMedia video:true) для превью, хотя кнопкам нужен лишь список устройств. Камера отпускалась только по завершении звонка → индикатор горел при выключенном видео (медиа-конвейер звонка свой трек останавливает корректно, но превью-подсистема — нет). Фикс: разделены подписка на СПИСОК устройств и на ЖИВОЙ превью-поток. streamSubscribersCount + единая точка контроля в updateAudio/VideoStream (без превью-подписчика поток не грабится и останавливается — защищает и от watch). Кнопки звонка: requestStream:false. Диалог настроек — без изменений (превью работает). enableDeviceEvents использует enumerateDevices (без камеры). Сборка OK. НЕ деплоено — ждёт тест-фазу (docs/f7-fixes/camera-led-on-with-video-off.md).
This commit is contained in:
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Reference in New Issue
Block a user