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.

 

Go Back   Doom9's Forum > Capturing and Editing Video > Avisynth Usage

Reply
 
Thread Tools Search this Thread Display Modes
Old 23rd August 2003, 16:42   #1  |  Link
kevina
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.
kevina is offline   Reply With Quote
Old 24th August 2003, 06:04   #2  |  Link
bilu
Registered User
 
bilu's Avatar
 
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
bilu is offline   Reply With Quote
Old 26th August 2003, 03:41   #3  |  Link
Aktan
Registered User
 
Join Date: Feb 2002
Posts: 297
Thanks for the heads up bilu. I'll try it out . Also thx a lot for another pulldown filter kevina20723!
Aktan is offline   Reply With Quote
Old 26th August 2003, 19:01   #4  |  Link
Bogalvator
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.
Bogalvator is offline   Reply With Quote
Old 28th August 2003, 05:56   #5  |  Link
JediNight
Registered User
 
Join Date: May 2002
Posts: 31
How do you get Dgbob() working with this filter? I always get an error that its not the correct framerate...
JediNight is offline   Reply With Quote
Old 28th August 2003, 08:54   #6  |  Link
bilu
Registered User
 
bilu's Avatar
 
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
bilu is offline   Reply With Quote
Old 28th August 2003, 18:44   #7  |  Link
Guest
Guest
 
Join Date: Jan 2002
Posts: 21,923
Quote:
Originally posted by Bogalvator
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.
Did you use Decomb 4 or Decomb 5?
Guest is offline   Reply With Quote
Old 28th August 2003, 19:17   #8  |  Link
JediNight
Registered User
 
Join Date: May 2002
Posts: 31
bili: I noticed in that other thread they mentioned using Weave=true helps alot ... where is that command used?

Last edited by JediNight; 28th August 2003 at 19:30.
JediNight is offline   Reply With Quote
Old 28th August 2003, 22:49   #9  |  Link
bilu
Registered User
 
bilu's Avatar
 
Join Date: Oct 2002
Location: Portugal
Posts: 1,182
Not in this version.
bilu is offline   Reply With Quote
Old 29th August 2003, 01:18   #10  |  Link
JediNight
Registered User
 
Join Date: May 2002
Posts: 31
Nothing I do gets rid of the combing in the mouths because of the 3 fields in a row problem =\
JediNight is offline   Reply With Quote
Old 29th August 2003, 02:33   #11  |  Link
bilu
Registered User
 
bilu's Avatar
 
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
bilu is offline   Reply With Quote
Old 29th August 2003, 04:04   #12  |  Link
JediNight
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.
JediNight is offline   Reply With Quote
Old 29th August 2003, 04:12   #13  |  Link
Guest
Guest
 
Join Date: Jan 2002
Posts: 21,923
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.
Guest is offline   Reply With Quote
Old 29th August 2003, 09:04   #14  |  Link
kevina
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.
kevina is offline   Reply With Quote
Old 30th August 2003, 00:04   #15  |  Link
Bogalvator
Registered User
 
Join Date: Jun 2003
Location: Northampton, England
Posts: 187
Quote:
Originally posted by neuron2
Did you use Decomb 4 or Decomb 5?
I used Decomb 5 b16 and the following script:

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....
Bogalvator is offline   Reply With Quote
Old 30th August 2003, 13:14   #16  |  Link
mf
 
mf's Avatar
 
Join Date: Jan 2002
Posts: 1,729
Bob source video has incorrect dimensions.

What's that all about ? My source is 720x480, and it doesn't work with 640x480 either.

DGBob(order=0)
LanczosResize(640, 480)
SeparateFields()
SmartDecimate(24, 60, last)
mf is offline   Reply With Quote
Old 30th August 2003, 14:45   #17  |  Link
kevina
Registered User
 
Join Date: Jun 2003
Posts: 71
Try
Code:
LanczosResize(640, 480)
b = DGBob(order=0)
SeparateFields()
SmartDecimate(24, 60, b)
kevina is offline   Reply With Quote
Old 30th August 2003, 15:34   #18  |  Link
mf
 
mf's Avatar
 
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.
mf is offline   Reply With Quote
Old 30th August 2003, 17:11   #19  |  Link
Kurosu
Registered User
 
Join Date: Sep 2002
Location: France
Posts: 422
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
Kurosu is offline   Reply With Quote
Old 30th August 2003, 17:17   #20  |  Link
mf
 
mf's Avatar
 
Join Date: Jan 2002
Posts: 1,729
Quote:
Originally posted by Kurosu
Spoiled user
Hey, I also make my functions more user-friendly if I can (mftoon 0.4 resolution as exception - I just got pissed at AVISynth being complicated about variable types and where and how to use them). So I can ask the same from other developers .
mf is offline   Reply With Quote
Reply

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +1. The time now is 01:28.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2018, vBulletin Solutions Inc.