Как программно выбрать микрофон в Google Chrome? - PullRequest
0 голосов
/ 04 мая 2018

Пример ИЗОБРАЖЕНИЯ

Можно ли как-то программно выбрать микрофон в хром? При условии полного доступа к машине, на которой запущен браузер.

Можно ли это как-то сделать на JavaScipt? Если это может быть реализовано в JS, то я могу сделать расширение через tampermonkey или запустить скрипт через webdriver Selenium.

Я нашел следующий пример, который отображает список аудиоустройств в консоли. Можно ли также поменять микрофон через консоль? Приведите пример, если это возможно. Если это невозможно, запишите, почему это не сработает, и как вы можете попытаться решить проблему различными способами.

navigator.mediaDevices.enumerateDevices()
.then(function(devices) {
  devices.forEach(function(device) {
    console.log(device.kind + ": " + device.label +
            " id = " + device.deviceId);
  });
})

1 Ответ

0 голосов
/ 08 января 2019

Я искал что-то похожее и нашел этот материал от Google, который, как мне кажется, подходит для вашего случая. Ниже приводится цитата из него.

navigator.mediaDevices.enumerateDevices().then((devices) => {
  devices = devices.filter((d) => d.kind === 'audioinput');
});

Затем вы можете передать идентификатор устройства, который хотите использовать, когда вызываете getUserMedia.

navigator.mediaDevices.getUserMedia({
  audio: {
    deviceId: devices[0].deviceId
  }
});
...