首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >支持fluent-ffmpeg complexFilter绘图?

支持fluent-ffmpeg complexFilter绘图?
EN

Stack Overflow用户
提问于 2017-10-24 00:25:28
回答 1查看 959关注 0票数 0

我能够从控制台中使用ffmpeg,并得到一个可以淡入淡出的文本,但我正在尝试在fluent-ffmpeg中使用alpha选项,但失败了。

这样做是可行的:

代码语言:javascript
复制
ffmpeg -i testvideo.mp4 -filter_complex "[0:v]drawtext=fontfile=/<full-path>/Lato-Black.ttf:text='This is a test':fontsize=12:fontcolor=e82e2e:alpha='if(lt(t,1),0,if(lt(t,2),(t-1)/1,if(lt(t,4),1,if(lt(t,5),(1-(t-4))/1,0))))':x=(w-text_w)/2:y=(h-text_h)/2" outfile.mp4

当在节点服务中使用时,此操作将失败:

代码语言:javascript
复制
.complexFilter({
                filter: 'drawtext',
                options: {
                    fontfile: <font-path>
                    text: "This is a test",
                    fontsize: 18,
                    fontcolor: "ff0000",
                    alpha : if(lt(t,1),0,if(lt(t,2),(t-1)/1,if(lt(t,4),1,if(lt(t,5),(1-(t-4))/1,0)))),
                    x: 10,
                    y: 10
                }
            }, 'out')

fluent-ffmpeg与: ffmpeg一起退出代码1:配置复杂过滤器时出错。无效参数

alphafluent-ffmpeg中不受支持(我找不到它的任何文档),还是它是一个不同的关键字?

EN

回答 1

Stack Overflow用户

发布于 2017-10-24 06:01:54

将表达式括在引号中:

代码语言:javascript
复制
alpha : "if(lt(t,1),0,if(lt(t,2),(t-1)/1,if(lt(t,4),1,if(lt(t,5),(1-(t-4))/1,0))))",

否则,ffmpeg会认为第一个逗号(在"if(lt(t之后)结束了过滤器参数。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46900392

复制
相关文章

相似问题

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