Welcome to Doom9's Forum, THE in-place to be for everyone interested in DVD conversion. Before you start posting please read the forum rules. By posting to this forum you agree to abide by the rules. |
12th July 2009, 11:25 | #1 | Link |
Registered User
Join Date: Mar 2009
Posts: 166
|
Is this script already as optimized as can be?
Or can it be optimized more with no visible difference?
Here's a 7z containing an unprocessed sample, a processed clip of the sample, and the script: http://www.megaupload.com/?d=4OTM5OL0 the unprocessed sample isn't technically unprocessed; i loaded an AVS with a simple AviSource of the source and a KillAudio into VDM, took a sample of it, and re-encoded it with a dvsd codec (cedocida) very similar to the original (sony dv) because i wasn't sure how to get a sample otherwise. but the post-script output looks identical when operating on the original source compared to the provided sample. (the provided one is compressed with xvid, however) and just in case you just want to look at the script, here it is: Code:
#filters used: #MT, removegrain, nnedi2, motionprotectedfps, mvtools2, fft3dfilter, gradfun2dbmod, warpsharp (2003), and depan AviSource("filmlook sample - unprocessed.avi").AssumeBFF() MT("removegrain()",0,splitvertical=true,overlap=4) nnedi2(field=-2) motionprotectedfps(239.76) b = selectevery(10, 1) selectevery(10, 0) Merge(b) #the merging of the two slightly different points in time simulates a 1/48 shutter speed from the original 1/60 LanczosResize(752,500) MT(""" super = MSuper() bv2 = MAnalyse(super,isb=true, delta=2) bv1 = MAnalyse(super,isb=true, delta=1) fv1 = MAnalyse(super,isb=false,delta=1) fv2 = MAnalyse(super,isb=false,delta=2) MDegrain2(super,bv1,fv1,bv2,fv2) """,0,overlap=4) MT("fft3dfilter()",0,splitvertical=true,overlap=4) MT("gradfun2dbmod()",0,splitvertical=true,overlap=4) MT("warpsharp(64)",0,overlap=4) mdata = DePanEstimate(trust=0) DePanStabilize(data=mdata,dxmax=12,dymax=12,mirror=12) Crop2(720,356) #simply a shorthand for Crop(16,72,-16,-72) AddBorders(0,62,0,62) ColorYUV(levels="TV->PC") #final output: 720x480 23.976p |
12th July 2009, 21:02 | #4 | Link | |
RipBot264 author
Join Date: May 2006
Location: Poland
Posts: 7,891
|
Quote:
__________________
Windows 7 Image Updater - SkyLake\KabyLake\CoffeLake\Ryzen Threadripper |
|
13th July 2009, 07:07 | #6 | Link |
RipBot264 author
Join Date: May 2006
Location: Poland
Posts: 7,891
|
You don't need three denoisers! I does not make sense at all.
yadif nnedi2
__________________
Windows 7 Image Updater - SkyLake\KabyLake\CoffeLake\Ryzen Threadripper |
13th July 2009, 22:03 | #7 | Link | |
Fighting spam with a fish
Join Date: Sep 2005
Posts: 2,715
|
I see artifacts in the floor for the Yadif version.
@shoopdabloop Quote:
Personally, I like to use MCTemporalDenoise for my heavy filtering. However, you can usually achieve whatever effect you desire using only FFT3DFilter/GPU due to its ability to be tuned for specific noise frequencies. As for the Yadif deinterlacer argument, I never did like Yadif myself. I always see artifacts whenever I use it. I never use NNEDI2 alone, only in combination with TFM/TDeint.
__________________
FAQs:Bond's AVC/H.264 FAQ Site:Adubvideo Zsmooth - Cross-platform smoothing for Vapoursynth Last edited by Adub; 13th July 2009 at 22:10. |
|
13th July 2009, 22:24 | #8 | Link | |
RipBot264 author
Join Date: May 2006
Location: Poland
Posts: 7,891
|
Quote:
nnedi2 as deinterlacer is useless. it deinterlaces whole picture intead of specific areas and it is slooooooowww as heeeeeelllll.....
__________________
Windows 7 Image Updater - SkyLake\KabyLake\CoffeLake\Ryzen Threadripper |
|
13th July 2009, 22:55 | #9 | Link |
Fighting spam with a fish
Join Date: Sep 2005
Posts: 2,715
|
Exactly why it's meant to be used with TFM/TDeint. NNEDI is used to generate the pixels sampled from by TDeint. I agree with you. NNEDI should not be used alone to deinterlace, but Yadif isn't flawless either. The way that NNEDI is used in standalone can introduce "stair stepping" aka aliasing. Which is why I use it as a sample platform, not final output.
However yadif has it's flaws as well, which mostly appear in the thresholds of edges:
__________________
FAQs:Bond's AVC/H.264 FAQ Site:Adubvideo Zsmooth - Cross-platform smoothing for Vapoursynth |
13th July 2009, 23:49 | #10 | Link |
Registered User
Join Date: Mar 2009
Posts: 166
|
well, nnedi2 is my favorite deinterlacer because it has a nice balance between speed, smoothness, and realism, so i will try combining it with TDeint.
but my source is 100% interlaced, so will it really help much? also, i will see what i can do about the denoisers. |
14th July 2009, 00:35 | #11 | Link |
Fighting spam with a fish
Join Date: Sep 2005
Posts: 2,715
|
Yes it will. Not TFM but TDeint will. TDeint (as can be guessed by the name) is also a deinterlacer. But one of the nice things about is that you can specify an external clip to be used for pixel sampling when deinterlacing a frame.
__________________
FAQs:Bond's AVC/H.264 FAQ Site:Adubvideo Zsmooth - Cross-platform smoothing for Vapoursynth |
14th July 2009, 02:57 | #14 | Link |
Registered User
Join Date: Mar 2009
Posts: 166
|
err, i was hoping no one had replied to that post when i deleted it.
you're talking about low-detail areas, correct? i didn't realize i had so many. now, about the denoisers... i'm not sure how to get rid of one or two of them without losing visual quality... (i've already taken out removegrain) Last edited by shoopdabloop; 14th July 2009 at 03:05. |
14th July 2009, 02:59 | #15 | Link |
Guest
Join Date: Jan 2002
Posts: 21,901
|
Not just that. I mean, in general, you should make a definitive determination about your video when deciding the appropriate treatment, not work using the "I think" approach. You're obviously concerned about quality, so spend some time on the analysis phase.
Anyway, a low-detail area won't be affected as much by a deinterlacer, i.e., detail loss will be less significant. Last edited by Guest; 14th July 2009 at 03:03. |
14th July 2009, 16:45 | #17 | Link |
Fighting spam with a fish
Join Date: Sep 2005
Posts: 2,715
|
Yeah, I would have to agree on the TempgaussMC option. However, it is unimaginably slow if you want to encode a DVD in a couple of hours.
__________________
FAQs:Bond's AVC/H.264 FAQ Site:Adubvideo Zsmooth - Cross-platform smoothing for Vapoursynth |
15th July 2009, 10:36 | #18 | Link |
Registered User
Join Date: Jun 2009
Posts: 90
|
I see lots of mention of use of nnedi and TDeint, but how do these work together? can someone post an avisynth script snippet.
The reason I ask is because I have an interlaced PAL VHS source that I am deinterlacing using Code:
AssumeTFF() nnedi2(qual=3) edit: here is the rest of the script, pretty similar to shoopdabloop actually. Code:
DGDecode_mpeg2source("C:\familyvids\xmas1989\Xmas 1989 to be trimmed.d2v", info=3, cpu=4) ColorMatrix(hints=true, interlaced=true, threads=0) ColorYUV(autowhite=true) HDRAGC() AssumeTFF() nnedi2(qual=3) crop( 12, 2, -12, -12) mdata = DePanEstimate() DePanStabilize(data=mdata, method=1, mirror=15) TemporalDegrain(degrain=2) Spline36Resize(720,576) LSFmod(strength=80) Last edited by m3mbran3; 15th July 2009 at 10:54. |
Tags |
film, multithreaded, optimize, script |
Thread Tools | Search this Thread |
Display Modes | |
|
|