使用更好的编码器

使用更好的编码器

我正在使用以下代码为音频/视频添加淡入效果,但最终的输出质量很差:

 ffmpeg -i in.ts -filter_complex  "[0:v]fade=t=in:st=0:d=3[v]; [0:a]afade=t=in:st=0:d=3[a]"  -map "[v]" -map "[a]" output.ts

关于提高输出质量有什么建议吗?

答案1

使用更好的编码器

添加-c:v libx264输出选项。这将使用编码器 libx264 输出 H.264 视频,而不是使用编码器 mpeg2video 输出 MPEG-2 视频,后者是 .ts 输出的默认编码器。

MPEG-2 视频是一种旧格式,mpeg2video 使用的默认比特率已不再适合典型的现代输入。如果您想要 MPEG-2 视频,则使用选项-b:v设置比特率,或使用选项-q:v(范围为 2-31)粗略设置质量。这些选项是互斥的,因此只能使用其中一个。

调整libx264码率控制方法

如果您不喜欢 libx264 的默认质量,您可以使用选项进行调整-crf。范围是 0-51。0 表示无损。18 左右表示视觉无损。23 是默认值。51 表示质量最差。

或者如果您想要使用 ABR-b:v并选择一个以位为单位的值,例如-b:v 4000k

这些选项是互斥的,因此只能使用其中一个。您没有提供任何要求或其他信息,所以我猜您应该使用-crf

有关详细信息,请参阅FFmpeg 维基:H.264

答案2

在处理音频文件时遇到同样的问题。对我来说,最好的选择是先将音频文件转换为无损 .wav,完成所有需要做的事情,然后将它们转换回 .mp3 或其他有损格式。这是音频编辑应用程序中使用的方法,也是处理音频或视频文件最温和的方法

相关内容