Audio 如何使用ffmpeg延迟特定位置后的音频?

Audio 如何使用ffmpeg延迟特定位置后的音频?,audio,ffmpeg,Audio,Ffmpeg,我有一个10秒的a.mp4和两个流:Stream#0是视频流,Stream#1是音频流 现在,我想在时间位置00:03后将音频流延迟4秒。也就是说,在输出文件中,我希望:00:00-00:03是原始音频,00:03-00:07没有声音,00:07-00:14是原始00:03-00:10音频 我试过这个: ffmpeg -i a.mp4 -t 00:00:03 -i a.map4 -itsoffset 4 -ss 00:00:03 -i a.mp4 -map 0:v -map 1:a -map 2

我有一个10秒的
a.mp4
和两个流:
Stream#0
是视频流,
Stream#1
是音频流

现在,我想在时间位置00:03后将音频流延迟4秒。也就是说,在输出文件中,我希望:00:00-00:03是原始音频,00:03-00:07没有声音,00:07-00:14是原始00:03-00:10音频

我试过这个:

ffmpeg -i a.mp4 -t 00:00:03 -i a.map4 -itsoffset 4 -ss 00:00:03 -i a.mp4 -map 0:v -map 1:a -map 2:a -codec copy output.mp4
但是,
输出.mp4
中似乎有两个音频流,其中只有一个可以播放一次。然后我尝试了
amix
filter:

ffmpeg -i a.mp4 -t 00:00:03 -i a.mp4 -itsoffset 4 -ss 00:00:03 -i a.mp4 -filter_complex "[1:a][2:a] amix=inputs=2" -map 0:v output.mp4

但它也不起作用。我是新来的
ffmpeg
,所以我不知道现在该怎么办?对我有什么想法吗?非常感谢

使用asetpts过滤器更改时间戳,并(可选)在该间隙中插入静默

ffmpeg-ia.mp4-af“asetpts='if(lt(T\,3),PTS,PTS+4/TB)”,aresample=async=1“-c:v拷贝输出。mp4

在没有采样的情况下进行测试,以查看您的播放器是否能够承受音频流中的较大间隙