使用 ffmpeg 更好的质量将 mov 转换为 mp4

Converting mov to mp4 with ffmpeg better quality

我想将 mov 视频转换为 mp4。 Currentoy 我通过以下调用通过 bash 使用 ffmpeg 管理它:

ffmpeg -i input.mov -f mp4 -vcodec mpeg2video -acodec mp3 output.mp4

是的,可以,但质量很差。我的 50Mb 压缩成一个方便的 2.3Mb 文件。 我尝试了只更改容器的变体:

ffmpeg -i input.mov -f mp4 -vcodec copy -acodec mp3 output.mp4

是的,也可以,但是文件仍然很大,因为我没有压缩视频。所以我的 50Mb 保持 50Mb。

是否有一种设置,我可以在其中进行轻微或渐进的压缩,而不会完全缺乏质量?我的目标可能是 10 - 20 Mb 的输出文件。

我尝试了什么:

ffmpeg -i input.mov -f mp4 -vcodec -qscale:v 4 -acodec mp3 输出.mp4

给我错误信息:

警告:库配置不匹配 [...] 未知编码器“-qscale:v”

使用的版本: ffmpeg 版本 2.8.11-0ubuntu0.16.04.1

仅 Remux

如果您输入的视频和音频与 MP4 兼容,您可以使用 stream copy 模式:

ffmpeg -i input.mov -c copy output.mp4

Re-encode

如果需要编码成其他兼容MP4的格式:

ffmpeg -i input.mov -crf 23 -preset medium -movflags +faststart -c:a aac output.mp4
  • 使用提供可接受质量的最高 -crf 值。
  • 使用你有耐心的最慢的-preset
  • 如果输入是 AAC 音频,您可以将 -c:a aac 更改为 -c:a copy

参见 FFmpeg Wiki: H.264 and FFmpeg Wiki: H.265