问题标签 [v4l2loopback]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
8303 浏览

c++ - 如何写入/管道到由 V4L2loopback 模块创建的虚拟网络摄像头?

我编写了一个应用程序,它从网络摄像头读取并在 Linux 上使用 OpenCV 处理帧。现在我想将我的应用程序的输出通过管道传输到由 V4L2loopback 模块创建的虚拟网络摄像头,以便其他应用程序能够读取它。我已经使用 C 编写了应用程序。我不知道该怎么做。你能给我一些提示吗?

0 投票
1 回答
6283 浏览

gstreamer - 使用 gstreamer 将视频文件馈送到 v4l2sink

我想使用 gstreamer 和 v4l2loopback 将视频文件提供给我的虚拟视频设备。

使用videotestsrc,类似这样的工作(即我可以从 VLC 打开我的虚拟设备):

但是,完全相同的代码不适用于我的视频文件:

它实际上陷入了“PREROLLING”阶段:

有人能看出为什么吗?我错过了filesrc和之间的一些转换decodebin2吗?

0 投票
1 回答
7740 浏览

google-chrome - GStreamer + V4L2loopback 作为与 Chrome 兼容的网络摄像头

我正在尝试使用 v4l2loopback 在 Chrome 中创建一个虚拟相机,其中传入的视频是通过 RTP 的 H264。

我在获得 Chrome 中识别的 GStreamer 测试视频方面取得了一些成功MediaStreamTrack.getSources

这很好用,Chrome 会显示视频测试源。

但是,当我使用传入的 h264/RTP 源时,设备不会显示在MediaStreamTrack.getSources. 例如:

这是什么原因?解决方案是什么?

我曾认为这可能与视频格式有关,并且可能需要通过 v4l2loopback 设置正确的上限。

0 投票
3 回答
13516 浏览

webrtc - Dummy video device - v4l2loopback - webRTC

I need to play multiple video for test a video server. I'm using lubuntu 14.04 and have installed V4l2loopback to make the device file ( /dev/videoN )

I am using mplayer to play video from this device as described mplayer cam

I have done the modify to the source code and successfully played the video and viewed with xawtv and with flashplayer (on firefox 28). I have tried to view with webRtc but it can't work.

Do you have some idea to do this? There is some particular pixelformat to define in examples/yuv4mpeg_to_v4l2.c ?

.....

I'm trying to find the problem using direct access to the resource with this script:

The video constraingts are take from mplayer output:

But the problem persists: "The following error occured: Starting video failed"..

The video is correctly played and visible both with xawtv and with flashplayer.

0 投票
1 回答
576 浏览

gstreamer - GStreamer decklinksrc 不适用于 v4l2loopback

我有 Blackmagic intensity pro 采集卡和通过 HDMI 连接的 GoPro Hero 3。

我已将 v4l2loopback 安装到 /dev/video0。

尝试使用decklinksrc 将视频捕获到v4l2sink:

如果我使用 mplayer:

它运行完美,但 Skype 将 video0 显示为黑屏。Cheese 和 Flash 根本不显示此设备。

我怎样才能让它在 Flash 和 Skype 中作为网络摄像头工作?

0 投票
0 回答
1668 浏览

gstreamer - 来自 c920 + v4l2loopback 的 Gstreamer + h264 流不起作用

我已经在 cubieboard2 和网络摄像头罗技 c920 的项目中工作了一个月,经过大量搜索和试验错误后,我决定使用 gstreamer + v4l2loopback 将提供 c920 的硬件编码 h264 流发送到 vlc 并添加 textoverlay这个程序。

当我尝试将 gstreamer 与 v4l2loopback 一起使用时,问题就出现了。如果我使用罗技的原始流可以正常工作:

也可以这样

但是当我使用 h264 流时:

它不起作用,输出“流式传输任务已暂停,原因未链接(-1)”,奇怪的是程序输出的上限与我在管道上指定的上限不同:

/GstPipeline:pipeline0/GstUvcH264Src:src.GstGhostPad:vfsrc: caps = video/x-raw, format=(string)YUY2, width=(int)2304, height=(int)1536, pixel-aspect-ratio=(fraction )1/1, interlace-mode=(string)progressive, framerate=(fraction)2/1 /GstPipeline:pipeline0/GstUvcH264Src:src.GstGhostPad:vfsrc.GstProxyPad:proxypad0: caps = video/x-raw, format=( string)YUY2, width=(int)2304, height=(int)1536, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive, framerate=(fraction)2/1

