Mug Funky
24th October 2003, 18:38
hey all. i've been playing with this for a while now... i call it "funkyDeint".
it basically does field differencing as well as frame differencing when deciding what to deinterlace. the advantage of this is that horizontal lines wont be wrongly deinterlaced, and artifacts like rainbows will be left alone (this is probably not an advantage..).
the actual deinterlacing is done by tomsmocomp, so you'll need that to run my script.
only other thing you need is undot() which i threw in there after testing it on grainy footage.
feel free to improve on it and maybe spin some ideas off it.
WORD OF WARNING: SLOW!
that's right... i don't like the way tomsmocomp's vertical filter moves everything one half-pel, so i did my own with generalconvolution. i then ran a "counter-convolution" which re-sharpens (minus any combing:)) this means RGB conversions. you can comment out these lines if you wish.
the link:
http://www.sharemation.com/mugfunky/funkydeint.avs
usage:
import("c:\avisynth_dir_here\plugins\funkydeint.avs")
avisource("whatever.avi")
funkydeint()
limitations:
colourspace should be either yuy2 or yv12 (preferably yuy2)
there's also a "funkybob()" mode that outputs twice the number of frames, basically interleaving 2 funkydeint's together for different fields. this may only work in yuy2, as it involves cropping by an odd number (then adding the line on later).
have fun people!
[edit]
i'm off to get some sleep. busy day's capturing to do tomorrow (and a busy night's partying).
[update]
changed funkybob() so it now doubles the framerate. sure would like to learn C and make a plugin out of this so it's not so annoyingly slow. funkybob is quite useful for un-blending old PAL telecines where it's just a video camera pointed at a screen, and you can see frames overlap in some fields.
it basically does field differencing as well as frame differencing when deciding what to deinterlace. the advantage of this is that horizontal lines wont be wrongly deinterlaced, and artifacts like rainbows will be left alone (this is probably not an advantage..).
the actual deinterlacing is done by tomsmocomp, so you'll need that to run my script.
only other thing you need is undot() which i threw in there after testing it on grainy footage.
feel free to improve on it and maybe spin some ideas off it.
WORD OF WARNING: SLOW!
that's right... i don't like the way tomsmocomp's vertical filter moves everything one half-pel, so i did my own with generalconvolution. i then ran a "counter-convolution" which re-sharpens (minus any combing:)) this means RGB conversions. you can comment out these lines if you wish.
the link:
http://www.sharemation.com/mugfunky/funkydeint.avs
usage:
import("c:\avisynth_dir_here\plugins\funkydeint.avs")
avisource("whatever.avi")
funkydeint()
limitations:
colourspace should be either yuy2 or yv12 (preferably yuy2)
there's also a "funkybob()" mode that outputs twice the number of frames, basically interleaving 2 funkydeint's together for different fields. this may only work in yuy2, as it involves cropping by an odd number (then adding the line on later).
have fun people!
[edit]
i'm off to get some sleep. busy day's capturing to do tomorrow (and a busy night's partying).
[update]
changed funkybob() so it now doubles the framerate. sure would like to learn C and make a plugin out of this so it's not so annoyingly slow. funkybob is quite useful for un-blending old PAL telecines where it's just a video camera pointed at a screen, and you can see frames overlap in some fields.