如何停止将视频流中的最后一帧保存为使用 ffmpeg 编码的 mp4 容器的一部分?
How to stop holding the last frame in video stream as part of an mp4 container encoded with ffmpeg?
我正在将一个虚拟 mp3 文件(7 秒的白噪声)和一个虚拟 mp4 文件(无声并带有红色背景图像 4 秒)一起编码以形成一个 mp4 文件。生成这个文件的命令是:
ffmpeg -i dummy.mp3 -itsoffset 0 -t 2 -ss 0 -i dummy.mp4 -c:v copy -map 1:v -map 0:a -copyts output.mp4
如您所见,我将 dummy.mp4 截断为 2 秒(最初为 4 秒)。但是,当我在 QuickTime Player 中播放 output.mp4
时,我看到了整整 7 秒的红色背景图像。
我想要的是 dummy.mp4 的红色背景图像 2 秒,然后黑色(什么都没有)。
我怎样才能做到这一点?
干杯!
这实际上取决于玩家 - 在最后一帧显示持续时间后是否用空白重绘 canvas。
当然,您可以创建一个与 dummy.mp4 具有相同属性的 blank.mp4,但视觉效果除外。
创建一个文本文件,
file dummy.mp4
outpoint 2
file blank.mp4
然后,
ffmpeg -i dummy.mp3 -itsoffset 0 -f concat -i list.txt -c:v copy -map 1:v -map 0:a output.mp4
P.S。 copyts 仅适用于输入
我正在将一个虚拟 mp3 文件(7 秒的白噪声)和一个虚拟 mp4 文件(无声并带有红色背景图像 4 秒)一起编码以形成一个 mp4 文件。生成这个文件的命令是:
ffmpeg -i dummy.mp3 -itsoffset 0 -t 2 -ss 0 -i dummy.mp4 -c:v copy -map 1:v -map 0:a -copyts output.mp4
如您所见,我将 dummy.mp4 截断为 2 秒(最初为 4 秒)。但是,当我在 QuickTime Player 中播放 output.mp4
时,我看到了整整 7 秒的红色背景图像。
我想要的是 dummy.mp4 的红色背景图像 2 秒,然后黑色(什么都没有)。
我怎样才能做到这一点?
干杯!
这实际上取决于玩家 - 在最后一帧显示持续时间后是否用空白重绘 canvas。
当然,您可以创建一个与 dummy.mp4 具有相同属性的 blank.mp4,但视觉效果除外。
创建一个文本文件,
file dummy.mp4
outpoint 2
file blank.mp4
然后,
ffmpeg -i dummy.mp3 -itsoffset 0 -f concat -i list.txt -c:v copy -map 1:v -map 0:a output.mp4
P.S。 copyts 仅适用于输入