我很确定问题与此有关,但我不知道如何继续尝试解决此问题,非常感谢任何帮助。

我在用着:

  • v4l2loopback (0.8.0)
  • Gstreamer 1.2.4
  • cubieboard2(手臂电脑)
  • 网络摄像头罗技 c920
0 投票
1 回答
7225 浏览

linux - 如何在 ffmpeg 中捕获标准输出流,然后将其通过管道传输到 v4l2loopback

我正在尝试将我的 h264 流传输到 ffmpeg,然后传输到我的 v4l2loopback 设备。问题是我对 linux 还很陌生,所以无法让它工作。该流可以输出到标准输出,但我不知道如何使用 ffmpeg 再次捕获它,然后再次将其通过管道传输到我的 v4l2loopback 设备。

有谁知道如何做到这一点,或者可能是如何解决它的指针?

这是捕获程序:

PS!您几乎可以在代码底部找到捕获程序的选项。

它是 V4L2 视频捕获示例的修改版本。然后我知道如果我已将流输出到文件中,我将不得不运行此命令将原始格式转换为 mp4 格式:

我正在使用的 v4l2loopback 程序在这里找到: https ://github.com/umlaeute/v4l2loopback

- - - - - - - - - 更新 - - - - - - - - -

好的。所以我得到了从捕获程序到 ffmpeg 工作的管道。它捕获、解码 h264,我可以使用以下命令将其写入 mp4 文件:

./capture -F -d /dev/video0 -o | ffmpeg -f h264 -i - -vcodec copy out.mp4

现在我试图让最后一个管道使用这个命令:

我收到这些错误:

  • muxer 不支持不可搜索的输出
  • 无法为输出文件 #0 写入标头(编解码器参数不正确?):参数无效

有任何想法吗?

0 投票
3 回答
2629 浏览

gstreamer - rtsp 流作为虚拟网络摄像头(v4l2loopback、罗技 c920、beaglebone、gstreamer)

我正在尝试使用来自 beaglebone 的 rtsp 流作为具有 v4l2loopback 的虚拟网络摄像头。

在 beaglebone(server) 我开始流:

在我的客户端上,我可以使用 vlc 毫无问题地查看流。现在我正在尝试将流用作虚拟网络摄像头,其中:

该命令导致:

有人知道这里有什么问题吗?我错过了什么,还是有其他方法可以实现这一目标?谢谢!

0 投票
0 回答
1125 浏览

gstreamer - 使用 gstreamer 将视频作为虚拟摄像机输入流式传输到 VM

我使用 VLC 将我的相机从 PC 流式传输到远程 VM。

cvlc v4l2:///dev/video0 :live-caching=300 :sout="#transcode{vcodec=FLV1,scale=0.75,vb=128,acodec=none}:http{dst=:8080/stream.wmv}"

ssh -C -X -p 22 user@83.*.*.* -R 8080:localhost:80我可以通过端口转发 ( ) 并使用以下命令从 VM 中看到摄像头:

wget http://13.*.*.*:8080/stream.wmv -O - | mplayer mplayer -cache 8192 -

我想获取该流并将其发送到虚拟摄像机,例如 /dev/video9。这个虚拟摄像头应该可以从 Skype 读取。对于虚拟相机,我使用 v4l2loopback。为了接收流,我使用 gstreamer 和 mjpegtools_yuv_to_v4l。

我读过 [How can I use vloopback mjpeg pipe without WebcamStudio][1] 类似这样的内容:

gst-launch-1.0 souphttpsrc location=http://13*.*.*.*:8080/stream.wmv ! decodebin ! y4menc ! filesink location=output.yuv & cat output.yuv | mjpegtools_yuv_to_v4l /dev/video9

但我收到类似的错误

sfdemux0:无法解复用流。附加调试信息:读取流标头中的 EOF,停止。

谢谢你。

0 投票
1 回答
1526 浏览

camera - linux如何将视频显示到网络摄像头

我正在尝试以下命令,以便我的网络摄像头在我从网络或 android 模拟器访问它时显示视频。

我正在使用archlinux。我已经安装了 v4l2loopback-dkms。并将模块添加到内核中。然后我启动了

但没有成功。

也试过:

但不工作