How can I pass a fake media stream to firefox from command line? How can I pass a fake media stream to firefox from command line? selenium selenium

How can I pass a fake media stream to firefox from command line?


Fake Webcam (Chrome & Firefox)

Here's a way setup a fake webcam from the command-line on Linux.

Dependencies

  • Linux (I'm using Ubuntu)
  • FFMpeg (video streaming tool)
  • v4l2loopback (enables a fake video device)

Installing v4l2loopback (Fake Webcam)

# 1. Install v4l2loopback kernel module from aptsudo apt install v4l2loopback-dkms# 2. Enable the "fake webcam", via v4l2loopback kernel modulesudo modprobe v4l2loopback devices=1 card_label="My Fake Webcam" exclusive_caps=1

Video File (Looped) as Fake Webcam

# Link video file (on loop) to the "fake webcam"ffmpeg -stream_loop -1 -re -i ./MYFILE.mp4 -vcodec rawvideo -pix_fmt yuv420p -threads 0 -f v4l2 /dev/video0

Desktop Video as Fake Webcam

# Link desktop video stream to the "fake webcam"ffmpeg -f x11grab -r 15 -s 1280x720 -i :0.0+0,0 -vcodec rawvideo -pix_fmt yuv420p -threads 0 -f v4l2 /dev/video0

The great part about this is that it works for both Firefox and Chrome! As it fakes the webcam at the kernel level.

Test your fake webcam here: https://webcamtests.com/

Chrome Test (Desktop Feed)enter image description here

Firefox Test (Desktop Feed)enter image description here

Disable Fake Webcam

If you need to disable it...

# To disable the fake webcam, simply remove it from the kernelsudo modprobe --remove v4l2loopback

Anyway, hope someone finds this useful!


Firefox has only these capabilities,browserName, browserVersion,platformName, acceptInsecureCerts,pageLoadStrategy,proxy,setWindowRect,timeouts,unhandledPromptBehavior

But as a option, there is one as in a below code,

options.addPreference("media.navigator.streams.fake", true);

Hope it will help you to solve this situation.