我只是一个初学者,想修复 mp4 视频中的音频元数据。我想将音频语言代码从德语更改为英语。我遇到的问题是输出文件的比特率总是发生变化。我希望文件保留其原始设置,例如文件比特率可变,输出文件的比特率恒定。我尝试过以下命令:
ffmpeg -i INPUT.mp4 -metadata:s:a:0 language=eng OUTPUT.mp4
ffmpeg -i INPUT.mp4 -metadata language=eng -c copy new.mp4
但似乎找不到解决方案。非常感谢任何帮助
答案1
使用:
ffmpeg -i input.mp4 -map 0 -c copy -metadata:s:a:0 language=eng output.mp4
-map 0
选择所有流。否则将使用默认流选择这并不会选择所有流。请参阅FFmpeg Wiki:地图了解有关此选项的更多信息。-c copy
启用流复制模式将视频和音频复制并粘贴到输出中。由于流是复制的,因此不会修改比特率。-metadata:s:a:0 language=eng
将音频流 #0(第一个音频流)的语言设置为英语。如果您想要为第二个音频流设置语言,请使用-metadata:s:a:1
。