Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/fortran/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ffmpeg 不显示淡入淡出的覆盖层_Ffmpeg_Overlay_Fade - Fatal编程技术网

Ffmpeg 不显示淡入淡出的覆盖层

Ffmpeg 不显示淡入淡出的覆盖层,ffmpeg,overlay,fade,Ffmpeg,Overlay,Fade,实际上,我可以在视频的中心添加一个覆盖图像,从开始时间a到结束时间B 在这里和那里阅读时,我试图在我的叠加图像中添加一个“淡入/淡出”效果,但结果是图像根本没有显示在我的最终视频中 这是我的“实验”: 如果理解: fade=in:st=0:d=1 表示图像应显示在0'',淡入效果持续时间为1'' 表示图像应在5''处消失,淡出效果持续时间为1'' 不是吗 第二部分是在图像淡入时添加图像的缩放效果,我可以将淡入和缩放效果结合起来吗 我认为像这样的东西应该在3秒钟的时间内缩放我的图像覆盖,我可以添

实际上,我可以在视频的中心添加一个覆盖图像,从开始时间a到结束时间B

在这里和那里阅读时,我试图在我的叠加图像中添加一个“淡入/淡出”效果,但结果是图像根本没有显示在我的最终视频中

这是我的“实验”:

如果理解:

fade=in:st=0:d=1
表示图像应显示在0'',淡入效果持续时间为1''

表示图像应在5''处消失,淡出效果持续时间为1''

不是吗

第二部分是在图像淡入时添加图像的缩放效果,我可以将淡入和缩放效果结合起来吗

我认为像这样的东西应该在3秒钟的时间内缩放我的图像覆盖,我可以添加另一个“将过滤器与覆盖图像分离”吗

zoompan=z='if(lte(zoom,1.0),1.5,max(1.001,zoom-0.0015))':d=3
谢谢

编辑: 视频有10秒长。我想一个图像显示淡入淡出和放大从0到5和另一个从5到10具有相同的效果

步骤1:添加淡入淡出

-i 0_vid.mp4 -loop 1 -t 1 -i 1.png -filter_complex "[1:v]format=rgba,fade=in:st=0:d=1:alpha=1,fade=out:st=4:d=1:alpha=1[im];[0][im]overlay=(main_w-overlay_w)/2:(main_h - overlay_h)/2:shortest=1" -pix_fmt yuv420p -c:a copy output_0.mp4
使用此解决方案,淡入可以工作,但淡出甚至没有被考虑在内

如果添加缩放:

-i 0_vid.mp4 -loop 1 -t 1 -i 1.png -filter_complex "[1:v]format=rgba,zoompan=z='if(lte(zoom,1.0),1.5,max(1.3875,zoom-0.0015))':d=625,fade=in:st=0:d=1:alpha=1,fade=out:st=4:d=1:alpha=1[im];[0][im]overlay=(main_w-overlay_w)/2:(main_h - overlay_h)/2:shortest=1" -pix_fmt yuv420p -c:a copy output_0.mp4
通过这种方式,图像被拉伸到全屏宽度,高度被剪切。但是在5秒的动画中,图像的大小没有正常调整

我的目标是在视频中放大图像,而不是剪切/拉伸。我希望图像在开始时看起来更小,在结束时看起来更大。可能吗

还有,我使用淡出动画有什么不对

ffmpeg -i output.mp4 -i 1.png -filter_complex "[1:v]format=rgba,scale=300:300,zoompan=z='if(lte(zoom,1.0),1.5,max(1.3875,zoom-0.0015))':d=125:s=300x300,fade=in:st=0:d=1:alpha=1,fade=out:st=4:d=1:alpha=1[im];[0][im]overlay=(main_w-overlay_w)/2:(main_h - overlay_h) / 2:enable='between(t,0,5)'" -pix_fmt yuv420p -c:a copy output_0.mp4

查看渐变不起作用的原因。我使用zoompan而不是loop来生成帧。谢谢你的回复。我写在这里既是为了评论也是为了回答。通过注释,我现在可以看到淡入动画,但我既看不到淡出也看不到缩放。loop语句可能有错误,是吗?我也看不到淡出动画,只有淡入有效我添加了
-loop 1-t1
(我添加了新的问题代码)我仍然无法解决te问题,如果可能的话,试着看看我编辑的问题,我解释得更好。谢谢你的帮助
-i 0_vid.mp4 -loop 1 -t 1 -i 1.png -filter_complex "[1:v]format=rgba,zoompan=z='if(lte(zoom,1.0),1.5,max(1.3875,zoom-0.0015))':d=625,fade=in:st=0:d=1:alpha=1,fade=out:st=4:d=1:alpha=1[im];[0][im]overlay=(main_w-overlay_w)/2:(main_h - overlay_h)/2:shortest=1" -pix_fmt yuv420p -c:a copy output_0.mp4
ffmpeg -i output.mp4 -i 1.png -filter_complex "[1:v]format=rgba,scale=300:300,zoompan=z='if(lte(zoom,1.0),1.5,max(1.3875,zoom-0.0015))':d=125:s=300x300,fade=in:st=0:d=1:alpha=1,fade=out:st=4:d=1:alpha=1[im];[0][im]overlay=(main_w-overlay_w)/2:(main_h - overlay_h) / 2:enable='between(t,0,5)'" -pix_fmt yuv420p -c:a copy output_0.mp4