首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用ffmpeg在视频中覆盖多个动画图像

如何使用ffmpeg在视频中覆盖多个动画图像
EN

Stack Overflow用户
提问于 2018-04-09 12:53:11
回答 1查看 1.1K关注 0票数 0

我试图覆盖多个图像在视频后,我动画使用“旋转”过滤器。我在旋转过滤器中使用t参数使动画变得有点任意,所以我必须将输入视频标记为循环(使用-loop标志)。问题是,当我只执行一个覆盖,结果是它的预期,但当第二个覆盖来命令,它突然结束,一个空的输出视频正在生成。下面是我使用的命令:

代码语言:javascript
复制
ffmpeg -y -i template.mp4 -loop 1 -i Image_1.jpg -i Image_2.jpg -filter_complex " \
[1:v]scale=186:136[scaled1]; \
[scaled1]format=rgba,colorchannelmixer=aa=0.7[transp1]; \
[transp1]rotate=20*sin(2*PI/(t-9)):c=0xFFFFFF00:ow=250:oh=250,fade=in:st=1:d=5[ANIM_F1]; \
[2:v]scale=136:186[scaled2]; \
[scaled2]format=rgba,colorchannelmixer=aa=0.7[transp2]; \
[transp2]rotate=20*cos(2*PI/(t-9)):c=0xFFFFFF00:ow=250:oh=250,fade=in:st=1:d=5[ANIM_F2]; \
[0][ANIM_F1] overlay=x=1:y=190:shortest=1:enable='between(t,5,15)'[PHASE1]; \
[PHASE1][ANIM_F2] overlay=x=480:y=380:shortest=1:enable='between(t,10,20)'[out]" \
-map [out] output.mp4
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-04-09 13:41:57

在本节中,

代码语言:javascript
复制
-i template.mp4 -loop 1 -i Image_1.jpg -i Image_2.jpg

视频不是循环的,第一个图像是,第二个图像不是。因为第二个图像没有被循环,旋转或覆盖过滤器只有一个帧可以处理。假设你的视频超过20秒,你只需要循环第二个图像。

代码语言:javascript
复制
-i template.mp4 -loop 1 -i Image_1.jpg -loop 1 -i Image_2.jpg
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49733467

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档