如何使用几乎静态图像的 ffmpeg 转换视频
How to convert video with ffmpeg with few almost static images
我有 8GB 的视频,只有 1 小时。我正在尝试将其转换为某种格式以减少视频大小。视频包含少量带有背景对话的静态图像。转换它的最佳方式和格式是什么?
非常感谢!
我会推荐 2-pass 可变比特率视频编码。这样,当视频是动态的时,您最终只会使用位。对于音频,只需使用您喜欢的现代编解码器的任何比特率。如果您安装了 ffmpeg,则可以执行以下操作:
首先查看文件并决定要完成多少压缩。
ffprobe infile.avi
您可以将现有比特率除以 10,或者查看 here 比特率指南。现在你准备好了:
ffmpeg -y -i infile.avi -c:v libx264 -b:v 555k -pass 1 -c:a libmp3lame -b:a 128k -f mp4 /dev/null
ffmpeg -y -i infile.avi -c:v libx264 -b:v 555k -pass 2 -c:a libmp3lame -b:a 128k output.mp4
其中视频和音频比特率分别为 555 kb/s 和 128 kb/s。请注意,如果您的音频比特率已经 <= 256 kb/s,除非您确实需要,否则不要再压缩它。您可以通过将 -c:a libmp3lame -b:a 128k
替换为 -acodec copy
.
来绕过音频编码器
如果您在 windows 盒子上(给孩子),请将 /dev/null
替换为 NUL
。
我有 8GB 的视频,只有 1 小时。我正在尝试将其转换为某种格式以减少视频大小。视频包含少量带有背景对话的静态图像。转换它的最佳方式和格式是什么?
非常感谢!
我会推荐 2-pass 可变比特率视频编码。这样,当视频是动态的时,您最终只会使用位。对于音频,只需使用您喜欢的现代编解码器的任何比特率。如果您安装了 ffmpeg,则可以执行以下操作:
首先查看文件并决定要完成多少压缩。
ffprobe infile.avi
您可以将现有比特率除以 10,或者查看 here 比特率指南。现在你准备好了:
ffmpeg -y -i infile.avi -c:v libx264 -b:v 555k -pass 1 -c:a libmp3lame -b:a 128k -f mp4 /dev/null
ffmpeg -y -i infile.avi -c:v libx264 -b:v 555k -pass 2 -c:a libmp3lame -b:a 128k output.mp4
其中视频和音频比特率分别为 555 kb/s 和 128 kb/s。请注意,如果您的音频比特率已经 <= 256 kb/s,除非您确实需要,否则不要再压缩它。您可以通过将 -c:a libmp3lame -b:a 128k
替换为 -acodec copy
.
如果您在 windows 盒子上(给孩子),请将 /dev/null
替换为 NUL
。