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

tmf+tdecimate 跑 2pass + 中间一段要跑tempgaussMc 除了分开压 要怎么写avs

大家好 又来麻烦大家乐
遇到中间有段滚动字幕 + 视频有些地方是30p 不是 24 的 所以想来问一下怎么办什么的

单单的23.976+ tempgaussmc 我是会的 但是 现在这种情况我会很皎洁的说

下面是我的avs 其实除了trimin 别的都是照抄 每次都把d2v 改oursource...
#first pass
#mpeg2source("c:\oursource.d2v")
#tfm(d2v="c:\oursource.d2v",output="matches.txt",trimin="trimin.txt")
#tdecimate(mode=4,output="metrics.txt")
#Second pass
mpeg2source("c:\oursource.d2v")
tfm(d2v="c:\oursource.d2v",input="matches.txt",trimin="trimin.txt")
tdecimate(mode=5,hybrid=2,vfrDec=0,input="metrics.txt",tfmIn="matches.txt",mkvOut="mkv-timecodesfile.txt")

但是现在不知道把tempgaussmc 放到哪里了 例如trimin 后 第1000-2000帧是滚动字幕
还有就是tcv1 有没有统一移动帧的工具 就是tcv1 平移什么的 不然每个帧数都要+一个数很麻烦的说

嗯 就是这样了

当然分开压我是会的 就是压完后用mkv toolix 追加功能合并就可以了 但是还是想学怎么才能一起压的说

谢谢
264768502
核心会员
核心会员
帖子: 402
注册时间: 2010-09-23 17:38

Re: tmf+tdecimate 跑 2pass + 中间一段要跑tempgaussMc 除了分开压 要怎么写avs

想知道你用TGMC是做60p还是只要30p?
如果是60p的话,还真是比较难办了
如果只是取一半的30p,那容易
mpeg2source("c:\oursource.d2v")
dei=TGMC.SelectEven
tfm(d2v="c:\oursource.d2v",input="matches.txt",trimin="trimin.txt",clip2=dei)
tdecimate(mode=5,hybrid=2,vfrDec=0,input="metrics.txt",tfmIn="matches.txt",mkvOut="mkv-timecodesfile.txt")
当然了,上面这个例子只是一个写的比较简单的,可能会有误判状况,最好是TFM和TDECIMATE都加上ovr参数,指定那些帧应用TGMC,并且指定这些帧30p输出
amfilica
帖子: 62
注册时间: 2010-10-03 5:07

Re: tmf+tdecimate 跑 2pass + 中间一段要跑tempgaussMc 除了分开压 要怎么写avs

264768502 写了:想知道你用TGMC是做60p还是只要30p?
如果是60p的话,还真是比较难办了
如果只是取一半的30p,那容易
mpeg2source("c:\oursource.d2v")
dei=TGMC.SelectEven
tfm(d2v="c:\oursource.d2v",input="matches.txt",trimin="trimin.txt",clip2=dei)
tdecimate(mode=5,hybrid=2,vfrDec=0,input="metrics.txt",tfmIn="matches.txt",mkvOut="mkv-timecodesfile.txt")
当然了,上面这个例子只是一个写的比较简单的,可能会有误判状况,最好是TFM和TDECIMATE都加上ovr参数,指定那些帧应用TGMC,并且指定这些帧30p输出
首先先谢谢楼上的回答

请问如何用ovr txt指定只是那些滚动字幕帧走pp=tgmc 别的就走普通的pp呢??
还有不介意的话也把60帧的写法写一下吧 谢谢了

继续求平移tcv1 帧的工具
264768502
核心会员
核心会员
帖子: 402
注册时间: 2010-09-23 17:38

Re: tmf+tdecimate 跑 2pass + 中间一段要跑tempgaussMc 除了分开压 要怎么写avs

没必要了吧...TGMC的pp肯定好多TFM内置pp效果的
头像
Yuricon
帖子: 141
注册时间: 2010-09-20 0:19

Re: tmf+tdecimate 跑 2pass + 中间一段要跑tempgaussMc 除了分开压 要怎么写avs

代码: 全选

ppp=tfm.tdecimate#or aad
mpeg2source("c:\oursource.d2v")
#clipslice(1000,2000,cp="tgmc",ep1=ppp,ep2=ppp,cpmode=1,epmode=1,debug=5,tchout="X:\temp\tchout.txt")
#先辅助写TC用,输出一个tchout.txt文件,这个文件里有你TGMC那段的TC,其他的TC部分根据画面上的提示补完就行了
#补完TC后就改成下面那样就行了
clipslice(1000,2000,cp="tgmc",ep1=ppp,ep2=ppp,cpmode=1,epmode=1)
AssumeFPS(24000,1001)
clipslice详情请查看NMM DOC
其实用AAD的话也不用跑什么1pass了,用tfm的话,怕误判就分段跑OVR,然后输入即可
264768502
核心会员
核心会员
帖子: 402
注册时间: 2010-09-23 17:38

