Display

如何使用 v4l2loopback 指定要流式傳輸的顯示?

  • May 27, 2020

我有一個帶有 2 個顯示器的設置。我在Manjaro,我是v4l2loopbackAUR(這裡是 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

並確保它工作得更好,但我想流式傳輸不同的監視器。我怎樣才能做到這一點?另外(它是一台 PC,我從來沒有任何攝像頭,所以/video0是假網路攝像頭:

$ v4l2-ctl --list-devices
Dummy video device (0x0000) (platform:v4l2loopback-000):
       /dev/video0

帶有DP(DisplayPort)的那個是我想要流式傳輸的那個

$ xrandr --listmonitors
Monitors: 2
0: +*DP-4 1920/480x1080/270+1920+0  DP-4
1: +HDMI-0 1920/531x1080/299+0+0  HDMI-0

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是第二個顯示。

引用自:https://unix.stackexchange.com/questions/589167