PDA

View Full Version : compatibility with mvdegrain


ficofico
9th September 2007, 13:08
I don't why if I try to use this script in virtual dub or in x264 programs crash.

mvfpsflowscd(60,oversample=16,blurradius=4)

source = last.deblock_qed()
w=width()
h=height()
backward_vec2 = source.MVAnalyse(isb=true, delta=2,blksize=8,search=3,searchparam=2,pel=4,overlap=8/2,overlapV=8/2,dct=0,idx=1)
backward_vec1 = source.MVAnalyse(isb=true, delta=1,blksize=8,search=3,searchparam=2,pel=4,overlap=8/2,overlapV=8/2,dct=0,idx=1)
forward_vec1 = source.MVAnalyse(isb=false, delta=1,blksize=8,search=3,searchparam=2,pel=4,overlap=8/2,overlapV=8/2,dct=0,idx=1)
forward_vec2 = source.MVAnalyse(isb=false, delta=2,blksize=8,search=3,searchparam=2,pel=4,overlap=8/2,overlapV=8/2,dct=0,idx=1)
maskp1 = mvmask(kind=1, vectors=forward_vec1, ysc=255).UtoY()
maskp2 = mvmask(kind=1, vectors=forward_vec2).UtoY()
maskp3 = mvmask(kind=1, vectors=backward_vec1, ysc=255).UtoY()
maskp4 = mvmask(kind=1, vectors=backward_vec2).UtoY()
maskf = average(maskp1, 0.25, maskp2, 0.25, maskp3, 0.25, maskp4, 0.25).spline36resize(w,h)
smooth = source.degrainmedian(mode=3, limity=16, limituv=8).fft3dfilter(bw=16, bh=16, bt=3, sigma=4, plane=0)
source2 = maskedmerge(source,smooth,maskf)
source2.MVDegrain2(backward_vec1,forward_vec1,backward_vec2,forward_vec2,thSAD=400,idx=2)
RemoveGrain(0,11).gradfun2db(1.51).RemoveGrain(mode=1)


If i use only

mvfpsflowscd(60,oversample=16,blurradius=4)
work.

if I use :

source = last.deblock_qed()
w=width()
h=height()
backward_vec2 = source.MVAnalyse(isb=true, delta=2,blksize=8,search=3,searchparam=2,pel=4,overlap=8/2,overlapV=8/2,dct=0,idx=1)
backward_vec1 = source.MVAnalyse(isb=true, delta=1,blksize=8,search=3,searchparam=2,pel=4,overlap=8/2,overlapV=8/2,dct=0,idx=1)
forward_vec1 = source.MVAnalyse(isb=false, delta=1,blksize=8,search=3,searchparam=2,pel=4,overlap=8/2,overlapV=8/2,dct=0,idx=1)
forward_vec2 = source.MVAnalyse(isb=false, delta=2,blksize=8,search=3,searchparam=2,pel=4,overlap=8/2,overlapV=8/2,dct=0,idx=1)
maskp1 = mvmask(kind=1, vectors=forward_vec1, ysc=255).UtoY()
maskp2 = mvmask(kind=1, vectors=forward_vec2).UtoY()
maskp3 = mvmask(kind=1, vectors=backward_vec1, ysc=255).UtoY()
maskp4 = mvmask(kind=1, vectors=backward_vec2).UtoY()
maskf = average(maskp1, 0.25, maskp2, 0.25, maskp3, 0.25, maskp4, 0.25).spline36resize(w,h)
smooth = source.degrainmedian(mode=3, limity=16, limituv=8).fft3dfilter(bw=16, bh=16, bt=3, sigma=4, plane=0)
source2 = maskedmerge(source,smooth,maskf)
source2.MVDegrain2(backward_vec1,forward_vec1,backward_vec2,forward_vec2,thSAD=400,idx=2)
RemoveGrain(0,11).gradfun2db(1.51).RemoveGrain(mode=1)

work........... but together not

I have to change something in the script but I don't know how....:thanks:

Didée
9th September 2007, 13:29
idx collision. mvfpsflowscd already uses idx=1, so that one is allocated and must not be used anymore. In the script you posted, replace "idx=1" with "idx=2", and "idx=2" with "idx=3".

ficofico
9th September 2007, 13:32
thanks didèe!