ffmpeg-将MP4转换为WebM,效果不佳

fig*_*r20 5 ffmpeg

我正在尝试将视频编码为webm以通过HTML5视频标签播放。我有这些设置...

ffmpeg -i input.mp4 -c:v libvpx-vp9 -b:a 128k -b:v 1M -c:a libopus output.webm
Run Code Online (Sandbox Code Playgroud)

结果不是很好,视频失去了很多清晰度。查看原始文件,我可以看到比特率为1694kb / s。

我可以添加或更改任何设置来改善输出吗?2遍编码可能会改善性能吗?

小智 9

尝试运行两遍:

ffmpeg  -i file.mp4  -b:v 0  -crf 30  -pass 1  -an -f webm -y /dev/null

ffmpeg  -i file.mp4  -b:v 0  -crf 30  -pass 2  output.webm
Run Code Online (Sandbox Code Playgroud)

来自 - https://trac.ffmpeg.org/wiki/Encode/VP9


Gya*_*yan 5

试试看

ffmpeg -i input.mp4 -c:v libvpx-vp9 -crf 30 -b:v 0 -b:a 128k -c:a libopus output.webm
Run Code Online (Sandbox Code Playgroud)

调整CRF值,直到质量/尺寸权衡确定为止。较低的值会生成较大但较好的文件。

  • `-crf` 范围提到:https://superuser.com/questions/677576/what-is-crf-used-for-in-ffmpeg (4认同)
  • @BenCrowell你可能想增加`-b:a 128k`。这是音频比特率。 (4认同)