Video 将mkv转换为h264 FFmpeg
编辑: 这个问题已经变得非常流行,并且是搜索“convert mkv to h264 ffmpeg”的最佳结果之一,因此我觉得添加这个问题是合适的,因为任何遇到这个问题的人都应该使用它Video 将mkv转换为h264 FFmpeg,video,ffmpeg,mp4,h.264,mkv,Video,Ffmpeg,Mp4,H.264,Mkv,编辑: 这个问题已经变得非常流行,并且是搜索“convert mkv to h264 ffmpeg”的最佳结果之一,因此我觉得添加这个问题是合适的,因为任何遇到这个问题的人都应该使用它 ffmpeg -i input.mkv -c:v libx264 -c:a aac output.mp4 在FFmpeg的最新版本中,libvo_aacenc已被删除,它现在有一个本地aac编码器。有关更多信息,请访问编码AAC 原来的问题是: 我想使用FFmpeg将.mkv文件转换为.mp4。我尝试了以下代码
ffmpeg -i input.mkv -c:v libx264 -c:a aac output.mp4
在FFmpeg的最新版本中,libvo_aacenc已被删除,它现在有一个本地aac编码器。有关更多信息,请访问编码AAC
原来的问题是:
我想使用FFmpeg将.mkv文件转换为.mp4。我尝试了以下代码:
ffmpeg -i input.mkv -c:v libx264 -c:a libvo_aacenc output.mp4
但我得到了一个错误:
打开输出流#0:1的编码器时出错-可能是不正确的参数,如比特率、速率、宽度或高度
有没有办法绕过这个问题?我已尝试设置音频的比特率,但问题似乎仍然存在。我建议您首先检查.mkv文件是否已包含H.264/AAC流。因为如果是这样,您所要做的就是复制流并更改容器:
ffmpeg -i input.mkv -c copy output.mp4
如果没有,您可能会被拒绝,因为您的格式与.mp4不兼容。请尝试以下操作以输出H.264/AAC:
ffmpeg -i input.mkv -c:v libx264 -c:a aac output.mp4
但是,如果.mkv已经包含H.264/AAC,请使用第一种解决方案。它会更快,质量更好。作为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或相关:如错误所述,您的参数不正确(或缺失)。请参阅:
mkv
是一个,而H.264
是一个。您无法将容器转换为endoding。@Rikus Honey您是否像这样启用了libvo aacenc
——启用libvo aacenc。为什么不使用libfaac
或libfdk\u aac
。它们是免费的。您可以使用-codec copy
或-c copy
而不是-vcodec copy-acodec copy
。此外,如果您想使用x264进行编码,通常最好设置一些特定的编码设置(预设和一些速率/q控制方法),尽管最初的问题是如何使用ffmpeg进行编码,这是一个有效的答案,因为手刹实际上使用ffmpeg。。。很好的解决方案,谢谢!