用另一个文件中的音频流替换一个文件中的音频流

用另一个文件中的音频流替换一个文件中的音频流

我有两个视频文件:.mp4,带有一个(不正确的)音频流,以及一个.mkv,带有两个音频流(一个不正确,另一个正确)

有没有办法用 .mkv 中的第二个流替换 .mp4 文件的音频?

谢谢

答案1

您需要先从 MKV 中提取音频,然后将 MP4 与新音轨合并。喜欢这应该有效:

ffmpeg -i vid.mkv -acodec copy -vn audio.ext
ffmpeg -i vid.mp4 -i audio.ext -vcodec copy -acodec copy -map 0:1 -map 1:0 final.mp4

答案2

当然,AVCONV(与 ffmpeg 相同)

尝试:

avconv -i INPUT_FILE_WITH_BROKEN_SOUND.mp4 -i SECOND_INPUT_FILE.mkv -c copy -map 0:v:0 -map 1:a:1 OUTPUT.mp4

-c 复制复制曲目,而不是重新编码

-地图 0:v:0选择要复制到输出的轨道:第一个文件 -> 视频轨道 -> 第一个视频轨道

-地图 1:a:1选择要复制到输出的音轨:第二个文件 -> 音轨 -> 第二个音轨

希望能帮助到你!

相关内容