View Full Version : HAvsFunc
Pages :
1
2
3
4
5
[
6]
7
8
9
10
11
12
13
jackoneill
9th July 2016, 15:35
-> am I missing something? (some missing/wrong filter?)
Cu Selur
If you want to open a script in vspipe, vsedit, etc. you must use "clip.set_output()" (no parameters) instead of "clip.output(...)".
Selur
9th July 2016, 15:44
@jackoneill: Okay, I always used "clip.set_output()" for vsedit and 'clip.output(sys.stdout, y4m=1)' for vspipe so far without a problem.
-> changed 'clip.output(sys.stdout, y4m=1)' to 'clip.set_output()' but the sample problem still occurs.
I could upload the source and my Vapoursynth folder to my google drive if that would help.
-> Uploaded my Vapoursynth-folder to my GoogleDrive (https://drive.google.com/folderview?id=0B_WxUS1XGCPASUZibG5XZkRfeTg&usp=sharing), Vapoursynth.7z, password: d00m9
HolyWu
9th July 2016, 16:52
You probably encountered a bug in Compensate, which was introduced in this commit (https://github.com/dubhater/vapoursynth-mvtools/commit/5ee24a4cc5bfc954d3c207bdd0d5ddd2570e0232) at new line 270.
Selur
9th July 2016, 17:44
@HolyWu: you are probably right, using https://github.com/dubhater/vapoursynth-mvtools/releases/download/v14/vapoursynth-mvtools-v14-win64.7z instead of https://github.com/dubhater/vapoursynth-mvtools/releases/download/v14/vapoursynth-mvtools-v15-win64.7z fixes the crash. :) Thanks!
Reel.Deel
10th July 2016, 14:58
@HolyWu
Is QTGMC with all defaults settings the same as the avs version?
HolyWu
11th July 2016, 04:51
@HolyWu
Is QTGMC with all defaults settings the same as the avs version?
Yes, I think it is.
hydra3333
1st August 2016, 11:01
using the portable Vapoursynth version I tried to get QTGMC running using:
...
but I only get a 'VSPipe.exe has stopped working' with no further error message when calling:
"g:\Hybrid\Vapoursynth\VSPipe.exe" "h:\Temp\test.vpy" - --y4m | "g:\Hybrid\ffplay.exe" -
(same happens when I use vsedit)
-> am I missing something? (some missing/wrong filter?)
I get a similar crash in portable Vapoursynth when using this generic script (all the latest plugins downloaded).
It works fine with Preset up to "Fast" however "Medium" and up just get a 'VSPipe.exe has stopped working' with no further error message.
The commandline is
"C:\SOFTWARE\Vapoursynth\VSPipe.exe" --info ".\z.vpy" -
import vapoursynth as vs
#import havsfunc as haf # http://forum.doom9.org/showthread.php?t=166582
import havsfuncTS as haf # this version uses vanilla TemporalSoften instead of TemporalSoften2
import mvsfunc as mvs # http://forum.doom9.org/showthread.php?t=172564
core = vs.get_core(accept_lowercase=True) # leave off threads=8 so it auto-detects threads
#
core.std.LoadPlugin(r'C:\SOFTWARE\Vapoursynth\vapoursynth32\plugins\dll-to-choose-from\AddGrain.dll') # the r'' indicates do not treat special characters and accept backslashes
core.std.LoadPlugin(r'C:\SOFTWARE\Vapoursynth\vapoursynth32\plugins\dll-to-choose-from\d2vsource.dll') # the r'' indicates do not treat special characters and accept backslashes
core.std.LoadPlugin(r'C:\SOFTWARE\Vapoursynth\vapoursynth32\plugins\dll-to-choose-from\Deblock.dll') # the r'' indicates do not treat special characters and accept backslashes
core.std.LoadPlugin(r'C:\SOFTWARE\Vapoursynth\vapoursynth32\plugins\dll-to-choose-from\DFTTest.dll') # the r'' indicates do not treat special characters and accept backslashes
##core.std.LoadPlugin(r'C:\SOFTWARE\Vapoursynth\vapoursynth32\plugins\dll-to-choose-from\ffms2.dll') # the r'' indicates do not treat special characters and accept backslashes
core.std.LoadPlugin(r'C:\SOFTWARE\Vapoursynth\vapoursynth32\plugins\dll-to-choose-from\fmtconv.dll') # the r'' indicates do not treat special characters and accept backslashes
core.std.LoadPlugin(r'C:\SOFTWARE\Vapoursynth\vapoursynth32\plugins\dll-to-choose-from\KNLMeansCL.dll') # the r'' indicates do not treat special characters and accept backslashes
core.std.LoadPlugin(r'C:\SOFTWARE\Vapoursynth\vapoursynth32\plugins\dll-to-choose-from\libawarpsharp2.dll') # the r'' indicates do not treat special characters and accept backslashes
core.std.LoadPlugin(r'C:\SOFTWARE\Vapoursynth\vapoursynth32\plugins\dll-to-choose-from\libmvtools.dll') # the r'' indicates do not treat special characters and accept backslashes
core.std.LoadPlugin(r'C:\SOFTWARE\Vapoursynth\vapoursynth32\plugins\dll-to-choose-from\libnnedi3.dll') # the r'' indicates do not treat special characters and accept backslashes
##core.std.LoadPlugin(r'C:\SOFTWARE\Vapoursynth\vapoursynth32\plugins\dll-to-choose-from\temporalsoften2.dll') # the r'' indicates do not treat special characters and accept backslashes
core.std.LoadPlugin(r'C:\SOFTWARE\Vapoursynth\vapoursynth32\plugins\dll-to-choose-from\scenechange.dll') # http://forum.doom9.org/showthread.php?t=166769
core.std.LoadPlugin(r'C:\SOFTWARE\Vapoursynth\vapoursynth32\plugins\dll-to-choose-from\vsdctfilter.dll') # http://vfrmaniac.fushizen.eu/works
core.std.LoadPlugin(r'C:\SOFTWARE\Vapoursynth\vapoursynth32\plugins\dll-to-choose-from\vsfft3dfilter.dll') # http://vfrmaniac.fushizen.eu/works
core.std.LoadPlugin(r'C:\SOFTWARE\Vapoursynth\vapoursynth32\plugins\dll-to-choose-from\Yadifmod.dll') # the r'' indicates do not treat special characters and accept backslashes
core.avs.LoadPlugin(r'C:\SOFTWARE\Vapoursynth\DGIndex\DGDecodeNV.dll')
video = core.avs.DGSource(r'T:\HDTV\WDTVlive\MP4-VS\1\TEST1.dgi')
# QTGMC IN HERE (SLMODE=1 is spatial, SLMODE=2 is temporal)
# result is double framerate progressive, so re-interlate it later
video = mvs.AssumeTFF(video)
video = haf.QTGMC(video, TFF=True, Preset="medium")
#video = haf.QTGMC(video, TFF=True, Preset="Very Slow", Sharpness=1.2, SLMode=2, EZKeepGrain=1.2, NoiseProcess=2)
#video = haf.QTGMC(video, TFF=True, Preset="Ultra Fast",Sharpness=1.2,SLMode=1)
#video = haf.QTGMC(video, TFF=True, Preset="Super Fast",Sharpness=1.2,SLMode=1)
#video = haf.QTGMC(video, TFF=True, Preset="Very Fast",Sharpness=1.2,SLMode=1)
#video = haf.QTGMC(video, TFF=True, Preset="Faster",Sharpness=1.2,SLMode=1)
#video = haf.QTGMC(video, TFF=True, Preset="Fast",Sharpness=1.2,SLMode=1)
#video = haf.QTGMC(video, TFF=True, Preset="Medium",Sharpness=1.2,SLMode=1)
#video = haf.QTGMC(video, TFF=True, Preset="Slow",Sharpness=1.2,SLMode=1)
#video = haf.QTGMC(video, TFF=True, Preset="Slower",Sharpness=1.2,SLMode=1)
#video = haf.QTGMC(video, TFF=True, Preset="Very Slow",Sharpness=1.2,SLMode=1)
#video = haf.QTGMC(video, TFF=True, Preset="Very Slow",Sharpness=1.2,SLMode=2,EZKeepGrain=1.2,NoiseProcess=2)
#video = haf.QTGMC(video, TFF=True, Preset="Very Slow",Sharpness=1.2,NoiseProcess=2,GrainRestore=0.4,NoiseRestore=0.2,Sigma=1.8,NoiseDeint="Generate",StabilizeNoise=true)
#video = haf.QTGMC(video, TFF=True, Preset="Very Slow",,SLMode=2,EZKeepGrain=1.2,NoiseProcess=2)
video = core.std.SeparateFields(video, tff=True)
video = core.std.SelectEvery(video, cycle=4, offsets=[0, 3]) # looks like avisynth
video = haf.Weave(video, tff=True)
video = mvs.AssumeTFF(video)
video.set_output()
(havsfuncTS.py just changes the call to TemporalSoften2 into generic VapourSynth TemporalSoften instead)
hydra3333
1st August 2016, 11:29
Interestingly, any call to QTGMC makes this fail with a 'VSPipe.exe has stopped working' (comment out the QTGMC line and it works).
"C:\SOFTWARE\Vapoursynth\VSPipe.exe" ".\z.vpy" - --y4m | "C:\SOFTWARE\ffmpeg\0-homebuilt-x64\x264-mp4.exe" - --stdin y4m --thread-input --frames 294 --profile high --level 4.1 --preset veryslow --interlaced --tff --no-cabac --crf 22 --sar 64:45 --colormatrix bt470bg -o ".\test-full-hard.h264"
y4m [error]: bad sequence header magic
x264 [error]: could not open input file `-'
Even though this works:
"C:\SOFTWARE\Vapoursynth\VSPipe.exe" --info ".\z.vpy" -
Boulder
1st August 2016, 12:47
Which version of MVTools do you have? The latest one (v16) fixes a crash issue from v15.
hydra3333
1st August 2016, 14:22
Which version of MVTools do you have? The latest one (v16) fixes a crash issue from v15.
Well bless my cotton socks, thank you, it works now.
I thought I had MVTools v16 (I had it downloaded) however after I re-downloaded and re-extracted, and tried again ... no crash.
Beaut !
lansing
2nd August 2016, 19:50
the adjust.py file should be included in the required plugin in the readme
Myrsloik
2nd August 2016, 19:55
the adjust.py file should be included in the required plugin in the readme
Or even better, just copy a cut down version of the function used. It's only like 10 lines of code after you realize that saturation adjustment is the only function ever used in it.
Myrsloik
2nd August 2016, 23:35
Would it be possible to adapt the vinverse and vinverse2 functions for higher bitdepths? I think all that's needed is to make amnt change its default value depending on input.
...for integer formats at least.
HolyWu
3rd August 2016, 04:38
Would it be possible to adapt the vinverse and vinverse2 functions for higher bitdepths? I think all that's needed is to make amnt change its default value depending on input.
...for integer formats at least.
The included two functions in the script already support 8-16 bits...?
Myrsloik
3rd August 2016, 10:27
The included two functions in the script already support 8-16 bits...?
The problem is the defaults. By default the maximum change will br smaller the higher the bitdepth. Not what most users would expect...
Selur
13th August 2016, 07:47
@HolyWu: Do all the functions in havsfunc support all color formats (http://www.vapoursynth.com/doc/pythonreference.html#format-constants), or are there restrictions?
If there are could you please note which?
I saw for that LUTDeRainbow and LUTDeCrawl 'Requires YUV input, frame-based only' so that would mean that:
YUV420P8
YUV422P8
YUV444P8
YUV410P8
YUV411P8
YUV440P8
YUV420P9
YUV422P9
YUV444P9
YUV420P10
YUV422P10
YUV444P10
YUV420P16
YUV422P16
YUV444P16
YUV444PH
YUV444PS are all supported right?
Do all other functions work with all color formats?
feisty2
13th August 2016, 10:37
PH = half precision, I don't think any plugin except zimg takes such format..
and half precision is simply useless imho
Myrsloik
13th August 2016, 13:09
@HolyWu: Do all the functions in havsfunc support all color formats (http://www.vapoursynth.com/doc/pythonreference.html#format-constants), or are there restrictions?
If there are could you please note which?
I saw for that LUTDeRainbow and LUTDeCrawl 'Requires YUV input, frame-based only' so that would mean that:
YUV420P8
YUV422P8
YUV444P8
YUV410P8
YUV411P8
YUV440P8
YUV420P9
YUV422P9
YUV444P9
YUV420P10
YUV422P10
YUV444P10
YUV420P16
YUV422P16
YUV444P16
YUV444PH
YUV444PS are all supported right?
Do all other functions work with all color formats?
Spoiler: that's not all possible formats
hydra3333
17th August 2016, 04:13
Just noting for posterity per http://forum.doom9.org/showthread.php?p=1776066#post1776066 and the posts around it a recommendation to change the definition of the TemporalSoften function within havsfunc.py to use the stock standard TemporalSoften rather than a custom TemporalSoften2.
def TemporalSoften(clip, radius=4, luma_threshold=4, chroma_threshold=8, scenechange=15, mode=2):
core = vs.get_core()
if not isinstance(clip, vs.VideoNode):
raise TypeError('TemporalSoften: This is not a clip')
if scenechange:
clip = set_scenechange(clip, scenechange)
# edit to change from TemporalSoften2 to vanilla VapourSynth TemoporalSoften
# http://forum.doom9.org/showthread.php?p=1776066#post1776066
#return core.focus2.TemporalSoften2(clip, radius, luma_threshold, chroma_threshold, scenechange)
return core.focus.TemporalSoften(clip, radius, luma_threshold, chroma_threshold, scenechange)
hydra3333
24th August 2016, 03:03
Also, a link to what seems to possibly updates arising from vapoursynth R33 ?
http://forum.doom9.org/showthread.php?p=1778397#post1778397
(uses of removegrain and fmtconv)
hydra3333
24th August 2016, 14:41
A link showing QTGMC breaks with v9 of nnedi3 (v8 still works) http://forum.doom9.org/showthread.php?p=1778446#post1778446
AzraelNewtype
24th August 2016, 22:38
It's updated on github already, since about three hours after you reported it. Also the removegrain and resize changes were committed days before you mentioned them. Just grab the current master, don't worry so much about a "release" for a single file repo.
hydra3333
25th August 2016, 11:39
OK, beaut. Thank you AzraelNewtype !!
Tested and worked fine (still had to edit it per the below, but that's OK).
def TemporalSoften(clip, radius=4, luma_threshold=4, chroma_threshold=8, scenechange=15, mode=2):
core = vs.get_core()
if not isinstance(clip, vs.VideoNode):
raise TypeError('TemporalSoften: This is not a clip')
if scenechange:
clip = set_scenechange(clip, scenechange)
# edit to change from TemporalSoften2 to vanilla VapourSynth TemoporalSoften
# http://forum.doom9.org/showthread.php?p=1776066#post1776066
#return core.focus2.TemporalSoften2(clip, radius, luma_threshold, chroma_threshold, scenechange)
return core.focus.TemporalSoften(clip, radius, luma_threshold, chroma_threshold, scenechange)
STJAM
26th August 2016, 00:00
Seems that HQDeringmod still needs updating from vapoursynth R33.
fmask = core.generic.Hysteresis(core.std.Median(sobelm, planes=[0]), sobelm, planes=[0])
File "src\cython\vapoursynth.pyx", line 1105, in vapoursynth.Core.__getattr__ (src\cython\vapoursynth.c:20799)
AttributeError: No attribute with the name generic exists. Did you mistype a plugin namespace?
jackoneill
26th August 2016, 08:55
Seems that HQDeringmod still needs updating from vapoursynth R33.
fmask = core.generic.Hysteresis(core.std.Median(sobelm, planes=[0]), sobelm, planes=[0])
File "src\cython\vapoursynth.pyx", line 1105, in vapoursynth.Core.__getattr__ (src\cython\vapoursynth.c:20799)
AttributeError: No attribute with the name generic exists. Did you mistype a plugin namespace?
You can extract genericfilters.dll from the R32 portable archive.
STJAM
26th August 2016, 18:52
Thank you jackoneill it works wonderfully.
HolyWu
10th September 2016, 17:28
Update r24.
Replace some RemoveGrain modes with std.Median or std.Convolution.
santiag: Use the newer SangNom port.
HQDeringmod: Set chroma planes to gray when outputting mask clip.
QTGMC: Use the planes parameter instead of the deprecated ones for nnedi3.
srestore: Replace MinMax property with separate Min and Max for std.PlaneStats.
Overlay: Fix variable referenced before assignment error.
Boulder
10th September 2016, 17:29
Thanks!
Sm3n
24th September 2016, 08:08
Hmm, QTGMC is supposed to be a native part of the hav tools, right?! Cuz I'm getting some error about the name scd not existing:
Script evaluation failed:
Python exception: No attribute with the name scd exists. Did you mistype a plugin namespace?
Traceback (most recent call last):
File "src\cython\vapoursynth.pyx", line 1489, in vapoursynth.vpy_evaluateScript (src\cython\vapoursynth.c:26885)
File "f:\jobs\neela.vpy", line 10, in <module>
vid = haf.QTGMC (vid, InputType=0, Preset="Very Slow", TR2=3, TFF=True)
File "C:\Program Files\Python35\lib\site-packages\havsfunc.py", line 978, in QTGMC
if TR0 > 0: ts1 = TemporalSoften(bobbed, 1, 255 << shift, CMts << shift, 28 << shift, 2) # 0.00 0.33 0.33 0.33 0.00
File "C:\Program Files\Python35\lib\site-packages\havsfunc.py", line 4287, in TemporalSoften
clip = set_scenechange(clip, scenechange)
File "C:\Program Files\Python35\lib\site-packages\havsfunc.py", line 4319, in set_scenechange
sc = core.scd.Detect(sc, thresh)
File "src\cython\vapoursynth.pyx", line 1103, in vapoursynth.Core.__getattr__ (src\cython\vapoursynth.c:20711)
AttributeError: No attribute with the name scd exists. Did you mistype a plugin namespace?
Looks like you're missing the scene detection plugin.
Hello guys,
I got the same issue and I don't get what "scene detection plugin" is.
I'm running python and vapoursynth both 64 on windows machine also 64.
Failed to evaluate the script:
Python exception: No attribute with the name scd exists. Did you mistype a plugin namespace?
Traceback (most recent call last):
File "src\cython\vapoursynth.pyx", line 1491, in vapoursynth.vpy_evaluateScript (src\cython\vapoursynth.c:26905)
File "H:\Untitled.vpy", line 5, in <module>
video = haf.QTGMC(video, Preset='Medium', TFF=True, FPSDivisor=2)
File "C:\Users\XXX\AppData\Local\Programs\Python\Python35\lib\site-packages\havsfunc.py", line 958, in QTGMC
if TR0 > 0: ts1 = TemporalSoften(bobbed, 1, 255 << shift, CMts << shift, 28 << shift, 2) # 0.00 0.33 0.33 0.33 0.00
File "C:\Users\XXX\AppData\Local\Programs\Python\Python35\lib\site-packages\havsfunc.py", line 4313, in TemporalSoften
clip = set_scenechange(clip, scenechange)
File "C:\Users\XXX\AppData\Local\Programs\Python\Python35\lib\site-packages\havsfunc.py", line 4345, in set_scenechange
sc = core.scd.Detect(sc, thresh)
File "src\cython\vapoursynth.pyx", line 1105, in vapoursynth.Core.__getattr__ (src\cython\vapoursynth.c:20799)
AttributeError: No attribute with the name scd exists. Did you mistype a plugin namespace?
Is that something to do with "src\cython\vapoursynth.pyx" or "C:\Users\XXX\AppData\Local\Programs\Python\Python35\lib\site-packages\havsfunc.py"?
cheers
Mystery Keeper
24th September 2016, 09:20
Python exception: No attribute with the name scd exists. Did you mistype a plugin namespace?"scd" is namespace registered by scenchange (http://forum.doom9.org/showthread.php?t=166769) plugin.
Sm3n
24th September 2016, 12:11
"scd" is namespace registered by scenchange (http://forum.doom9.org/showthread.php?t=166769) plugin.
Thank you so much.
Can't wait for testing QTGMC on vapoursynth.
Thanks for sharing
TalasNetrag
7th November 2016, 00:31
Where can I get the adjust.py module?
sl1pkn07
7th November 2016, 00:33
https://github.com/dubhater/vapoursynth-adjust
Lynx_TWO
12th November 2016, 08:31
The Stab function (vital for BluRay transfers with old film) doesn't seem to work, at least not when using StaxRip. I get the error "Python exception: name 'havsfunc' is not defined"
This is odd, because SMDegrain works fine...
In StaxRip I'm using
clip = havsfunc.Stab(clip, range=1, dxmax=4, dymax=4, mirror=0)
SMDegrain works with:
clip = havsfunc.SMDegrain(clip, tr = 3, pel = 2, subpixel = 2, Str = 3.0, blksize = 8, overlap = 2, thSAD = 400, prefilter = 4, contrasharp = True, truemotion = True, RefineMotion = True)
Any ideas? :(
poisondeathray
14th November 2016, 05:01
The Stab function (vital for BluRay transfers with old film) doesn't seem to work, at least not when using StaxRip. I get the error "Python exception: name 'havsfunc' is not defined"
This is odd, because SMDegrain works fine...
In StaxRip I'm using
clip = havsfunc.Stab(clip, range=1, dxmax=4, dymax=4, mirror=0)
SMDegrain works with:
clip = havsfunc.SMDegrain(clip, tr = 3, pel = 2, subpixel = 2, Str = 3.0, blksize = 8, overlap = 2, thSAD = 400, prefilter = 4, contrasharp = True, truemotion = True, RefineMotion = True)
Any ideas? :(
just a guess, but if you used something like
import havsfunc as haf
Then you'd have to use "haf" instead of havsfunc.
ie.
clip = haf.SMDegrain....
But not sure why stab would work (I haven't used vapoursynth recently, I didn't even know stab was included in havsfunc, but stab seems to be working for me here, as smdegrain with the current havsfunc.py)
poisondeathray
14th November 2016, 05:02
1) I just updated vapoursynth and a bunch of plugins from an older vapoursynth version , and noticed on some tests that the vapoursynth QTGMC version seems to be faster than the MT avisynth version now . Maybe a year or two ago, it was consistently 10-25% slower (in some cases ~40% slower), now it's consistently 5-10% faster... measured in pipe speed and final encoding with x264. Sorry if this is common knowledge, but has something changed in the vpy world that can explain this ? Maybe some prereq's got optimized or something ? Or maybe some testing errors on my end ? Can anyone else run some quick tests ?
2) What are the differences between the avs version and vpy version of QTGMC ? I thought it was asked and answered before but I can't find it...
This post mentions the defaults are the same, but any other differences ?
http://forum.doom9.org/showpost.php?p=1773640&postcount=256
HolyWu
15th November 2016, 04:09
1) I just updated vapoursynth and a bunch of plugins from an older vapoursynth version , and noticed on some tests that the vapoursynth QTGMC version seems to be faster than the MT avisynth version now . Maybe a year or two ago, it was consistently 10-25% slower (in some cases ~40% slower), now it's consistently 5-10% faster... measured in pipe speed and final encoding with x264. Sorry if this is common knowledge, but has something changed in the vpy world that can explain this ? Maybe some prereq's got optimized or something ? Or maybe some testing errors on my end ? Can anyone else run some quick tests ?
The slowness you encountered was probably resulted from the lack of optimization in some core functions. That's why I provided an ICC build in http://forum.doom9.org/showthread.php?t=173406. In VS r33 the relevant functions has been optimized. I can't remember if mvtools or nnedi3 have their own optimization in recent releases as well so they maybe accumulate too.
2) What are the differences between the avs version and vpy version of QTGMC ? I thought it was asked and answered before but I can't find it...
This post mentions the defaults are the same, but any other differences ?
http://forum.doom9.org/showpost.php?p=1773640&postcount=256
I tried to keep identical settings in all their defaults when I ported every script function. The obvious differences are already mentioned in the first post.
poisondeathray
15th November 2016, 04:21
Thank you for the reply HolyWu and porting the scripts
JackCY
30th November 2016, 20:52
Can you update the OP or add GitHub readme with names and links to all required dependencies/3rd party scripts/DLLs?
xekon
4th December 2016, 00:40
I got it to install on Ubuntu 16.04:
cd ~/.installs/VapourSynthPlugins/
git clone https://github.com/HomeOfVapourSynthEvolution/havsfunc
git clone https://github.com/HomeOfVapourSynthEvolution/mvsfunc
git clone https://github.com/dubhater/vapoursynth-adjust
sudo cp ~/.installs/VapourSynthPlugins/havsfunc/havsfunc.py /usr/local/lib/python3.5/dist-packages
sudo cp ~/.installs/VapourSynthPlugins/mvsfunc/mvsfunc.py /usr/local/lib/python3.5/dist-packages
sudo cp ~/.installs/VapourSynthPlugins/vapoursynth-adjust/adjust.py /usr/local/lib/python3.5/dist-packages
I had trouble finding scenechange, but the below plugin pack worked: https://libraries.io/github/darealshinji/vapoursynth-plugins
sudo apt-get install git nasm yasm libtool pkg-config libfftw3-dev libpng-dev libsndfile1-dev libxvidcore-dev zlib1g-dev libopencv-dev ocl-icd-libopencl1 opencl-headers
cd $HOME/.installs/VapourSynthPlugins/
git clone https://github.com/darealshinji/vapoursynth-plugins.git
cd vapoursynth-plugins
./autogen.sh
./configure
make
sudo make install
xekon
5th December 2016, 01:07
An edit for havsfunc.py line 567:
fmask = core.misc.Hysteresis(core.std.Median(sobelm, planes=[0]), sobelm, planes=[0])
to
fmask = core.generic.Hysteresis(core.std.Median(sobelm, planes=[0]), sobelm, planes=[0])
Are_
5th December 2016, 09:25
genericfilters is deprecated.
xekon
6th December 2016, 02:02
oh, when i was getting the HQDeringmod function to work, I searched and read that genericfilters was now included in the core, the so i made that change and the function worked.
did things change and now genericfilters is going to be removed from core? or maybe they replaced it with something different?
Jindadil007
7th January 2017, 08:43
While importing havsfunc I get this error...
File "C:/DVD/Sample.vpy", line 3, in
import havsfunc
File "C:\Program Files\Python35\lib\site-packages\havsfunc.py", line 2, in
import mvsfunc as mvf
ImportError: No module named 'mvsfunc'
Can anyone guide me how to resolve this...
ChaosKing
7th January 2017, 10:32
You need to import mvsfunc
https://github.com/HomeOfVapourSynthEvolution/mvsfunc/blob/master/mvsfunc.py
Jindadil007
8th January 2017, 04:07
You need to import mvsfunc
https://github.com/HomeOfVapourSynthEvolution/mvsfunc/blob/master/mvsfunc.py
ManY Thanks...C.King !!!:)
Jindadil007
8th January 2017, 04:48
Thanks
Jindadil007
8th January 2017, 15:16
Hi... I have vapoursynth FFT3dFilter.dll and I have placed it in Vapoursynth plugins folder. I am getting this error when applying FFT3DFilter :
2017-01-08 19:43:25.978
Failed to evaluate the script:
Python exception: No attribute with the name fft3dfilter exists. Did you mistype a plugin namespace?
Traceback (most recent call last):
File "src\cython\vapoursynth.pyx", line 1491, in vapoursynth.vpy_evaluateScript (src\cython\vapoursynth.c:26905)
File "C:/DVD/NK.vpy", line 8, in
video = haf.FastLineDarkenMOD(video)
File "src\cython\vapoursynth.pyx", line 1105, in vapoursynth.Core.__getattr__ (src\cython\vapoursynth.c:20799)
AttributeError: No attribute with the name fft3dfilter exists. Did you mistype a plugin namespace?
Here is my script :
import vapoursynth as vs
import havsfunc as haf
core = vs.get_core()
video = core.ffms2.Source(r'C:\DVD\NK.avi')
video = core.vivtc.VFM(video, order=1, mode=5, cthresh=10)
video = core.vivtc.VDecimate(video, cycle=5)
video = core.std.CropRel(video, 4,4,2,2)
video = core.fft3dfilter.FFT3DFilter(video, sigma=1.5, bt=5, bw=32, bh=32, ow=16, oh=16, sharpen=0.4)
video = haf.FastLineDarkenMOD(video)
video = core.resize.Spline36(video, width=640,height=480, format=vs.YUV420P8, matrix_in_s="709")
video.set_output()
What I am doing wrong ? Thanks
Are_
8th January 2017, 15:25
The script looks good, maybe you are trying to load a 32bit dll and using the 64bit vspipe or the other way around.
Where did the dll come from? Where exactly did you put it?
ChaosKing
8th January 2017, 15:32
FFT3DFilter requires libfftw3f-3.dll to be in the search path. http://www.fftw.org/install/windows.html
Put it in system32 folder. I think the same directory as the main plugin should also work with vapoursynth.
vBulletin® v3.8.11, Copyright ©2000-2025, vBulletin Solutions Inc.