Переключение между несколькими камерами в браузере Mozilla Firefox

У меня есть несколько камер, подключенных к моему компьютеру.

Когда я запускаю свою HTML-страницу, у меня есть список камер, когда я переключаюсь с камеры 1 на камеру 2. Он отлично работает в браузере Google Chrome. Но в Firefox я не могу изменить поток локального тега видео.

Вот мой рабочий код в хроме.

// This is My HTML tag

    <video id="s-video" height="20%" width="15%" class="sub_video" autoplay="autoplay"></video>

// Javascript code

    navigator.mediaDevices.getUserMedia({video: {deviceId: camera}})
    .then(function(stream) {

        // I also get camera ID Hear in alert
        // svideo is video tag with autoplay enabled

        svideo = document.getElementById('s-video');
        svideo.srcObject = stream;
    });

Теперь этот код работает в Chrome, но когда я запускаю эту страницу в браузере Firefox, поток не меняется, даже если я выбираю камеру на вкладке разрешений Firefox.

Моя версия Firefox: Firefox Quantum 64.0b11 (64-разрядная версия)

ОС: Убунту 16.04

заранее спасибо


person vivek dhamecha    schedule 19.12.2018    source источник
comment
Можете ли вы предоставить полный воспроизводимый пример на JSFiddle или что-то в этом роде? Кроме того, вы сначала останавливаете треки в исходном потоке? Я знаю, что в Windows Firefox может работать с несколькими камерами одновременно. Но API, который он использует для этого, отличается от Ubuntu, и, возможно, это проблема.   -  person Brad    schedule 19.12.2018


Ответы (1)


я решаю это, изменив

{ video: { deviceId: 'yourDeviceId' } }

to

{ video: { deviceId: { exact: 'yourDeviceId' } } }

взгляните на этот https://developer.mozilla.org/en-US/docs/Web/API/MediaDevices/getUserMedia

person Rheznendra Praditya    schedule 10.05.2020