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. |
![]() |
#1 | Link |
Registered User
Join Date: Jul 2003
Location: India
Posts: 890
|
vcmove a plugin for vapoursynth
vcmove is a plugin developed for vapoursynth, by modifying and improving plugins originally developed for avisynth. This plugin moves pixels as per requirement. Useful for correcting certain distortions or tilt or for transitions. The functions included in this are:
Code:
1.Rotate 2.DeBarrel 3.Quad2Rect 4.Rect2Quad Works for windows. Comments, suggestions are welcome. |
![]() |
![]() |
![]() |
#3 | Link |
Registered User
Join Date: Jul 2003
Location: India
Posts: 890
|
Certainly. I am waiting for a few error reports or comments or suggestions. Then I will tidy up and make the code available. If in the present condition itself I should do that, in a few days it will be done.
|
![]() |
![]() |
![]() |
#4 | Link |
Professional Code Monkey
Join Date: Jun 2003
Location: Kinnarps Chair
Posts: 2,604
|
You'll make 64bit compiles for windows too, right?
__________________
VapourSynth - proving that scripting languages and video processing isn't dead yet |
![]() |
![]() |
![]() |
#6 | Link |
Registered User
Join Date: Aug 2008
Location: Krasnoyarsk, Russian Federation
Posts: 90
|
Compiling under Linux
I am struggling to compile vcmove under Linux (x64), but as there's no Makefile I don't know where to start.
P.S.: by the way, vcmohan did not provide a link to the vcmove source code on the site, so I needed to figure it out by analogy with the other links: http://www.avisynth.nl/users/vcmohan.../vcmove_src.7z |
![]() |
![]() |
![]() |
#10 | Link |
Registered User
Join Date: Aug 2008
Location: Krasnoyarsk, Russian Federation
Posts: 90
|
Banding
DeBarrel produces weird banding artifacts, which are most noticeable on the sky. For a test, I have debarrelled a simple white clip (see the attachment). I had implemented Lanczos interpolation many years ago when I was into programming, and remember that the code included some "equalization" technique, without which the image contained somewhat noticable "pits". I wonder may it be the case with vcmove? No equalization I mean. Please, can you fix this, as barrel correction may be the main reason I has gotten into the VapourSynth stuff.
|
![]() |
![]() |
![]() |
#11 | Link |
Registered User
Join Date: Aug 2008
Location: Krasnoyarsk, Russian Federation
Posts: 90
|
I've remembered! When I did my coding, I didn't implement Lanczos from scratch, but instead adopted and modified the image resize function from ImageMagick. Can this be of any help?
Last edited by Efenstor; 6th April 2016 at 20:45. |
![]() |
![]() |
![]() |
#12 | Link |
Registered User
Join Date: Jul 2003
Location: India
Posts: 890
|
Thanks for pointing out. While the formulation for avisynth was integer maths, for vapoursynth I had to change it to floating point. I have now included some checks in the Lanczos interpolation and uploaded. I still see even though much reduced a greenish hue when I use white blank clip. Please check it. I will try with bicubic or use integers float hybrid to make it better. May take a few days.
|
![]() |
![]() |
![]() |
#13 | Link | |
Registered User
Join Date: Aug 2008
Location: Krasnoyarsk, Russian Federation
Posts: 90
|
Quote:
Here is my test script, in case you need it: Code:
import vapoursynth as vs core = vs.get_core() clip = core.std.BlankClip(width=1920, height=1080, length=100, color=(255,255,255)) clip = core.vcmove.DeBarrel(clip=clip, a=0.005, b=0.009, c=0.085) clip = core.resize.Bilinear(clip=clip, format=vs.YUV420P8, matrix_s="709") clip.set_output() Last edited by Efenstor; 8th April 2016 at 15:25. |
|
![]() |
![]() |
![]() |
#19 | Link |
Pajas Mentales...
Join Date: Dec 2004
Location: Spanishtán
Posts: 497
|
Hi.
the sources on http://www.avisynth.nl/users/vcmohan.../vcmove_src.7z is changes/updates recently? the SHA256 of the older file downloaded in 09-04-2016 and the new file downloaded today is different Code:
┌─┤[$]|[sl1pkn07]|[sL1pKn07]|[~/aplicaciones/vapoursynth-plugin-vcmove]| └───╼ ls *7z* -rw-r--r-- 1 sl1pkn07 users 23017 abr 21 15:31 vcmove-src.7z -rw-r--r-- 1 sl1pkn07 users 22858 abr 9 2016 vcmove-src.7z. ┌─┤[$]|[sl1pkn07]|[sL1pKn07]|[~/aplicaciones/vapoursynth-plugin-vcmove]| └───╼ sha256sums *7z* bash: sha256sums: no se encontró la orden ┌─┤[$]|[sl1pkn07]|[sL1pKn07]|[~/aplicaciones/vapoursynth-plugin-vcmove]| └───╼ sha256sum *7z* 18d99e51d0d2ebf12274a23c92977ee11e1427dded1875390709e8203c7af0ec vcmove-src.7z 63c425d67a839c8993a6e52a778b6bfe42c38cb4ad472fbab3e8661a90d3b8ef vcmove-src.7z. greetings |
![]() |
![]() |
![]() |
#20 | Link |
Registered User
Join Date: Jun 2012
Location: Ibiza, Spain
Posts: 322
|
Somewhat:
Code:
$ for i in $(ls -1); do echo $i && diff $i ../vcmove_src/$i ; done Clamp.h 11c11,12 < return val < min ? min : val > max - 0.5f ? max : val; --- > val += 0.5f; > return val < min ? min : val > max ? max : val; CubicIntCoeff.cpp CubicIntCoeff.h LaQuantileInterpolate.cpp LanczosCoefficients.cpp LinearIntCoeff.cpp ReformHelper.cpp UnitSq2Quad_matrix.cpp VSHelper.h VapourSynth.h moveDeBarrel.cpp moveQuad2Rect.cpp moveRect2Quad.cpp moveRotate.cpp vcmove.cpp |
![]() |
![]() |
![]() |
Thread Tools | Search this Thread |
Display Modes | |
|
|