View Full Version : highest quality deinterlacer
halsboss
8th August 2008, 18:07
So many deinterlace options/versions, so few memory brain cells, so many search results.
Seeking opinion/link on the latest version of "highest quality" deinterlacer for 1080i (TFF I think) where high level of movement can be apparent and possibly with night time fireworks. Processing fps rate not an issue :) although helpful if could indicate how to speed up with MT/SetMTmode if at all.
Thought it was TDEINT with EEDI or NEDI or something (but don't know how to string them together) ... MCbob or MVbob still around (and their dependent plugins/functions) ?
mikeytown2
8th August 2008, 18:18
If I need quality I use MCBob + NNEDI (http://forum.doom9.org/showthread.php?p=1055263#post1055263). If you wish to merely deinterlace, then I'm assuming one of the NNEDI variants (http://avisynth.org/mediawiki/External_filters#Deinterlacing) would give you the best quality.
Mystery Keeper
8th August 2008, 20:13
In video processing there is no universal solution. In one video I used both TempGaussMC_beta1 and nMCBob on different frames.
Comatose
8th August 2008, 20:33
Try the ones generally regarded as being best and see which one you like best.
Revgen
8th August 2008, 20:39
I use MCBob+NNEDI for high quality. Since it's motion-based, it works well for my sports videos.
Other deinterlacers may be better suited for other types.
Blue_MiSfit
8th August 2008, 20:41
Indeed. There are many choices!
My "standard" is either TDeint or Yadif, since they're both quite fast.
TDeint is very good (and quite a bit slower) when assisted with TMM and NNEDI, but it's still faster than MCBob or TempGaussMC :)
But it's really impossible to say which one is the "highest quality". It's very source dependent!
~MiSfit
WorBry
8th August 2008, 22:43
If you are looking for a top-notch, double-rate output deinterlacer that avoids inter-line flicker/shimmer, I would definitely recommend TempGaussMC_beta.
Technically it doesnt qualify as a bobber, as the original fields are not left untouched, and denoising (MVDegrain) and and counter-sharpening are integral components of the processing, so if you dont want denoising or prefer a different denoiser, consider something else.
Generally, for SD/DV sources, I prefer the 'EEDI2' edi mode (default in the beta version), but the faster 'Yadif' mode still produces very good results and perhaps is more practical (in terms of processing time) for HD source material.
Mystery Keeper
8th August 2008, 23:04
TempGaussMC oftenly causes ghosting in anime.
halsboss
9th August 2008, 01:00
Thankyou all. So far, the options and opinions seem to be
1) MCBob + NNEDI (http://forum.doom9.org/showthread.php?p=1055263#post1055263) ... "MCBob+NNEDI for high quality. Since it's motion-based, it works well for my sports videos"
2) nMCBob ? Will have to do a search and edit this line...
3) TempGaussMC_beta ... recognizing "the original fields are not left untouched, and denoising (MVDegrain) and and counter-sharpening are integral components of the processing, so if dont want denoising or prefer a different denoiser, consider something else" and "TempGaussMC oftenly causes ghosting in anime" ... probably will give this a miss on the basis of risk of doing unfortunate things to night-time fireworks.
4) TDeint+NNEDI ... "TDeint is very good (and quite a bit slower) when assisted with TMM and NNEDI, but it's still faster than MCBob or TempGaussM". Interestingly, http://forum.doom9.org/showthread.php?p=1045895#post1045895 says "The bad news is that it's about as slow as MVBob too. And this is with Threads=2 enabled for NNEDI. It doesn't come close to MCBob though, regardless of whether MCBob is using the NNEDI or not"
Now, to search on their dependent plugins etc, and how to call them. Any suggestions on using them with MT/SetMTmode ?
Ah, just found this:
NNEDI: Very Good Quality, Terrible Stability
MVBOB: Very Good Quality, Very Good Stability
MCBOB: Best Quality, Best Stability
NNEDI+TDeint: Good Quality, Good Stability
NNEDI didn't allow too many stray interlaced lines to come in, but the video was flickering and jerking too much and wasn't stable. Pairing it with TDeint improved stability but allowed more stray interlacing artifacts in. If there are any suggestions on improving quality for the NNDI scripts, let me know.
NNDI Settings:
NNDI = nnedi(field=3,y=true,u=true,v=true,threads=2,opt=0)
NNEDI+TDeint =
interp = nnedi(field=3,y=true,u=true,v=true,threads=2,opt=0)
tdeint(mode=1,order=1,edeint=interp)
MVBOB = Default
MCBOB = Default
On that basis, I'm off to look up how to use and, if possible, multi-thread "1) MCBob + NNEDI (http://forum.doom9.org/showthread.php?p=1055263#post1055263)"
WorBry
9th August 2008, 02:47
3) TempGaussMC_beta ... recognizing "the original fields are not left untouched, and denoising (MVDegrain) and and counter-sharpening are integral components of the processing, so if dont want denoising or prefer a different denoiser, consider something else" and "TempGaussMC oftenly causes ghosting in anime" ... probably will give this a miss on the basis of risk of doing unfortunate things to night-time fireworks.
Ah, yes, I see from the edit footnote in your leading post that you are planning to re-interlace to 576i.
Had your intended final format been progressive I would have suggested that TGMC might be of benefit in preventing undue bob-flicker of the "fireworks at night"....unless of course that extra twinkle is a desirable effect :D
BTW- dont do anime myself, but cant say I've noticed 'ghosting' with the live DV material I"ve tested thus far.
Yoshiyuki Blade
9th August 2008, 03:23
BTW- dont do anime myself, but cant say I've noticed 'ghosting' with the live DV material I"ve tested thus far.
From what I've experienced, its kind of hard to notice the ghosting since when it runs at 60fps (bobbed NTSC) versus the common 24 fps.
halsboss
9th August 2008, 03:57
OK. Have this non-MT script (with MCbob+NNEDI from http://forum.doom9.org/showthread.php?p=1055263#post1055263) and am wondering your opinion;
1. if there'd be any difference between the quality by resizing with A. vs resizing with B (in the script)
2. if you could suggest better for a highest possible quality downsize 1080i -> 576i for DVD, assuming a reasonable HQ source
3. how to multi-thread it assuming an intel 4-core Q9450 in one PC and a Q6600 4-core in another :) (I've already put ",threads=4" in every NNEDI call in mcbob)
###SetMTmode(mode=5,threads=2) # start with mode=5 forAVIsource http://forum.doom9.org/showthread.php?p=1067216#post1067216
###Disable MT
SetMemoryMax(768)
LoadPlugin("C:\SOFTWARE\DGindex\DGDecode.dll")
# snip - load the plugins here #
Import("C:\Program Files\AviSynth 2.5\MCBob-NNEDI.avs")
# -------------------------------------------------------------------------------------
#MPEG2Source("G:\HDTV\1\test.d2v",cpu=6) # cpu=6: DEBLOCK_Y_H, DEBLOCK_Y_V, DEBLOCK_C_H, DEBLOCK_C_V, DERING_Y, DERING_C
MPEG2Source("G:\HDTV\1\test.d2v") # cpu=6: DEBLOCK_Y_H, DEBLOCK_Y_V, DEBLOCK_C_H, DEBLOCK_C_V, DERING_Y, DERING_C
AssumeFPS(25)
AssumeTFF() ### THIS IS VERY IMPORTANT TO SET CORRECTLY
FRAMERATE=25
WIDTH=704
HEIGHT=576
# --A.
AssumeTFF()
MCbob()
bicubicresize(704,576)
separatefields()
selectevery(4,0,3)
weave()
# --B.
#AssumeTFF()
#bicubicresize(704,LAST.height())
#MCbob()
#bicubicresize(last.width(),576)
#separatefields()
#selectevery(4,0,3)
#weave()
# -------------------------------------------------------------------------------------
#
Converttoyv12(interlaced=true)
#
SetPlanarLegacyAlignment(True)
# Distributor() should only be used when loading the script into applications which talk to avisynth directly
# e.g. HC and MeGUI. If the program opens the .avs file as an avi file (like virtualdub/mod, x264, xvid_encraw etc.)
# then you don't need (and shouldn't have) the distributor call at the end.
# http://forum.doom9.org/showthread.php?p=1136518#post1136518
##### "HC uses custom avisynth routines, you have to add Distributor() to the end of the script."
Distributor() # use this when using HC and SetMTmode, per http://forum.doom9.org/showthread.php?p=1063622#post1063622
# http://forum.doom9.org/showthread.php?p=1067589#post1067589
# ChangeFPS(Last, Last, True) makes fast scripts faster and slow scripts slower !!
#ChangeFPS(Last, Last, True) # use this when using HC and SetMTmode, per http://forum.doom9.org/showthread.php?p=1064118#post1064118
hc.ini
*INFILE D:\HDTV\1\test-CQ2.avs
*OUTFILE D:\HDTV\1\test.mpv
*INTERLACED
*TFF
*LOGFILE D:\HDTV\1\test-HC-CQ2.log
*PROFILE BEST
*ASPECT 16:9
*BIAS 50
*BITRATE 9350
*MAXBITRATE 9450
*LASTIFRAME
*AUTOGOP 15
*PULLDOWN
*CLOSEDGOPS
*DC_PREC 10
*CQ_MAXBITRATE 2
*MATRIX FOX1
EDIT: already put ",threads=2" or ",threads=4" in every call to NNEDI and it went from 0.3 fps to 0.8 fps (1080i source)
2Bdecided
11th August 2008, 10:29
TempGaussMC oftenly causes ghosting in anime.Would it be possible for you to provide a small sample that has this problem?
Then again, TGMC is designed for native interlaced content. Anime rarely is - any interlacing is more usually some messed up rendition of 24p, 30p, 15p, 25p etc etc, sometimes with field blending. Occasionally there's a fade, pan, or scene transition that's "really" interlaced.
Cheers,
David.
Mystery Keeper
11th August 2008, 16:36
TempGaussMC caused ghosting in anime when I did it after cropping. If done before - there's no problem. Sowwy ^_^'
Adub
11th August 2008, 17:08
Of course it did. You should never crop Interlaced material, just to be safe.
Gavino
11th August 2008, 17:53
You should never crop Interlaced material, just to be safe.
Surely (vertical) cropping on a mod4 boundary is safe enough?
Sagekilla
12th August 2008, 02:44
I don't know for 100%, but I know it's never a good idea to crop before deinterlacing, or resizing to a size bigger than width/2 height/2.
henryho_hk
12th August 2008, 02:54
I think it's better to crop after deinterlacing because it gives the deinterlacer more information to handle the (to-be) border pixels.
jfcarbel
10th December 2010, 11:23
Indeed. There are many choices!
My "standard" is either TDeint or Yadif, since they're both quite fast.
TDeint is very good (and quite a bit slower) when assisted with TMM and NNEDI, but it's still faster than MCBob or TempGaussMC :)
But it's really impossible to say which one is the "highest quality". It's very source dependent!
~MiSfit
So if source dependent, what types are best for what source (i.e. sports, darker video, DV SD home videos, animation, etc)?
Mystery Keeper
14th December 2010, 20:10
I think it's better to crop after deinterlacing because it gives the deinterlacer more information to handle the (to-be) border pixels.
When it comes to interpolation (which deinterlacing is), black borders are actually junk information, that creates sharp border and distortion in interpolated pixels near it. Clever extrapolation gives much better result for border pixels than just filling the space outside with solid colour.
So if source dependent, what types are best for what source (i.e. sports, darker video, DV SD home videos, animation, etc)?
It is always source dependant what means you need to use to enchance the video quality. Still, there are newer smarter filters than some that used to be good before. For example, "TomsMoComp" used to be one of the best deinterlacers in the past. It was superseded by MVBob. Which was superseded by MCBob. Which for some time competed with TempGaussMC, but gave up as TempGaussMC evolved.
7ekno
15th December 2010, 04:53
but gave up as TempGaussMC evolved.
And now there is QTGMC (http://forum.doom9.org/showthread.php?t=156028) ;)
A one stop shop for any speed conversion you like :P Ok, that's a little simplified, but it is a pretty amazing script (built from TGMC, but has improvements built in and a "preset" system that makes it noob, like me, friendly!) ...
7ek
Forteen88
16th December 2010, 10:38
Also try QTGMC, it's a modified version of TGMC.
EDIT: Oops, I were too slow :P
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.