navigator.mediaDevices.enumerateDevices () возвращает пустые метки - PullRequest
0 голосов
/ 19 февраля 2020

Фон

Машина, на которой я пытаюсь реализовать это, содержит несколько камер, я хочу выбрать камеру в коде. (все машины имеют одинаковое оборудование)

Выпуск

Я пытаюсь реализовать пользовательскую функцию перед запросом доступа к видео, где я вручную устанавливаю, какое устройство следует использовать для предотвратить выбор неправильной камеры, но когда я использую await navigator.mediaDevices.enumerateDevices(), я получаю пустые метки для видеокамеры.

1 Ответ

3 голосов
/ 19 февраля 2020

navigator.mediaDevices.enumerateDevices () вернет пустое значение атрибута метки, если не предоставлено разрешение на доступ к медиаустройству. Попробуйте использовать его после getUserMedia.

(async () => {   
  await navigator.mediaDevices.getUserMedia({audio: true, video: true});   
  let devices = await navigator.mediaDevices.enumerateDevices();   
  console.log(devices); 
})();
...