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. |
9th September 2016, 16:55 | #1 | Link |
Pig on the wing
Join Date: Mar 2002
Location: Finland
Posts: 5,733
|
[REQ] SmoothD2 for VapourSynth
Jim Conklin's nice deblocking filter for Avisynth cannot be used with the x64 version of VapourSynth as it's compiled with Avisynth 2.5 headers. If there's someone bored out of his/her mind, I'd be grateful if the filter was ported to VapourSynth
https://sites.google.com/site/jconkl...othd2/download
__________________
And if the band you're in starts playing different tunes I'll see you on the dark side of the Moon... |
9th September 2016, 18:09 | #2 | Link |
Professional Code Monkey
Join Date: Jun 2003
Location: Kinnarps Chair
Posts: 2,555
|
You forgot to mention that there isn't an x64 Avisynth version. And the reason for that is piles and piles of inline asm. Also piles of dead code in this. And of course it uses a custom memcpy.
A+++++ Would Avisynth filter again I find it very hard to motivate myself to clean up this kind of mess. Porting is easy, messes are hard.
__________________
VapourSynth - proving that scripting languages and video processing isn't dead yet |
9th September 2016, 18:14 | #4 | Link |
Pig on the wing
Join Date: Mar 2002
Location: Finland
Posts: 5,733
|
I totally forgot that the original site doesn't have an x64 version, but the Avisynth+ wiki page links to it:
http://www.dropbox.com/s/ui8chlbzopu...3_x64.zip?dl=1 Don't know how messy it is though
__________________
And if the band you're in starts playing different tunes I'll see you on the dark side of the Moon... |
9th September 2016, 18:26 | #5 | Link | |
Professional Code Monkey
Join Date: Jun 2003
Location: Kinnarps Chair
Posts: 2,555
|
Quote:
__________________
VapourSynth - proving that scripting languages and video processing isn't dead yet |
|
10th September 2016, 12:12 | #9 | Link |
Pig on the wing
Join Date: Mar 2002
Location: Finland
Posts: 5,733
|
Don't know if you should bother, my needs are only to use a deblocker for those rare TV series that I have only on DVD (Community, MacGyver etc.) Oyster is a bit too much placebo for that usage.
__________________
And if the band you're in starts playing different tunes I'll see you on the dark side of the Moon... |
10th September 2016, 16:40 | #11 | Link |
Pig on the wing
Join Date: Mar 2002
Location: Finland
Posts: 5,733
|
Thanks, I'd appreciate any effort. If you need any sample material, just let me know.
I feel that TV shows on DVD only are quite rare these days as new series are already in HD when broadcast. The old series need more work though, and they can be quite messy to clean up unless you want to remove all the few details they may still have.
__________________
And if the band you're in starts playing different tunes I'll see you on the dark side of the Moon... |
11th September 2016, 15:54 | #13 | Link |
I'm Siri
Join Date: Oct 2012
Location: void
Posts: 2,633
|
Code:
def fast_deblock(src, radius=6, h=3.2, lowpass="0.0:0.0 0.12:1024.0 1.0:1024.0"): core = vs.get_core() MakeDiff = core.std.MakeDiff MergeDiff = core.std.MergeDiff MaskedMerge = core.std.MaskedMerge ShufflePlanes = core.std.ShufflePlanes colorspace = src.format.color_family if colorspace != vs.GRAY: src_color = src src = ShufflePlanes(src, 0, vs.GRAY) ref = Oyster.Basic(src, None, radius) mask = Oyster.helpers.genblockmask(src) cleansed = Oyster.helpers.nlmeans(ref, 0, 8, 4, h, ref, False) ref = Oyster.helpers.freq_merge(cleansed, ref, 9, lowpass) src = Oyster.helpers.freq_merge(cleansed, src, 9, lowpass) clip = MaskedMerge(src, ref, mask, first_plane=True) if colorspace != vs.GRAY: clip = ShufflePlanes([clip, src_color], [0, 1, 2], vs.YUV) return clip Code:
clip = fast_deblock(clip) basically a low precision lite version of Oyster.Deblocking, lower quality but like a million times faster note that chroma will not be processed |
11th September 2016, 16:51 | #14 | Link |
Pig on the wing
Join Date: Mar 2002
Location: Finland
Posts: 5,733
|
Thanks, I'll give it a go as soon as my time allows. Is it possible to use the standard MVTools package in 16-bit depth? I think that 32-bit floating point stuff is also quite placebo for my sources and will only slow things down. I know that you like to be mathematically accurate, there's nothing wrong with that
__________________
And if the band you're in starts playing different tunes I'll see you on the dark side of the Moon... |
|
|