在 mediastreamer2 中克隆网络摄像头流
Clone WebCam stream in mediastreamer2
我正在使用 mediastreamer2 从网络摄像头通过 RTP 连接到另一个系统的视频流。
我想要 2 个(或更多)输出视频流,第一个
初始化工作正常,但第二个流抱怨网络摄像头正忙。
libv4l2: error setting pixformat: Device or resource busy
您有任何提示,and/or 想法如何克隆网络摄像头视频流或其他实现 2 个视频流的方法吗?
提前致谢!
Mediastreamer2 是用 c 编写的,我正在使用 Ubuntu 和 Qt 进行编码。
问候
好的,我有一个解决方案:
Loopback 是制作虚拟网络摄像头的好包。
sudo apt-get install v4l2loopback-dkms //to install
sudo modprobe v4l2loopback devices=X // X = number of virtual cams
将视频源从真实网络摄像头复制到虚拟(check this page)
ffmpeg -f video4linux2 -s 352x288 -i /dev/video0 -codec copy -f v4l2 /dev/video1 -codec copy -f v4l2 /dev/video2 // this copys from video0 to the VirtualCams video1
通过选择虚拟摄像头启动流
MSWebCam *cam = ms_web_cam_manager_get_cam(m,"V4L2: /dev/video1");
我正在使用 mediastreamer2 从网络摄像头通过 RTP 连接到另一个系统的视频流。
我想要 2 个(或更多)输出视频流,第一个 初始化工作正常,但第二个流抱怨网络摄像头正忙。
libv4l2: error setting pixformat: Device or resource busy
您有任何提示,and/or 想法如何克隆网络摄像头视频流或其他实现 2 个视频流的方法吗?
提前致谢! Mediastreamer2 是用 c 编写的,我正在使用 Ubuntu 和 Qt 进行编码。
问候
好的,我有一个解决方案:
Loopback 是制作虚拟网络摄像头的好包。
sudo apt-get install v4l2loopback-dkms //to install
sudo modprobe v4l2loopback devices=X // X = number of virtual cams
将视频源从真实网络摄像头复制到虚拟(check this page)
ffmpeg -f video4linux2 -s 352x288 -i /dev/video0 -codec copy -f v4l2 /dev/video1 -codec copy -f v4l2 /dev/video2 // this copys from video0 to the VirtualCams video1
通过选择虚拟摄像头启动流
MSWebCam *cam = ms_web_cam_manager_get_cam(m,"V4L2: /dev/video1");