FFMPEG 无法打开显示错误:1

FFMPEG 无法打开显示错误:1

我使用 Xvfb 在显示器 1 上启动 X 服务器,x11vnc 也设置为 -display :1,并使用 fluxbox 作为 Ubuntu 20.04 LTS 上的窗口管理器,就像使用以下命令一样

sudo -i -u ubuntu Xvfb :1 +extension GLX -screen 0 1440x1080x16 -ac
sudo -i -u ubuntu DISPLAY=:1 fluxbox
sudo -i -u ubuntu x11vnc -forever -display :1 

当我运行命令时:

ffmpeg -video_size 1440x1080  -framerate 25 -f x11grab -i :1.0 -c:v libx264rgb -crf 0 -preset ultrafast sample.mp4

它可以运行,但是当我通过 processbuilder 以编程方式执行时,我看到输出缓冲区流日志文件中显示为:1:无效参数并且没有开始记录,

发送给 processBuilder 的命令如下:

pb = new ProcessBuilder(ffmpegLocation,
                                "-video_size", "1440x1080x16",                                
                                "-f", "x11grab",
                                "-i", ":1",
                                "-c:v libx264 -crf 0 -preset ultrafast",
                                "-framerate","25",
                                outputfilepath());

-仅供参考,我尝试将环境变量设置为导出DISPLAY=:1,但仍然出现相同的错误,而且我是否需要设置DISPLAY=:1,因为我在启动 Xvfb 时设置了显示号码?这曾经在旧版本的 Ubuntu 上使用 avconv 工作,但我被困在 ffmpeg 的显示问题上,有人知道如何解决这个问题吗?

答案1

更新:将其更改video_size为 1440x1080 即可使其正常工作。

相关内容