我在跑步Ubuntu 12.04 LTS 64 位,我正在尝试使用AVCONV记录连接到我的计算机的主显示器(分辨率为 1920x1080) 使用x11grab在每秒 30 帧以及通过连接到我的计算机的默认音频设备的音频脉冲。
但是,当我运行命令时:
avconv -f x11grab -s hd1080 -r 30 -i :0.0 pulse -i default recording.ogv
终端打印出错误:
Unable to find a suitable output format for 'pulse'
。
是什么原因导致显示此错误信息?
答案1
avconv 假设您的输出名为“pulse”,因此您需要添加一些其他选项来表明它是输入。我使用 FFmpeg 项目中的 ffmpeg,而不是 fork 中的 avconv,因此我将使用 ffmpeg 作为示例。
ffmpeg -f x11grab -s hd1080 -r 30 -i :0.0 -f pulse -i default recording.ogv
不幸的是,这不适用于存储库中的 avconv,因为--enable-libpulse
据我所知它没有编译。因此,您可以尝试:
ffmpeg -f x11grab -s hd1080 -r 30 -i :0.0 -f alsa -i pulse recording.ogv
如果你发现你需要使用,-f pulse
那么你必须编译。参见如何在 Ubuntu 上编译 FFmpeg 和 x264完整指南。您还需要将libpulse-dev
依赖项和添加--enable-libpulse
到configure
行中。另请参阅如何在 Linux 上正确进行屏幕录制一些很好的 x11grab 示例。它适用于 ffmpeg,但可能也适用于 avconv。