【问题标题】:ffmpeg 2 audio files in one video fileffmpeg 2 个音频文件在一个视频文件中
【发布时间】:2017-07-19 04:24:14
【问题描述】:

假设我有一个视频文件 (video.mp4) 和 2 个音频文件(audio1.mp3 和 audio2.mp3。)视频的长度为 60 秒,每个音频文件的长度为 30 秒。

我想要实现的是: 视频的前 20 秒是原始音频流,然后是第一个音频文件的 20 秒(偏移 5 秒,长度为 20 秒),与第二个音频文件相同。

ffmpeg -i video.mp4 -ss 5 -t 20 -i audio1.mp3 -ss 5 -t 20 -i audio2.mp3 -vcodec copy -acodec copy  -copyinkf -map 0:v:0 -map 1:a:0 -map 2:a:0 -shortest final.mp4

上面的命令获取第一个输入的视频流和第三个输入的音频流。第二个输入的音频流似乎被覆盖了。如何将所有音频流放在一起,如何定义音频流何时开始的偏移量?

【问题讨论】:

    标签: audio video ffmpeg mp4


    【解决方案1】:

    我假设您希望将合并的音频节目放在一个流中。即使您将时间戳偏移量应用于其他音频,大多数播放器也不会在播放过程中切换音频流。

    所以,

    ffmpeg -i video.mp4 -ss 5 -t 20 -i audio1.mp3 -ss 5 -t 20 -i audio2.mp3
        -filter_complex
           "[0]atrim=0:20[a];[1]adelay=20000|20000[b];[2]adelay=40000|40000[c];[a][b][c]amix=3"
        -vcodec copy -copyinkf -shortest final.mp4
    

    【讨论】:

    • 谢谢。这就是我要找的
    猜你喜欢
    • 2018-10-14
    • 1970-01-01
    • 2014-07-29
    • 1970-01-01
    • 1970-01-01
    • 2016-09-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多