Re: tmf+tdecimate 跑 2pass + 中间一段要跑tempgaussMc 除了分开压 要怎么写avs

= = 木鱼,人家本来就是用tdecimate做自动vfr,你还让人家根据画面提示补完...那个工作量要死人的...
头像
Yuricon
帖子: 141
注册时间: 2010-09-20 0:19

Re: tmf+tdecimate 跑 2pass + 中间一段要跑tempgaussMc 除了分开压 要怎么写avs

还好啊,帧数帧率都写出来了
Assume 帧率
0,s-1, 帧率
s,e, 帧率 <-这个已经输出了
e,cf-1, 帧率
+1 -1很简单吧...
当然你直接用EPOutTimeCode合并也可以啊
或者手动改下clipslice把合并那给EPOutTimeCode做也可以
histamine
帖子: 85
注册时间: 2010-09-23 20:07

Re: tmf+tdecimate 跑 2pass + 中间一段要跑tempgaussMc 除了分开压 要怎么写avs

曾经看到过一个叫IVTC/Deint Switcher的插件 可以应对60fps/24fps/30fps混杂的情况并输出timecode

http://u.115.com/file/f774ccb93e
Its_v0_8_5.7z
获知来源:http://nyaamemo.seesaa.net/article/123340570.html

不知道各位大大用过没有 似乎处理LZ这种情况也很方便
amfilica
帖子: 62
注册时间: 2010-10-03 5:07

Re: tmf+tdecimate 跑 2pass + 中间一段要跑tempgaussMc 除了分开压 要怎么写avs

Yuricon 写了:

代码: 全选

ppp=tfm.tdecimate#or aad
mpeg2source("c:\oursource.d2v")
#clipslice(1000,2000,cp="tgmc",ep1=ppp,ep2=ppp,cpmode=1,epmode=1,debug=5,tchout="X:\temp\tchout.txt")
#先辅助写TC用,输出一个tchout.txt文件,这个文件里有你TGMC那段的TC,其他的TC部分根据画面上的提示补完就行了
#补完TC后就改成下面那样就行了
clipslice(1000,2000,cp="tgmc",ep1=ppp,ep2=ppp,cpmode=1,epmode=1)
AssumeFPS(24000,1001)
clipslice详情请查看NMM DOC
其实用AAD的话也不用跑什么1pass了,用tfm的话,怕误判就分段跑OVR,然后输入即可
其实aad我也有用 用的是0.1.5A 版本
看了软件说明并没有教怎么利用其输出vfr的说。 当然,既然是利用了tivtc的插件就应该是做得出来的(所以真的做得出来的话请教一下)
Yuricon 写了:还好啊,帧数帧率都写出来了
Assume 帧率
0,s-1, 帧率
s,e, 帧率 <-这个已经输出了
e,cf-1, 帧率
+1 -1很简单吧...
当然你直接用EPOutTimeCode合并也可以啊
或者手动改下clipslice把合并那给EPOutTimeCode做也可以
这一段我看不明白 不过具体是利用epouttimecode??? 我等下上完学google 下熟悉下软件什么的
histamine 写了:曾经看到过一个叫IVTC/Deint Switcher的插件 可以应对60fps/24fps/30fps混杂的情况并输出timecode

http://u.115.com/file/f774ccb93e
Its_v0_8_5.7z
获知来源:http://nyaamemo.seesaa.net/article/123340570.html

这么好的插件就先谢谢了今天放学后有时间马上过来研究学习的说。

不知道各位大大用过没有 似乎处理LZ这种情况也很方便
头像
Yuricon
帖子: 141
注册时间: 2010-09-20 0:19

Re: tmf+tdecimate 跑 2pass + 中间一段要跑tempgaussMc 除了分开压 要怎么写avs

从概念上来说,分段是必须的,avs只支持cfr,最后肯定要AssumeFPS,这是一个基本的概念(只针对AVS脚本),至于外部滤镜插件,我没有看过源代码,所以也不清楚其原理,也许这样的处理和我上面说的概念上是一样的
支持做vfr的ivtc脚本恐怕得用AnimeIVTC了,不过这东西别说看代码了,光是说明就看得我头晕...(<---英语盲)
其实你只要理解为,分段处理就变得简单了,分段处理后统一帧率合并,然后写TC封装就成了
至于TCv1的书写,格式上来说很易懂,如果怕手写麻烦,也可以尝试在分段后用TimeCodeOutPut(插件型),EPOutTimeCode(脚本型)合并,这样就能直接输出TC了,或者使用clipslice的debug=5来辅助写TC,好处就是免得手动写分段,坏处就是要手动写TC

回到 “AviSynth”