引用:https://ffmpeg.org/ffmpeg-utils.html#Expression-Evaluation
ffmpeg 表达式或 (+) 不起作用。
if((gt(t,10))+(lt(t,30)),0,1)
结果始终为 0
最佳答案
它按预期工作。gt(t,10)
是 1
对于大于 10 的所有时间,即 10.01,11,12.....infinity
lt(t,30)
是 1
对于小于 30 的所有时间,即 -inf...28,29,29.99
所以表达式 gt(t,10)+lt(t,30)
对 t
的所有值都为真.
如果您希望它仅适用于值 (10,30),请使用 *
.或者您可以使用 not(between(t,10,30))
关于ffmpeg 表达式运算符 "or"不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48617909/