android - 如何使用 FFMPEG 在 GIF 上应用 zoompan 过滤器
问题描述
我正在使用 FFMPEG 使用具有音频长度的图像创建视频。我在其中输入了一个背景图像、一个覆盖 gif、文本覆盖 png 文件和一个水印 png 图像。我想在overlay.gif
文件上添加放大动画效果。动画效果很好但是 GIF 没有按预期工作,它显示为图像。这适用于 jpeg/png 文件。我怎样才能做到这一点,所以 GIF 可以按预期工作?
我正在使用以下命令。
此命令还会更改 GIF 的形状。
ffmpeg -loop,1,-i,background.jpg,-ignore_loop,0,-i,overlayfirst.gif,-loop,1,-i,textOverlay.png,-i,watermark.png,-i,audio.mp3,-filter_complex,[1]scale=493:493,zoompan=z='if(lte(mod(on,60),10),zoom+0.0020,zoom-0.0020)':x='iw/2-(iw/zoom/2)':y='ih/2-(ih/zoom/2)':d=200:s=493x493,geq=lum='p(X,Y)':a='st(1,pow(min(W/2,H/2),2))+st(3,pow(X-(W/2),2)+pow(Y-(H/2),2));if(lte(ld(3),ld(1)),255,0)',rotate=0.06*PI*t:c=black@0.0:ow='hypot(iw,ih)':oh=ow[b];[2]scale=375:375,rotate=0.06*PI*t:c=black@0.0:ow='hypot(iw,ih)':oh=ow[pic2];[3]scale=100:50[watermark];[0:v][b]overlay=(W-w)/2:(H-h)/2[over1],[over1][pic2]overlay=(W-w)/2:(H-h)/2[pic3],[pic3][watermark]overlay=(W-120):(H-60),scale=830:830,format=yuv420p,-ss,00:00:00,-to,00:00:07,-c:v,mpeg4,-b:a,3M,-c:a,aac,-b:a,192k,-q:v,1,-shortest,output.mp4
我也检查了这个链接
请帮助我。提前致谢
解决方案
推荐阅读
- angular - 如何将服务器端打字稿文件添加到 Angular 7 项目并自动构建?
- solr - 找不到类“tx_solr_indexqueue_PageIndexer”
- python - 只能将部分数据插入到csv中
- php - 我如何将( id ) url 插入数据库 Laravel
- python-2.7 - Numpy 和逆矩阵 - 只做一个重塑指令的方法
- python - 如何卸载 TensorFlow 2.0.0-alpha0?
- c# - 如何在 PHP 中使用字典类型数组
- c# - 如何使用 .net 内核发布数据并从 Unix 套接字获取响应
- ios - 5分钟后如何在后台调用api?
- python - 如何将 Django TimeField 更改为 24 小时格式