V4l2loopback device not opening in chrome or firefox

Hi all,

I am having an issue with v4l2loopback. I have multiple csi cameras. Browsers are not able to see CSI Cameras. So, I am writing those csi camera’s output into an virtual devices using ROS Virtual Cam package.

here is the command to create a virtual devices
sudo modprobe v4l2loopback devices=2 video_nr=10,11 card_label=“csi1 output”,“csi 2 output” exclusive_caps=1

here is the command I am using to get the csi camera output and wriiting into a virtual device.
rosrun virtual_cam stream _device:=/dev/video10 _width:=640 _height:=480 _fourcc:=YV12 image:=/my_camera/csi_camera_1

When I open the virtual device using opencv, I am able to see the csi Camera’s feed. But in firefox or chrome, it is able to detect the labels like( csi 1output and csi 2 output) but camera feed is blank. In the console it is showing an error like this,

getUserMedia: Requested Device Not Found".

So, I tried to record the screen using ffmpeg and writing into a virtual device (csi 1 output) and able to see it in chrome. I stopped ffmpeg and run the rosrun (above command to write csi cameras into a virtual device) then it is working.

It is so, inconsistent. Please help me if you have any ideas about this.

hello udaysaikrishna,

according to Camera Architecture Stack, that’s v4l2src to communicate with USB camera directly;
other bayer sensor types, (i.e. CSI camera sensor). it only support with the path going through [Camera Core] block to handle demosaic and other image process.

you may convert the pixel formats as chrome or firefox support types,
please also check Topic 164994 as see-also,