Open Bug 1948935 Opened 1 month ago Updated 1 month ago

Provide command line arg to pass an audio file to be used as a mic input in combination with media.navigator.streams.fake

Categories

(Core :: WebRTC: Audio/Video, task, P5)

task

Tracking

()

People

(Reporter: damencho, Unassigned)

Details

Steps to reproduce:

We (Jitsi Team) have a suite of tests testing WebRTC functionality.
Many tests which depend on dominant speaker we need to disable those tests when Firefox is involved.

Actual results:

The reason is that we cannot specify an audio file to be used as mic input when using "media.navigator.streams.fake". For another browser, we use a file with a natural speech and pass it as a command line argument.

Expected results:

Passing a file on the local filesystem as command line arg to be used as a mic input when "media.navigator.streams.fake" flag is true.

The Bugbug bot thinks this bug should belong to the 'Core::WebRTC' component, and is moving the bug to that component. Please correct in case you think the bot is wrong.

Component: Untriaged → WebRTC
Product: Firefox → Core

We have lots to do but this isn't a priority, sorry. I'm marking P5 because I could be open to accepting a patch.

As an alternative solution I would suggest using virtual mics/loopback devices. We do this in our CI where the test itself can then decide what a virtual mic should receive by playing the audio to the corresponding speaker device. Passing data to the loopback device could also be handled in the environment/test runner, of course.

Let me know if you need help getting Firefox to play along with such a setup. There are some prefs that are handy for bypassing permissions.

A second alternative would be to override getUserMedia with a WebAudio-based polyfill. Then you could get audio tracks that contain any content you choose.

Severity: -- → N/A
Status: UNCONFIRMED → NEW
Type: enhancement → task
Component: WebRTC → WebRTC: Audio/Video
Ever confirmed: true
Priority: -- → P5
You need to log in before you can comment on or make changes to this bug.