Log in

View Full Version : Vapoursynth script cannot find core.fft3dfilter


Logan9778
10th September 2017, 19:27
Hey guys. Just trying to get into Vapoursynth from AviSynth. I know a little bit of C++, but Python seems to be very different. For some reason, my script (which is basically Feisty2's script to change a video to single precision) is hanging up on havsfunc.QTGMC ( using havsfunc, because I never could find havsfuncTS, which he was using).

The error I'm getting is:

F:\Encoding\Vine>python vinetest.vpy
Traceback (most recent call last):
File "vinetest.vpy", line 6, in <module>
video = haf.QTGMC(video, TFF=True, Preset="Very Slow", Sharpness=1.2, SLMode=2, EZKeepGrain=1.2, NoiseProcess=2) # result is double framerate progressive, so re-interlate it later
File "F:\Encoding\Vine\havsfunc.py", line 1050, in QTGMC
dnWindow = core.fft3dfilter.FFT3DFilter(noiseWindow, sigma=Sigma, plane=4 if ChromaNoise else 0, bt=noiseTD, ncpu=FftThreads)
File "src\cython\vapoursynth.pyx", line 1379, in vapoursynth.Core.__getattr__ (src\cython\vapoursynth.c:29142)
AttributeError: No attribute with the name fft3dfilter exists. Did you mistype a plugin namespace?

I've downloaded the latest libfftw3 dlls and stuck them in both SYSWOW and in Vapoursynth - C:\Program Files (x86)\VapourSynth\plugins64. The script still fails to find the function. Even restarted my computer a few times. Still nothing.

I think I've tried everything I can think of now.

Does anyone have any suggestions on how I might correct this?

Thanks!

My Script:

from vapoursynth import core
import havsfunc as haf
import mvmulti
import vine
video = core.ffms2.Source(source='tyo1.mkv')
video = haf.QTGMC(video, TFF=True, Preset="Very Slow", Sharpness=1.2, SLMode=2, EZKeepGrain=1.2, NoiseProcess=2) # result is double framerate progressive, so re-interlate it later
video = core.fmtc.bitdepth(video,bits=32,fulls=False,fulld=True)
video = Vine.Dehalo(video, radius=[2, None])
deconv = Plum.Basic(video)
conv = Plum.Basic(video,mode="convolution")
sup = Plum.Super([video, None])
supdeconv = Plum.Super([video, deconv])
supconv = Plum.Super([conv, None])
video = Plum.Final([video, deconv, conv], [sup, supdeconv, supconv], strength=2.1, cutoff=16) # middlin
video = core.std.SeparateFields(video, tff=True)
#video = core.text.ClipInfo(video)
#print(video)
#vine.Super(video, pel=4)
video.set_output()

stax76
10th September 2017, 19:48
What path do you mean with SYSWOW and where did you download fft3dfilter for VS?

Logan9778
10th September 2017, 20:06
Hey Stax76, thanks for replying!

By SysWow, I mean C:\Windows\SysWOW64 in Windows 10, and I downloaded fft3dfilter from http://www.fftw.org/install/windows.html

I put all 3 .dll's in the folders.

Whoops, I see I forgot to include my code in the op. Putting it in.

lansing
10th September 2017, 20:26
There's a vapoursynth version of fft3dfilter
https://github.com/VFR-maniac/VapourSynth-FFT3DFilter

stax76
10th September 2017, 20:26
@Logan9778

it's like this:

32-bit: C:\Windows\SysWOW64
64-bit: C:\Windows\System32


@lansing

There is not release.

Logan9778
10th September 2017, 20:28
OH! Thanks guys! I thought SysWOW64 for 64 bit. Typical screwy Windows. I'll try the vapoursynth filter and putting it in System32 and get back.

Myrsloik
10th September 2017, 20:34
OH! Thanks guys! I thought SysWOW64 for 64 bit. Typical screwy Windows. I'll try the vapoursynth filter and putting it in System32 and get back.

You never need to put dlls in the system directory. This is simply something the filthy avisynth users are trying to make you do!

Logan9778
10th September 2017, 21:17
Hmm, it looks like I have compile the filter. Can this be done with Windows and Visual Studio, or do I need something like cygwin to do it? I've never tried to compile anything from Github on Windows.

And thanks Myrsloik, I always wondered about putting .dlls in the system directories.

stax76
10th September 2017, 21:21
It's C++ so not simple.

Logan9778
10th September 2017, 21:34
Well, looks like I've reached my limits with Windows then. I guess I can run Linux Mint in a Virtual Machine. Or would you guys suggest something else? I have "very" little experience with Linux. Are there any good articles or tutorials for Github? It's still kind of a mystery to me. I usually just download the .zip and hope that somehow it works. :p

Myrsloik
10th September 2017, 22:19
Well, looks like I've reached my limits with Windows then. I guess I can run Linux Mint in a Virtual Machine. Or would you guys suggest something else? I have "very" little experience with Linux. Are there any good articles or tutorials for Github? It's still kind of a mystery to me. I usually just download the .zip and hope that somehow it works. :p

I'll try to make a compile of it tomorrow if I have the time. Seems like the compiled binaries were lost.

Logan9778
10th September 2017, 22:50
Thanks Myrsloik!

Cary Knoop
8th January 2018, 23:09
Is there a high-bitdepth version of this filter available for Vapoursynth to use with qtgmc?

Myrsloik
10th January 2018, 15:35
Is there a high-bitdepth version of this filter available for Vapoursynth to use with qtgmc?

No, doesn't exist. I'm currently working on compiling binaries with all existing fixes and will post that later. If enough people are interested maybe I'll look into extending it.

VS_Fan
10th January 2018, 17:08
If enough people are interested maybe I'll look into extending it.I'm interested. :thanks: in advance

EDIT: https://github.com/pinterf/fft3dfilter