ffmpeg:混合不同长度的音频和视频

时间:2016-10-24 14:37:40

标签: ffmpeg gstreamer

我有2个文件:1个视频文件(没有声音) - 长度为6秒,1个音频 - 长度为10秒。 音频和视频都包含相同的会话,但音频在4秒前启动,之后启动视频。

[----------] audio
    [------] video

所以,我想将它们混合到视频文件中,长度为10秒,其中前4秒黑屏带有音频然后转为真实的视频和音频。

[====------] audio+video (where '=' is black screen)

我希望我的描述足够清楚)。 我怎么能用ffmpeg或gstreamer做到这一点?

1 个答案:

答案 0 :(得分:1)

我们说视频的分辨率是WxH,帧速率是F,持续时间的差异是D秒,那么命令是

ffmpeg -i video.mp4 -i audio.mp3 -f lavfi -i color=s=WxH:r=F -filter_complex
          "[0]setpts=PTS-STARTPTS+D/TB[v];[2][v]overlay=eof_action=endall[vid]"
       -map "[vid]" -map 1:a output.mp4