我有一套带有 2 个显示器的设置。我在 上Manjaro
,我v4l2loopback
从以下位置安装AUR
(以下是 github 链接:https://github.com/umlaeute/v4l2loopback)并且效果很好,没有问题。但我的问题是如何指定我希望它使用哪个监视器?我所做的是:
$ sudo modprobe v4l2loopback exclusive_caps=1
$ ffmpeg -f x11grab -r xllgrab -r 15 -s 1920x1080 -i :0.0+0,0 -vcodec rawvideo -pix_fmt yuv420p -threads 0 -f v4l2 /dev/video0
当然它的效果更好,但我想流式传输不同的显示器。我怎样才能做到这一点?另外(它是一台电脑,我从来没有任何相机,所以/video0
假网络摄像头也是如此:
$ v4l2-ctl --list-devices
Dummy video device (0x0000) (platform:v4l2loopback-000):
/dev/video0
带有 (DisplayPort) 的端口DP
是我想要流式传输的端口
$ xrandr --listmonitors
Monitors: 2
0: +*DP-4 1920/480x1080/270+1920+0 DP-4
1: +HDMI-0 1920/531x1080/299+0+0 HDMI-0
答案1
ffmpeg-all 手册页显示 x11grab 采用一个选项,
[<hostname>]:<display_number>.<screen_number>[+<x_offset>,<y_offset>]
在你的情况下是 :0.0+0,0 并确定要抓取的内容。根据您的配置,您可以尝试:0.1+0,0
第二个屏幕或:0.0+1920,0
单个虚拟屏幕中的偏移,甚至:1.0+0,0
第二个显示器。