Я пытаюсь приобрести различные MediaStreams, указав в каждом случае разные deviceId
.Как получить несколько потоков с различными ограничениями устройств в Firefox?
Например: у меня есть 3 микрофона (audioinputs
) и вы хотите приобрести аудиопоток для каждого из них.
- streamC1: с
deviceId
4hYbpq3YGKqNN6RbbLz5HrLfolsmjFDMl8sY - streamC2: с
deviceId
MZ0gdxcs1Q0NW0sobM8ri3kfDhmOs1K74e2p streamC3: с
deviceId
iUWqFDfruPGcT6nl9gUxeN6dCM8VfFH5ZmR8const c1 = { audio: { deviceId: { exact: audioInputs[0].deviceId } } }; const c2 = { audio: { deviceId: { exact: audioInputs[1].deviceId } } }; const c3 = { audio: { deviceId: { exact: audioInputs[2].deviceId } } }; getMedia(c1) .then(() => getMedia(c2)) .then(() => getMedia(c3));
Это прекрасно работает в Chrome (версия 55.0.2883.87), и я получаю 3 разных потока (C1, C2, C3) со всеми звуковыми дорожками, имеющими ожидаемые метки.
Но терпит неудачу со вторым и третьим вызовом getUserMedia
(С2, С3) в Firefox (50.0.2) со следующей ошибкой:
According to the documentation для NotReadableErrors
:
Although the user granted permission to use the matching devices, a hardware error occurred at the operating system, browser, or Web page level which prevented access to the device.
(Однако я могу получить несколько потоков с теми же ограничениями, не сталкиваясь с этой проблемой.)
Является ли Firefox таким же ожидаемым здесь? Поскольку в документах упоминается «аппаратная ошибка»? Есть ли другой способ получить несколько потоков (с различными ограничениями на устройства)? Или мне нужно остановить потоки, освободить устройства и затем приобрести новый поток?
Спасибо за ваше время.
Привет большое спасибо за быстрый ответ. Таким образом, несколько активных ** источников видеовхода ** должны работать без проблем? (Я сделал быстрый тест и, похоже, работает). И на данный момент мне придется остановить дорожки, чтобы освободить связанное устройство? – wpp
Правильно и правильно. И будьте осторожны, что устройства обычно не могут быть приобретены, если они уже приобретены другим процессом. – pehrsons