如何使用 avconv 捕获我的第二台显示器?

如何使用 avconv 捕获我的第二台显示器?

使用此命令:

avconv -f x11grab -s 2560x1440 -i :0.0

我可以从主显示器流式传输视频。我还有第二个 1080p 显示器,我用它来玩游戏。我想从监视器。这不起作用:

avconv -f x11grab -s 1920x1080 -i :0.1

我假设我必须使用-i :0.0并以某种方式指定它应该从 X 位置 2560 和 Y 位置 0 捕获 1920x1080 像素。我的游戏显示器放在主显示器的右侧。不幸的是,手册页avconv很长,所以我自己没能弄清楚这一点。

我努力了

-vfcrop这样使用:

-vcodec libx264 ... -vf "crop=$IN_WIDTH:$IN_HEIGHT:2560:360"

但它只显示了主显示屏左上角的 1080p 视频。

答案1

x = your_left_monitor_x-size;
y = if_you_want_to_crop_from_top/bottom;
bitrate = 8192;
avconv -f alsa -i pulse -acodec libmp3lame -ab 192k -f x11grab -r 60 -s 1920x1080 -i :0.0+${x},${y} -vcodec libx264 -vb ${bitrate}k -threads 4 -y video.mp4

答案2

我估计这样做。我的命令现在看起来像这样:

avconv \
  -f x11grab -s "4480x1440" -r "30" -i :0.0 \
  -vcodec libx264 -s "1280x720" -preset slow -vf "crop=1920:1080:2560:360"

这基本上捕捉到了两个都我的显示器并将输出裁剪到第二台显示器。我猜这会给我的电脑增加一些不必要的工作,但这是我迄今为止设法做到这一点的唯一方法。

相关内容