重复摄像头

重复摄像头

我正在尝试复制我的网络摄像头,以便可以同时在两个不同的 python 程序中使用它,我目前正在尝试使用以下命令使用 v4l2loopback 进行复制:

sudo modprobe v4l2loopback devices=2 

并且它确实打开了一个额外内容因为我得到了以下内容:

Dummy video device (0x0000) (platform:v4l2loopback-000):
/dev/video1

Lenovo EasyCamera: Lenovo EasyC (usb-0000:00:14.0-1):
/dev/video0

因此我尝试使用以下命令复制它

ffmpeg -f video4linux2 -s 800x600 -i /dev/video0 -codec copy -f v4l2 /dev/video1 \ -codec copy -f v4l2 /dev/video2 

但我收到以下错误:

Unable to find a suitable output format for ' -codec'-codec: Invalid argument

我能做些什么来修复它?或者用别的东西复制它?

答案1

您可能从网站上复制了该命令,但该命令以两行显示。问题在于\您的命令中存在错误。如果您删除它,它应该可以正常工作:

ffmpeg -f video4linux2 -s 800x600 -i /dev/video0 -codec copy -f v4l2 /dev/video1 -codec copy -f v4l2 /dev/video2

由于ffmpeg的语法相当复杂,其文档和许多 wiki 页面将示例命令分成多行以便于阅读。\在这种情况下, 字符用于转义换行符。


可能与主题无关,但如果你(或其他任何人)对为什么会导致问题感兴趣\

在大多数 shell 中,应用程序的输入参数由独立财务顾问变量,通常是空间标签新队(您可以在参数之间放置任意多个转义符)。转义符\会转义下一个字符,在您的情况下是字符[space],并导致输入参数变成[space]-codec而不是-codec

ffmpeg 的文档对于输入参数非常具体:

命令行上任何不能被解释为选项的内容都被视为输出 URL。

...因此它将其解释[space]-codec为输出 url,但显然它找不到合适的输出格式(请注意错误消息中的空格字符)。

相关内容