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:
File diff suppressed because one or more lines are too long
+1
-1
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user