『漫游』酷论坛>『影音数码技术学习交流』>[求助] 關於 MT版 AVS

翡璃月@2010-03-19 23:17

引用
最初由 roozhou 发布
TNL Means如果搜索窗口大的话,那overlap的区域会很大,MT的意义就不大了。

谁给我科普一下avisynth-mt到底是流水线式的还是图像分区式的,或者两者都有?


MT有多個模式
1~5 應該是都涵蓋了吧:)
引用

roozhou@2010-03-19 23:19

如果是图像分区的话,最好还是滤镜原生支持,不然性能大打折扣,还不能保证效果相同
引用

ki。曲奇@2010-03-19 23:21

引用
最初由 roozhou 发布
谁给我科普一下avisynth-mt到底是流水线式的还是图像分区式的,或者两者都有?

http://avisynth.org/mediawiki/MT_support_page
兩者皆有
但跟mode沒關係
引用

wolfsoft@2010-03-22 08:40

引用
最初由 roozhou 发布
TNL Means如果搜索窗口大的话,那overlap的区域会很大,MT的意义就不大了。

谁给我科普一下avisynth-mt到底是流水线式的还是图像分区式的,或者两者都有?


直接调用setMTMode是流水线式,并且随着mode的不同还分为并行式(同时打开多帧来处理)和串行式(你所提到的那种)

用MT()函数是图像分区式
引用

wolfsoft@2010-03-22 08:42

顺便再说一句,我个人建议用内置的setMTMode。在用ivtc或者其他会参考前后帧的filter时,用MT函数图像串帧的问题会很严重
引用

翡璃月@2010-03-22 09:00

我沒有用到過參考前後幀的 filter ....
但我是這樣去更換 mode 的

SetMTmode(2)
MT("""filter""", thread=12)

單獨只用 MT 的話 mode 應該是預設值吧
引用

roozhou@2010-03-22 10:24

引用
最初由 翡璃月 发布
我沒有用到過參考前後幀的 filter ....
但我是這樣去更換 mode 的

SetMTmode(2)
MT("""filter""", thread=12)

單獨只用 MT 的話 mode 應該是預設值吧

为什么要用thread=12?这个overhead也太大了吧。你的encoder不工作了?你只有一个filter?
引用

翡璃月@2010-03-22 10:30

不是的....
因為FFmpegSource2已經指定threads=12了
如果用SetMTmode(2,12)就重複了
會導致FFmpegSource2()會對同一個檔案個別線程共解碼12次
所以想說既然這樣各個filter分開設定

況且TNLMeans....占用資源好像很小
跑個12線增加速度比12線只用在Encoder來的更有價值
ps. Encoder 一樣是用12線
引用

MeteorRain@2010-03-22 11:23

围观24核的大大
引用

翡璃月@2010-03-22 11:34

引用
最初由 MeteorRain 发布
围观24核的大大


只有12線而已....:rolleyes:
Encoder & TNLMeans 使用同樣的 12線 ....;)
引用

roozhou@2010-03-22 13:07

引用
最初由 翡璃月 发布


只有12線而已....:rolleyes:
Encoder & TNLMeans 使用同樣的 12線 ....;)

去科普一下多线程吧

P.S. 你的U到底是几核的?
引用

翡璃月@2010-03-22 13:24

6核12線....看簽名檔
引用

roozhou@2010-03-22 13:46

那你为什么要让Encoder额TNLMeans用同样的线,又怎么让他们用同样的线?你真的懂什么叫多线程?
引用

翡璃月@2010-03-22 13:52

我是不懂 我只知道fps變大 速度變快是事實

FFmpegSource2("H:\01_Track1-muxed.mp4", threads=12)
SetMTmode(2)
MT("""TNLMeans(ms=true,a=1000.0)""", threads=12)
WarpSharp()
MT("""ColorYUV(levels="tv->pc")""", threads=12)
引用

roozhou@2010-03-22 14:02

你试试把ffms2和coloryuv的threads=12改成threads=1
然后减少x264和TNLMeans的线程数
引用

«123»共3页

| TOP