Перейти к основному содержимому

Имитация устройств (Эмуляция оборудования)

🔗 Оригинальная страница — Источник данного материала


Описание

Данный функционал доступен с версии 7.3.2.0

В ZennoPoster существует API для эмуляции webrtc media devices, это методы C# кода:

  • instance.GetWebRTCDevices()
  • instance.ShowWebRTCDevice(WebRtcDeviceItem device)
  • instance.HideWebRTCDevice(WebRtcDeviceItem device)

Данные методы позволяют настроить список устройств, который будет показан скриптам на странице.

Начиная с версии ZennoPoster 7.3.2.0, для браузера Chrome появился альтернативный способ эмуляции webrtc media devices. Он основан на встроенных в браузер фейковых девайсах. Это значит что страница сможет взаимодействовать с дейвайсами полноценно.

Вы можете настроить три фейковых девайса:

  • videooutput,
  • audiouotput,
  • audioinput

Для их использования нужно добавить следующие аргументы запуска Chrome:

--use-file-for-fake-video-capture="путь\_к\_видео\_в\_формате\_y4m"  
--use-fake-ui-for-media-stream
--use-fake-device-for-media-stream
--zl-default-audioutput-device-name="название\_audioutput\_девайса"
--zl-default-audioinput-device-name="название\_audioinput\_девайса"
--zl-default-videoinput-device-name="название\_videoinput\_девайса"
Путь к файлу и название девайсов нужно указать самостоятельно

Для корректного использования videooutput устройства необходимо выбрать видеофайл в формате .y4m

Если необходим аудиофайл для эмулирования аудиопотока микрофона, тогда используйте дополнительный аргумент:
--use-file-for-fake-audio-capture=”путь\_к\_аудио\_файлу”

Поддерживаются аудиофайлы в формате .wav.

По умолчанию аудиофайл будет проигрываться зациклено. Для одиночного воспроизведения файла нужно добавить %noloop к аргументу, например:
--use-file-for-fake-audio-capture=”путь\_к\_аудио\_файлу%noloop”