Log in

View Full Version : how to improve stability with ffsdshow?


maysider
9th June 2009, 08:30
Im trying to use this script:

height< 400 && width< 700 ? eval("""
#exhausting
setMTMode(2,8)
super =last.MSuper(pel=2,hpad=8,vpad=8)
backward_vec = MAnalyse(super, blksize=8, isb =true, chroma=false,searchparam=1,overlap=4)
forward_vec = MAnalyse(super, blksize=8, isb =false, chroma=false,searchparam=1,overlap=4)
last.MFlowFps(super, backward_vec, forward_vec,num=2*FramerateNumerator(last), \
den=FramerateDenominator(last), mask=0, ml=53)
distributor()
""") : height< 800 && width< 1400 ? eval("""
#less exhausting but good for 720p in realtime
fps=50
setMTMode(2,8)
last.CombineFPS(fps,last.MotionFPS(fps, warpfast, move),last.MotionFPS(fps, source = next, warpfast, move))
""") : last


it has very good results but the stability with players is very very poor....
can you give me some tip how to improve stability of a usage of avisynth with ffdshow?

thank you

maysider
9th June 2009, 16:16
it seems this helped:

source=ffdshow_source()
source.width< 700 && source.height< 400 ? eval("""
setMTMode(2,4)
super =source.MSuper(pel=2,hpad=8,vpad=8)
backward_vec = MAnalyse(super, blksize=8, isb =true, chroma=false,searchparam=1,overlap=4)
forward_vec = MAnalyse(super, blksize=8, isb =false, chroma=false,searchparam=1,overlap=4)
source.MFlowFps(super, backward_vec, forward_vec,num=2*FramerateNumerator(source), \
den=FramerateDenominator(source), mask=0, ml=53)
distributor()
""") : source.width< 1400 && source.height< 800 ? eval("""
fps=50
setMTMode(2,4)
source.CombineFPS(fps,source.MotionFPS(fps, warpfast, move),source.MotionFPS(fps, source = next, warpfast, move))
""") : source

burfadel
9th June 2009, 16:21
what version of ffdshow are you using? In the latest under 'Decoder options' you can set the number of decoding threads. Not to mention the latest allows usage of the newer SSE extensions if available.

Also you have listed setmtmode(2,4) twice without any changes inbetween. The second is unnecessary :)

maysider
9th June 2009, 18:46
what version of ffdshow are you using? In the latest under 'Decoder options' you can set the number of decoding threads. Not to mention the latest allows usage of the newer SSE extensions if available.

Also you have listed setmtmode(2,4) twice without any changes inbetween. The second is unnecessary :)

1) the latest version

2) this didnt help.....what helped a little was changing of a source loading

but thx for tips

Gavino
9th June 2009, 21:05
Also you have listed setmtmode(2,4) twice without any changes inbetween. The second is unnecessary :)
No - the two calls are in different branches and only one (at most) is actually executed.

@maysider
What puzzles me is why you call distributor() on only one of the three possible paths through your code. I thought it was always required when using MT Avisynth with ffdshow. Am I wrong?

maysider
28th July 2009, 21:46
No - the two calls are in different branches and only one (at most) is actually executed.

@maysider
What puzzles me is why you call distributor() on only one of the three possible paths through your code. I thought it was always required when using MT Avisynth with ffdshow. Am I wrong?

I dont know...I copied script :)