将.mkv转换为h.264 FFmpeg

时间:2015-06-17 17:42:05

标签: video ffmpeg mp4 h.264 mkv

我想使用FFmpeg将我的.mkv文件转换为.mp4。我尝试了以下代码:

ffmpeg -i input.mkv -c:v libx264 -c:a libvo_aacenc output.mp4

但我收到错误:

  

打开输出流#0的编码器时出错:1 - 可能是不正确的参数,如bit_rate,rate,width或height。

有没有办法解决这个问题?我已经尝试设置音频的比特率,但问题似乎仍然存在。

2 个答案:

答案 0 :(得分:7)

我建议你首先检查你的.mkv文件是否已经拥有H.264 / AAC流。因为如果是这样,你所要做的就是复制流并更改容器:

ffmpeg -i input.mkv -vcodec copy -acodec copy output.mp4

如果没有,您可能会被拒绝,因为您没有为libvo_aacenc指定比特率。请尝试以下方法:

ffmpeg -i input.mkv -c:v libx264 -c:a libvo_aacenc -b:a 128k output.mp4

但是,如果您的.mkv已经包含H.264 / AAC,请使用第一个解决方案。它会更快,质量更好。

答案 1 :(得分:1)

作为ffmpeg的替代方法,您可以使用HandBrakeCLI,例如:

HandBrakeCLI --encoder "x264" --quality 25.0 --aencoder "copy:aac" --audio-fallback "av_aac" --all-audio --all-subtitles -i "input.mkv" -o "output.mkv"

HandBrakeCLI是handbrake-cli软件包的一部分。

有关参数的说明,请参见HandBrakeCLI --help或https://handbrake.fr/docs/en/latest/cli/command-line-reference.html