『漫游』酷论坛>『影音数码技术学习交流』>[分享]利用ConditionalFilt ..

HaibaraAi@2011-05-13 08:47

似乎scriptclip的调用效率有问题,尤其是调用一些比较大的滤镜的时候?
比如mctd 基本default在我的机器和朋友机器上用scriptclip调用只有1/10或者更慢的速度。
另外前几天在搞另一个片子时调用eedi2的aa滤镜也很慢
似乎改成
ConditionalFilter(last.function1,last, "filterindex", "==", "1", false)
ConditionalFilter(last.function2,last, "filterindex", "==", "2", false)
ConditionalReader("xxxxx.txt", "filterindex")
能避免此问题
引用

linuxyouxia@2011-05-13 19:16

因为ScriptClip是在每次GetFrame时解释运行脚本,很复杂的脚本或者初始化很慢的滤镜会有这个问题

如果改上上面那样写,那么脚本是在avs载入时初始化,如果调用滤镜太多会占用较多资源
(如果只需要使用滤镜处理个别单帧就可以考虑用ScriptClip,如果你需要处理大量连续帧就别使用ScriptClip

当然还可以自己写个滤镜解决这问题,当需要处理大量连续帧时初始化滤镜,处理完毕再进行释放

还有个办法是将分段写成多个avs脚本,通过pipe依次输出给编码器
[ 此帖被linuxyouxia在2011-05-13 20:44重新编辑 ]
引用

«123»共3页

| TOP