首页 > 解决方案 > 使用 FFmpeg 录制屏幕

问题描述

我最近使用下面的 FFmpeg bash 命令来捕获屏幕录像。

我可以做任何改进来简化这个过程吗?

或者也许一些设置来减少输出文件的大小?

理想情况下,我想直接捕获到 mp4。这可能吗?

任何关于 FFmpeg 屏幕录制的一般建议将不胜感激。

ffmpeg -f x11grab -y -r 30 -s 1920x1080 -i :0.0 -vcodec huffyuv out.avi
# Then convert it to .mp4
ffmpeg -y -i out.avi -s 1920x1080 -f mp4 -vcodec libx264 -preset slow -crf 18 -b:v 3000k -maxrate 4000k -bufsize 512k -c:a aac -b:a 128k -strict -2 out.mp4
# and remove the .avi
rm out.avi

标签: ffmpeg

解决方案


一般来说,对于 FFmpeg,输入格式和输出格式没有相互关联,因此只要编解码器在输出格式中可接受,您就可以保存为任何格式。

所以,这会做,

ffmpeg -f x11grab -y -framerate 30 -s 1920x1080 -i :0.0 -c:v libx264 -preset superfast -crf 18 out.mp4

您可能需要在播放器兼容性-pix_fmt yuv420p之后添加-i :0.0


推荐阅读