版面规则
提问时请注意:尽量详细描述操作过程、AVS脚本内容等,最好能写出片名,只贴图有时无法看出问题原因。
提示:发布原创内容请尽量使用附件上传。使用网盘会出现过期失效的问题,请注意。
buaaqlyj
帖子: 11
注册时间: 2012-07-03 0:51

【已解决】过多Trim爆内存的脚本有没有方法优化?

最近在处理一个纪录片,做了Fields Match以后,发现有很多地方dup帧并不规律,所以花了几天时间尽我所能trim出来,接近240段Trim,按重复情况各自处理了,不过产生了另一个问题就是内存爆了。

源经过fields match以后是165512帧,我做完decimate以后是137835

第一次 avs4x26x + x264_64_tMod-8bit-420
停在81282帧
第二次 avs2yuv + x264_64_tMod-8bit-420
停在58654帧
第三次 x264_x86
停在77217帧

报错信息基本一致:
avs [error]: GetFrameBuffer: Retured a VFB with a 0 data pointer!
size=3110464, max=3221225472, used=3230044096, free=80637952, phys=2685005824
I think we have run out of memory folks! occurred while reading frame 77217
avs [error]: TDecimate: major internal error. Please report this to tritical ASAP! occurred while reading frame 77218

我推测可能问题出在Trim太多,资源消耗太大。想问一下有没有可以替代Trim的效率更高的滤镜,或者更高效的写法?谢谢了
► 显示剧情透露 脚本
上次由 buaaqlyj 在 2015-08-17 17:54,总共编辑 1 次。
buaaqlyj
帖子: 11
注册时间: 2012-07-03 0:51

Re: 【已解决】过多Trim爆内存的脚本有没有方法优化?

doom9看到有人提到写在不同avs里用import的方式,可以让avs在两个进程里运行。正在测试,不知会不会有效

经测试是无效的。
avs4x26x + x264_64_tMod-8bit-420
停在了同样的位置
上次由 buaaqlyj 在 2015-08-17 17:57,总共编辑 1 次。
buaaqlyj
帖子: 11
注册时间: 2012-07-03 0:51

Re: 【已解决】过多Trim爆内存的脚本有没有方法优化?

做了decimate以后改变帧数了,可惜ConditionalFilter用不了

Edit: 刚刚又查了一遍TDecimate的readme,好像可以手动ovr,运用得当应该可以缩减一下trim的数量,我去试试

Edit2: 问题解决,果然是Trim太多的原因。
结合了RemapFrames和TDecimate的ovr代替了大部分不规律去重部分使用的Trim,行数缩减为原来的1/4,这次没有报出run out of memory的错误
头像
msg7086
帖子: 600
注册时间: 2011-02-19 0:49

Re: 【已解决】过多Trim爆内存的脚本有没有方法优化?

如果硬盘空间足够大的话分段出无损会比较方便。自用LAGS编码器,出无损一集720p动画也只有10G。
Delogo LGD Collections 各种台标下载 | Home Of VapourSynth Evolution

<回答が無い理由>
1. 誰も知らない
2. 質問文が意味不明
3. 知ってるが、お前の態度が気に入らない
4. 良いボケが思いつかない
lwjkk666
帖子: 321
注册时间: 2012-05-29 13:43

Re: 【已解决】过多Trim爆内存的脚本有没有方法优化?

msg7086 写了: 2015-09-30 14:04 如果硬盘空间足够大的话分段出无损会比较方便。自用LAGS编码器,出无损一集720p动画也只有10G。
如果源是这样的,连续两帧都是静态图,例如第8863帧是好的,8864是坏的,8865是坏的,8866是好的,请问改怎样替换掉坏帧从而达到修复片源的效果呢
头像
msg7086
帖子: 600
注册时间: 2011-02-19 0:49

Re: 【已解决】过多Trim爆内存的脚本有没有方法优化?

lwjkk666 写了: 2018-06-02 23:30
msg7086 写了: 2015-09-30 14:04 如果硬盘空间足够大的话分段出无损会比较方便。自用LAGS编码器,出无损一集720p动画也只有10G。
如果源是这样的,连续两帧都是静态图,例如第8863帧是好的,8864是坏的,8865是坏的,8866是好的,请问改怎样替换掉坏帧从而达到修复片源的效果呢
freezeframe()自己看一下说明书。

另外,单独的内容请单独开贴,方便其他人检阅。
Delogo LGD Collections 各种台标下载 | Home Of VapourSynth Evolution

<回答が無い理由>
1. 誰も知らない
2. 質問文が意味不明
3. 知ってるが、お前の態度が気に入らない
4. 良いボケが思いつかない

回到 “AviSynth”