Video FFMPEG在使用中间帧时延迟视频的开始

Video FFMPEG在使用中间帧时延迟视频的开始,video,ffmpeg,Video,Ffmpeg,ffmpeg-i“in.mp4“-i”。/watermark.png“-f lavfi-i color=c=white:s=1080x1920-filter_complex”[0:v]比例=2560:1440[ovr1],[1:v]比例=458:58[ovr2],[2:v][ovr1]覆盖=-740 240:enable='between(t,2,7)][int1][ovr2]覆盖=W-500:H-100:enable='between(t,0,15)'[main]“-map”[main]”-a

ffmpeg-i“in.mp4“-i”。/watermark.png“-f lavfi-i color=c=white:s=1080x1920-filter_complex”[0:v]比例=2560:1440[ovr1],[1:v]比例=458:58[ovr2],[2:v][ovr1]覆盖=-740 240:enable='between(t,2,7)][int1][ovr2]覆盖=W-500:H-100:enable='between(t,0,15)'[main]“-map”[main]”-ac 2-vcodec libx264-preset veryfast-crf 27-vb 20M-t 00:00:15 out.mp4

这个命令接受我的第二个输入(水印),它覆盖在我的第一个输入(视频)上。它还相应地对这两个对象进行缩放。它还设置在整个视频中出现和消失的时间

当我将视频输入设置为显示在2秒到7秒之间时,问题是
[2:v][ovr1]overlay=-740:240:enable='between(t,2,7)'[int1]
。然而,结果是这样的,当它出现在2秒标记处时,视频也在2秒标记处开始,此时视频应在新视频中以其自身的0秒标记开始


如何调整上面的ffmpeg命令,使其在视频中以2秒开始视频输入,但在输入视频的0秒标记处开始?

偏移主文件所有流的时间戳

ffmpeg-itscoffset 2-i“in.mp4”-i./watermark.png”-f lavfi-i color=c=white:s=1080x1920-filter_complex“[0:v]比例=2560:1440[ovr1],[1:v]比例=458:58[ovr2],[2:v][ovr1]覆盖=-740 240:enable='between(t,2,7)[int1],[int1][ovr2]overlay=W-500:H-100:enable='between(t,0,15)'main][map'[main]'-ac 2-vcodec libx264-preset veryfast-crf 27-vb 20M-t 00:00:15 out.mp4


对于不能很好地使用MP4编辑列表的过时播放器,请使用
-af aresample=async=1:first_pts=0
来填补音频流头部的2秒间隙,因此我刚刚找到了
-itscoffset
命令,该命令可以将
-ss
设置为0。看看我想出的命令

ffmpeg-i“image.jpg”-its offset 1.99-ss 0-i“in.mp4”-i./watermark.png”-f lavfi-i color=c=white:s=1080x1920-filter_complex“[0:v]scale=864:576[ovr1],[1:v]scale=720:1280[ovr2],[2:v]scale=458:58[ovr3:v][ovr1]overlay=108:672:enable='between(t,0,1.99)[int1],[int1]overlay=180(t,0,1],[int2][ovr3]覆盖=W-500:H-100:enable='between(t,0,15)'[main]''-map'[main]'-ac 2-vcodec libx264-preset veryfast-crf 27-vb 20M-t 00:00:15 out.mp4


这很好!干杯!

老兄,你总是最棒的!我刚刚想出了
-itscoffset
命令。我必须将它与
-ss
一起使用。我想出的命令在我的答案中。