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. |
17th June 2008, 14:40 | #1 | Link |
Registered User
Join Date: Feb 2002
Location: Germany
Posts: 540
|
SD upscaling and Bobbers
Hello everyone,
today i upscaled (576i) material to HD (1080p). I used this script: Code:
qtsource("somefile",mode=2,raw="2yuv") mvbob() selectevery(2,1) lanczosresize(1920,1080) While researching for a descent interlacing-technique i found mvbob on scharfi's website. But is this the "state of the art" method? Are there other bobbers which are faster with same quality? Or is there a totaly different method for upscaling SD? I'd like to have a list with all bobbers in their latest version and a comparison. Maybe we could collect infos in this thread and then i write a new thread with a list of all the different bobbers. Or is there such a list out there? regards, hanfrunz |
17th June 2008, 15:01 | #2 | Link |
Sleepy overworked fellow
Join Date: Feb 2008
Location: Maple syrup's homeland
Posts: 933
|
MCBob, slower & better quality
TempGaussMC, a bit faster & better quality (for some sources, more than mcbob) Tdeint(mode=1), a lot faster, but worse Tdeint + external interpolator & motion mask i.tdeint(1,edeint=i.nnedi(-2),emask=i.tmm(1)), faster, lower quality and a few others like yadif(mod)
__________________
AnimeIVTC() - v2.00 -http://boinc.berkeley.edu/- Let all geeks use their incredibly powerful comps for the greater good (no, no, it won't slow your filtering/encoding :p) |
17th June 2008, 20:47 | #3 | Link |
Derek Prestegard IRL
Join Date: Nov 2003
Location: Los Angeles
Posts: 5,988
|
The way I see it (for most content)
MCBob > TDeint (with external interpolation + motion masking) > YADIFmod > TDeint > YADIF TDeint by itself will break sometimes, and let stray pixels through in high motion/ flashing / flickering scenes, whereas plain YADIF tends not to. I haven't even heard of TempGaussMC - it must be new But, since you're going for upscaling and high quality, I would say MCBob is kind of your best bet. It really, really impresses me. Last I checked, it multithreads ok, so make sure you're doing that. You do have a multi-core machine, if you're encoding HD - right? I would say also that for such large upscaling, a different resize, like Blackman, Spline[16/36], or maybe lanczos4 (or maybe eedi2 if you want to get really crazy /slow with it ) Honestly though, I think you're usually better off (with true interlaced sources) bobbing to 60p, and then upscaling to 720p (or just keeping 480p). The extra motion fluidity is nice. Finally, SelectEvery(2,1) is the same as SelectOdd(). ~MiSfit
__________________
These are all my personal statements, not those of my employer :) |
18th June 2008, 04:00 | #4 | Link | |
Registered User
Join Date: Jan 2004
Location: Here, there and everywhere
Posts: 1,197
|
Quote:
http://forum.doom9.org/showthread.ph...26#post1045226 I agree with Blue_Misfit, upscaling from SD to 1080p seems a bit overly ambitious, quality wise.
__________________
Nostalgia's not what it used to be Last edited by WorBry; 18th June 2008 at 04:41. |
|
18th June 2008, 11:40 | #6 | Link |
Registered User
Join Date: Feb 2002
Location: Germany
Posts: 540
|
Okay i tried to use MCBob, but i get different errors (removeflicker.dll can't be loaded, mt_??? not found...). Can i download a MCBob-package (needi-version) with all plugins somewhere? Or can someone give a list of all links with working versions of each plugin?
@2Bdecided after mvbob() i got 50fps, but i want 25fps. The scenes will be mixed with real 25p material, so i need the same framerate and progressive material. hanfrunz Last edited by hanfrunz; 18th June 2008 at 11:44. |
18th June 2008, 11:46 | #7 | Link |
Registered User
Join Date: Dec 2002
Location: UK
Posts: 1,673
|
Oh, you want to mix SD and 1920x1080p25 (HD) material - and this is the script for up-convering the SD to match the resolution and framerate of the HD?
I collected all the links to the mcbob required filters here: http://www.hv20.com/showthread.php?t=2876 ...but that's for the EEDI2 version. You need to grab the NNEDI version from elsewhere (and NNEDI itself). Cheers, David. |
18th June 2008, 11:53 | #8 | Link |
Sleepy overworked fellow
Join Date: Feb 2008
Location: Maple syrup's homeland
Posts: 933
|
You can also get all the up-to-date functions in the requirements.7z of animeivtc.
Use selecteven() or selectodd() to cut your temporal resolution by half.
__________________
AnimeIVTC() - v2.00 -http://boinc.berkeley.edu/- Let all geeks use their incredibly powerful comps for the greater good (no, no, it won't slow your filtering/encoding :p) |
20th June 2008, 11:59 | #9 | Link |
Registered User
Join Date: Feb 2002
Location: Germany
Posts: 540
|
so i got mcbob() to work. thanks to thetoofs requirements.7z.
BUT how to i process YUY2-Video? It says: "only planar color spaces are supported" Is there a YUY2 version of MCBob or is it impossible, because some of the used plugins can't process YUY2? regards, hanfrunz |
20th June 2008, 12:09 | #10 | Link |
Registered User
Join Date: Apr 2002
Location: Germany
Posts: 5,389
|
__________________
- We´re at the beginning of the end of mankind´s childhood - My little flickr gallery. (Yes indeed, I do have hobbies other than digital video!) |
20th June 2008, 14:15 | #14 | Link |
Registered User
Join Date: Apr 2002
Location: Germany
Posts: 5,389
|
Code:
YUY2source yd = Yadif(mode=1) mcb = ConvertToYV12(interlaced=true).MCBob().ConvertToYUY2() mcb.MergeChroma(yd)
__________________
- We´re at the beginning of the end of mankind´s childhood - My little flickr gallery. (Yes indeed, I do have hobbies other than digital video!) |
20th June 2008, 14:48 | #15 | Link |
Registered User
Join Date: Dec 2002
Location: UK
Posts: 1,673
|
Oh Didée, how could you make his life so easy? Surely this is much better...
Code:
YUY2source ui=utoy() vi=vtoy() up=ui.ConvertToYV12(interlaced=true).mcbob().ConvertToYUY2() vp=vi.ConvertToYV12(interlaced=true).mcbob().ConvertToYUY2() yp=last.converttoyv12(interlaced=true).mcbob().ConvertToYUY2() ytouv(up,vp,yp) (Actually, it crashes for me - not sure why). Cheers, David. |
20th June 2008, 16:13 | #16 | Link |
Registered User
Join Date: Apr 2002
Location: Germany
Posts: 5,389
|
MCBob uses fixed idx values, so it can be called only once in a script. Your script crashes because of idx collisions.
To use MCBob (or TempGaussMC) on a YUY2 source, a possible trick would be this: Code:
c = YUY2source stackhorizontal(c,c.UtoY(),c.VtoY()) ConvertToYV12(interlaced=true) MCBob ConvertToYUY2() YtoUV( crop(width/2,0,width/4,height), crop(width-width/4,0,width/4,height), crop(0,0,width/2,height) )
__________________
- We´re at the beginning of the end of mankind´s childhood - My little flickr gallery. (Yes indeed, I do have hobbies other than digital video!) |
20th June 2008, 20:53 | #17 | Link | |
Avisynth language lover
Join Date: Dec 2007
Location: Spain
Posts: 3,431
|
Quote:
Since MCBob is implemented as a function, I'm surprised it can't be made robust against multiple instances interfering with each other. Is it a threading problem? Or a problem in one of the plugins it uses? |
|
20th June 2008, 22:30 | #18 | Link |
brainless
Join Date: Mar 2003
Location: Germany
Posts: 3,653
|
It is just the idx-issue.
One could open mcbob() to allow to give an offset for the idx used within mcbob() but I am to lazy to implement it.
__________________
Don't forget the 'c'! Don't PM me for technical support, please. |
23rd June 2008, 14:40 | #19 | Link | |
LaTo INV.
Join Date: Jun 2007
Location: France
Posts: 701
|
Quote:
|
|
23rd June 2008, 16:51 | #20 | Link |
Registered User
Join Date: Apr 2002
Location: Germany
Posts: 5,389
|
The court issues twenty strikes on the plantars for putting contingency into a supposed-to-be-deterministic context.
__________________
- We´re at the beginning of the end of mankind´s childhood - My little flickr gallery. (Yes indeed, I do have hobbies other than digital video!) |
Thread Tools | Search this Thread |
Display Modes | |
|
|