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. |
23rd August 2003, 16:42 | #1 | Link |
Registered User
Join Date: Jun 2003
Posts: 71
|
New Filter: SmartDecimate
A new AviSynth filter is now available, SmartDecimate. You can find it at http://kevin.atkinson.dhs.org/tel/ .
This filter implements the Telecine Removal method at http://kevin.atkinson.dhs.org/tel/method.html. Although some parts of the document are now out of date as I have modified my filter a bit since I wrote the document. This filter should be more stable than my Median filter. It requires my C API Plugin which you can find at http://kevin.atkinson.dhs.org/avisynth_c/. It should be very good at handling irrigular telecine. It will be very diffacult to get it to duplicate frames. It will also handle hybrid clips fairly well without any excessive jerkiness or blurring. Things it should be good at: (Possibly irregular) 3:2 pulldown -> 24 fps Mix of trully interlaced material and 3:2 pulldown -> 24 fps Better smart bob for telecine material (full resultion on telecine frames) when used together with a normal smart bob filter such as DgBob (http://neuron2.net/dgbob/dgbob.html) or Smooth Deinterlacer (http://biphome.spray.se/gunnart/vide...hDeinterlacer/) Please test it out and let me know what you think. Last edited by kevina; 7th September 2003 at 17:35. |
24th August 2003, 06:04 | #2 | Link |
Registered User
Join Date: Oct 2002
Location: Portugal
Posts: 1,182
|
Guys, do have a look at this filter
I got better results with it over a Neo Genesis Evangelion clip than both with Telecide/Decimate and Uncomb/Decimate. No stuttering, no blended fields match. It sometimes leaves some interlaced artifacts behind that you can easily correct with KernelDeint and others, but that's not the real problem when IVTCing complicated streams. I do recommend it Bilu |
26th August 2003, 19:01 | #4 | Link |
Registered User
Join Date: Jun 2003
Location: Northampton, England
Posts: 187
|
I echo the thoughts of Bilu here. I used this on an episode of the Simpsons from series 3 (DVD2AVI returned a value 67% film), and this filter did a great job, way better than Telecide and Decimate.
No blended fields at all, just a few combed frames, which, like Bilu said, can be easily cleaned up afterwards. Good job Kev, your work is appreciated. |
28th August 2003, 08:54 | #6 | Link |
Registered User
Join Date: Oct 2002
Location: Portugal
Posts: 1,182
|
Start reading from here:
http://neuron2.net/ipw-web/bulletin/...ighlight=#1173 That happened with the SSE version, not with Bob() but with DGBob(). Kevin released a fixed binary in the thread I mentioned. Bilu |
28th August 2003, 18:44 | #7 | Link | |
Guest
Join Date: Jan 2002
Posts: 21,901
|
Quote:
|
|
29th August 2003, 02:33 | #11 | Link |
Registered User
Join Date: Oct 2002
Location: Portugal
Posts: 1,182
|
Have you tried:
b=DGBob(FOrder(),mode=1) SeparateFields() SmartDecimate(24,60,b,0.50) KernelDeint(FOrder()) This is my favorite method. FOrder works for MPEG-2 sources. function FOrder(clip c) { fo= GetParity(c)? 1:0 return fo } Bilu |
29th August 2003, 04:04 | #12 | Link |
Registered User
Join Date: May 2002
Posts: 31
|
For some reason DGbob likes to add little white dots inside alot of the lines and the Kerneldeint always seems to make all the lines jagged even when it does fix some of the overall interlacing.
Edit: Just tried your preferred method, and every time there is a motion frame that one the lines are all jagged then it smooths itself out on the next frame (assuming it doesn't have more motion) Last edited by JediNight; 29th August 2003 at 04:07. |
29th August 2003, 04:12 | #13 | Link |
Guest
Join Date: Jan 2002
Posts: 21,901
|
Try this:
loadplugin("d:\avisynthplugins\mpeg2dec3.dll") loadplugin("d:\don\programming\c++\avisynth\decomb\release\decomb.dll") mpeg2source("twins6.d2v") telecide(order=0,guide=1,post=4,vthresh=45,show=false) decimate(mode=0) If you cut the commercials out you'd have pure 3:2 material and it would be a breeze. As is though, this script does well on it. Note: DGBob() is not intended for progressive material. The usage described is not sanctioned. They are trying to use a smart bob to avoid the problems that arise from trying to do field decimation. So far, I am not overly impressed with the results, but I'm keeping an open mind as it is early days for this approach. Last edited by Guest; 29th August 2003 at 04:17. |
29th August 2003, 09:04 | #14 | Link |
Registered User
Join Date: Jun 2003
Posts: 71
|
Version 0.20 now Available.
A new version (0.20) is now available. Get it at http://kevin.atkinson.dhs.org/tel/ .
This version should give even better results. There should not be a need to decomb afterwards. It uses an improved field matching algo. which I hope to discuss latter. The readme also included a short guide to using it. So have another look at it. It suggests good values for the various paramaters. |
30th August 2003, 00:04 | #15 | Link | |
Registered User
Join Date: Jun 2003
Location: Northampton, England
Posts: 187
|
Quote:
Telecide(order=1,guide=1) Decimate(mode=3,theshold=1.0) It gave out a lot of blended frames as it went out of pattern often. I recently tried that script on a later Simpsons episode (which was 89% film), and it gave better results than SmartDecimate (a lot of deinterlacing artifacts, more than usual). Still some blending but the motion was a lot smoother overall. SmartDecimate wasn't perfect on the original test but there were less ghost effects. But it was only 67% film according to DVD2AVI so maybe the original frames aren't completely recoverable. I haven't tried v0.20 of SmartDecimate yet though.... |
|
30th August 2003, 15:34 | #18 | Link |
·
Join Date: Jan 2002
Posts: 1,729
|
Ah, you need to have 2 clips. You know that you can Invoke filters from within a filter, right? (Don't know if that's also possible with AVISynth-C) Might be easier to take the separatefields clip as an optional parameter and use an invoke as default.
|
30th August 2003, 17:11 | #19 | Link |
Registered User
Join Date: Sep 2002
Location: France
Posts: 432
|
Yep, but that's bothersome. You have to build an array of parameters, if you have to pass some. kevina20723's (let's call him Kevin from now on, if he doesn't mind ) solution is simplier for him as an author, because he doesn't have to get an headache parsing a string argument. Yes, scriptclip can give a hint; but *why* bother when a clip is so much more convenient?
Spoiled user |
30th August 2003, 17:17 | #20 | Link | |
·
Join Date: Jan 2002
Posts: 1,729
|
Quote:
|
|
Thread Tools | Search this Thread |
Display Modes | |
|
|