将 mp4 与空白视频连接起来

将 mp4 与空白视频连接起来

我想将 5 秒的空白/黑色视频连接到从网上下载的不同视频的末尾。我执行此操作的过程不起作用。

首先我使用ffprobe视频的尺寸(假设它是 640x480)。然后我创建空白视频,如下所示:

ffmpeg -f lavfi -i color=color=black -t 5 -s 640x480 blank.mp4

最终的视频blank.mp4按预期播放 5 秒的空白视频。

然后我将视频连接起来,如下所示:

ffmpeg -i random.mp4 -c copy -bsf:v h264_mp4toannexb -f mpegts a.ts
ffmpeg -i blank.mp4 -c copy -bsf:v h264_mp4toannexb -f mpegts b.ts
ffmpeg -i concat:a.ts|b.ts -c copy -bsf:a aac_adtstoasc final.mp4

现在,值得注意的是:我抄袭了这段话,并将其与来自整个网络/stackoverflow 的片段放在一起,我确信这是不对的。事实上,我知道这是不对的,因为……

由此产生的视频,final.mp4似乎几乎对。但在播放过程中,一旦播放头进入视频末尾的 5 秒黑屏,视频就无法再成功返回到视频的更早部分。相反,视频仍然是黑屏(尽管我可以听到音频)。

有什么建议吗?我正在寻找一个通用解决方案,可以处理我在网上找到的各种 mp4 文件。谢谢!


有帮助,但需要创建一个比源视频持续时间更长的大型空白视频...... https://stackoverflow.com/a/36786271/62255

答案1

使用

ffmpeg -i random.mp4 -f lavfi -i color=s=640x480:d=5 -filter_complex [0:v][1]concat -af [0]apad -shortest out.mp4

相关内容