PDA

View Full Version : Better than this.... n95 video quality


ficofico
17th July 2008, 21:01
I'm trying to improve this kind of video file... I'm very happy of the result but I ask here if someone have some suggestion for further improve this video.

Here i post the original video file and 2 other file after different avisynth encoding....


DOWNLOAD SAMPLE

ORIGINAL VIDEO FILE (http://www.rigenerator.com/doom9/original.mp4)


x264 settings:

--crf 22 --bframes 6 --ref 6 --filter -2,-1 --analyse p8x8,b8x8,i4x4,i8x8 --8x8dct --merange 8 --no-fast-pskip --weightb --me umh --b-pyramid --weightb --direct auto --vbv-maxrate 25000 --threads auto --thread-input --progress --no-dct-decimate --no-psnr --no-ssim

avisynth script:

ffmpegsource("video.mp4", seekmode=1)
setmemorymax(ram)
assumefps(fico)
converttoYv12()

source = last
w=width()
h=height()
backward_vec2 = source.MVAnalyse(isb=true, delta=2,blksize=16,search=3,pel=2,dct=0,idx=1)
backward_vec1 = source.MVAnalyse(isb=true, delta=1,blksize=16,search=3,pel=2,dct=0,idx=1)
forward_vec1 = source.MVAnalyse(isb=false, delta=1,blksize=16,search=3,pel=2,dct=0,idx=1)
forward_vec2 = source.MVAnalyse(isb=false, delta=2,blksize=16,search=3,pel=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.mt("fft3dfilter(bw=16, bh=16, bt=3, sigma=4, plane=4)")
source2 = maskedmerge(source,smooth,maskf)
source2.MVDegrain2(backward_vec1,forward_vec1,backward_vec2,forward_vec2,thSAD=400,idx=3)

source=last
backward_vec = source.MVAnalyse(isb = true,truemotion=true,pel=2, idx=2search=3)
forward_vec = source.MVAnalyse(isb = false,truemotion=true,pel=2, idx=2,search=3)
source.MVFlowFps(backward_vec,forward_vec,num=60,den=1,idx=2)

dull = last
sharp = dull.mt("LimitedSharpenfaster(ss_x=2.6,ss_y=2.6,smode=3,strength=180,overshoot=3)")
Soothe(sharp,dull,15)

DOWNLOAD SAMPLE

HIGH_QUALITY (http://www.rigenerator.com/doom9/high_quality.mp4)





x264 settings:

--crf 22 --bframes 6 --ref 6 --filter -2,-1 --analyse p8x8,b8x8,i4x4,i8x8 --8x8dct --merange 8 --no-fast-pskip --weightb --me umh --b-pyramid --weightb --direct auto --vbv-maxrate 25000 --threads auto --thread-input --progress --no-dct-decimate --no-psnr --no-ssim

avisynth script:

ffmpegsource("video.mp4", seekmode=1)
setmemorymax(ram)
assumefps(fico)

source=last
w=width()
h=height()
backward_vec3 = source.MVAnalyse(isb=true,truemotion=true, delta=3,blksize=8,search=3,searchparam=4,pel=4,overlap=4,overlapV=4,divide=2,dct=0,idx=1)
backward_vec2 = source.MVAnalyse(isb=true,truemotion=true, delta=2,blksize=8,search=3,searchparam=4,pel=4,overlap=4,overlapV=4,divide=2,dct=0,idx=1)
backward_vec1 = source.MVAnalyse(isb=true,truemotion=true, delta=1,blksize=8,search=3,searchparam=4,pel=4,overlap=4,overlapV=4,divide=2,dct=0,idx=1)
forward_vec1 = source.MVAnalyse(isb=false,truemotion=true, delta=1,blksize=8,search=3,searchparam=4,pel=4,overlap=4,overlapV=4,divide=2,dct=0,idx=1)
forward_vec2 = source.MVAnalyse(isb=false,truemotion=true, delta=2,blksize=8,search=3,searchparam=4,pel=4,overlap=4,overlapV=4,divide=2,dct=0,idx=1)
forward_vec3 = source.MVAnalyse(isb=false,truemotion=true, delta=3,blksize=8,search=3,searchparam=4,pel=4,overlap=4,overlapV=4,divide=2,dct=0,idx=1)
maskp1 = mvmask(kind=1, vectors=forward_vec1).UtoY()
maskp2 = mvmask(kind=1, vectors=forward_vec2).UtoY()
maskp3 = mvmask(kind=1, vectors=forward_vec3).UtoY()
maskp4 = mvmask(kind=1, vectors=backward_vec1).UtoY()
maskp5 = mvmask(kind=1, vectors=backward_vec2).UtoY()
maskp6 = mvmask(kind=1, vectors=backward_vec3).UtoY()
maskf = average(maskp1, 0.25, maskp2, 0.25, maskp3, 0.25, maskp4, 0.25, maskp5, 0.25, maskp6, 0.25).spline36resize(w,h)
smooth = source.mt("fft3dfilter(bw=32, bh=32, ow=16, oh=16, bt=5, sigma=4, plane=4)")
source2 = maskedmerge(source,smooth,maskf)
source2.MVDegrain3(backward_vec1,forward_vec1,backward_vec2,forward_vec2,backward_vec3,forward_vec3,thSAD=400,idx=3)

source=last
backward_vec = source.MVAnalyse(isb = true,truemotion=true,pel=4,idx=2,search=3,divide=2,searchparam=4)
forward_vec = source.MVAnalyse(isb = false,truemotion=true,pel=4,idx=2,search=3,divide=2,searchparam=4)
source.MVFlowFps(backward_vec,forward_vec,num=60,den=1,idx=2

dull = last
sharp = dull.mt("LimitedSharpenfaster(ss_x=3.4,ss_y=3.4,smode=3,strength=180,overshoot=7)")
Soothe(sharp,dull,15)

DOWNLOAD SAMPLE

VERY_HIGH_QUALITY (http://www.rigenerator.com/doom9/very_high_quality.mp4)



For me very high quality don't look better than high quality, even if the pc had take 4 hours to complete encoding!!!:D

For this, I ask here, Can I try another way to revive this video file? I need suggestion for having an overall improve of quality than High_quality video, even at the cost of slow down encoding.......

Any suggestion? thanks

Comatose
18th July 2008, 14:57
Was the original one shot on a N95?

ficofico
18th July 2008, 16:14
yes it was