Selur's Little Message Board

Full Version: RIFE not loading
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Pages: 1 2
I'm trying to use RIFE for frame interpolation and I can't get it to load. The error in vsedit is:

Code:
vapoursynth.Error: Failed to load C:/Program Files/Hybrid/64bit/vsfilters/FrameFilter/RIFE/librife.dll. GetLastError() returned 1114.


Am I missing some library that I need to install?

Windows 10 64-bit with Nvidia K6000. Latest Hybrid installer.

Thanks!

here's the generated script, if useful:

Code:
# Imports
import vapoursynth as vs
import os
import ctypes
# Loading Support Files
Dllref = ctypes.windll.LoadLibrary("C:/Program Files/Hybrid/64bit/vsfilters/Support/libfftw3f-3.dll")
import sys
# getting Vapoursynth core
core = vs.core
# Import scripts folder
scriptPath = 'C:/Program Files/Hybrid/64bit/vsscripts'
sys.path.insert(0, os.path.abspath(scriptPath))
# Loading Plugins
core.std.LoadPlugin(path="C:/Program Files/Hybrid/64bit/vsfilters/FrameFilter/RIFE/librife.dll")
core.std.LoadPlugin(path="C:/Program Files/Hybrid/64bit/vsfilters/GrainFilter/RemoveGrain/RemoveGrainVS.dll")
core.std.LoadPlugin(path="C:/Program Files/Hybrid/64bit/vsfilters/GrainFilter/AddGrain/AddGrain.dll")
core.std.LoadPlugin(path="C:/Program Files/Hybrid/64bit/vsfilters/DenoiseFilter/FFT3DFilter/fft3dfilter.dll")
core.std.LoadPlugin(path="C:/Program Files/Hybrid/64bit/vsfilters/DenoiseFilter/DFTTest/DFTTest.dll")
core.std.LoadPlugin(path="C:/Program Files/Hybrid/64bit/vsfilters/Support/EEDI3m.dll")
core.std.LoadPlugin(path="C:/Program Files/Hybrid/64bit/vsfilters/ResizeFilter/nnedi3/vsznedi3.dll")
core.std.LoadPlugin(path="C:/Program Files/Hybrid/64bit/vsfilters/Support/libmvtools.dll")
core.std.LoadPlugin(path="C:/Program Files/Hybrid/64bit/vsfilters/Support/scenechange.dll")
core.std.LoadPlugin(path="C:/Program Files/Hybrid/64bit/vsfilters/Support/fmtconv.dll")
core.std.LoadPlugin(path="C:/Program Files/Hybrid/64bit/vsfilters/MiscFilter/MiscFilters/MiscFilters.dll")
core.std.LoadPlugin(path="C:/Program Files/Hybrid/64bit/vsfilters/DeinterlaceFilter/Bwdif/Bwdif.dll")
core.std.LoadPlugin(path="C:/Program Files/Hybrid/64bit/vsfilters/SourceFilter/LSmashSource/vslsmashsource.dll")
# Import scripts
import havsfunc
# source: 'C:\Volumes\THE_MAN_I_LEFT_BEHIND\2_GRADING\MEDIAS\MEDIA_MANAGER\ARCHIVES\Reel_12.15_Afghanistan_TOL_AppleHDV_1080p_HDV02.mov'
# current color space: YUV422P10, bit depth: 10, resolution: 1920x1080, fps: 29.97, color matrix: 709, yuv luminance scale: limited, scanorder: top field first
# Loading C:\Volumes\THE_MAN_I_LEFT_BEHIND\2_GRADING\MEDIAS\MEDIA_MANAGER\ARCHIVES\Reel_12.15_Afghanistan_TOL_AppleHDV_1080p_HDV02.mov using LWLibavSource
clip = core.lsmas.LWLibavSource(source="C:/Volumes/THE_MAN_I_LEFT_BEHIND/2_GRADING/MEDIAS/MEDIA_MANAGER/ARCHIVES/Reel_12.15_Afghanistan_TOL_AppleHDV_1080p_HDV02.mov", format="YUV422P10", stream_index=0, cache=0, fpsnum=30000, fpsden=1001, prefer_hw=0)
# Setting detected color matrix (709).
clip = core.std.SetFrameProps(clip, _Matrix=1)
# Setting color transfer info (709), when it is not set
clip = clip if not core.text.FrameProps(clip,'_Transfer') else core.std.SetFrameProps(clip, _Transfer=1)
# Setting color primaries info (), when it is not set
clip = clip if not core.text.FrameProps(clip,'_Primaries') else core.std.SetFrameProps(clip, _Primaries=1)
# Setting color range to TV (limited) range.
clip = core.std.SetFrameProp(clip=clip, prop="_ColorRange", intval=1)
# making sure frame rate is set to 29.97
clip = core.std.AssumeFPS(clip=clip, fpsnum=30000, fpsden=1001)
clip = core.std.SetFrameProp(clip=clip, prop="_FieldBased", intval=2) # tff
# Deinterlacing using QTGMC
clip = havsfunc.QTGMC(Input=clip, Preset="Fast", TFF=True) # new fps: 59.94
# Making sure content is preceived as frame based
clip = core.std.SetFrameProp(clip=clip, prop="_FieldBased", intval=0) # progressive
# adjusting color space from YUV422P10 to RGBS for vsRIFE
clip = core.resize.Bicubic(clip=clip, format=vs.RGBS, matrix_in_s="709", range_s="limited")
# adjusting frame count&rate with RIFE, target fps: 119.88fps
clip = core.rife.RIFE(clip, model=0) # new fps: 119.88
# adjusting output color from: RGBS to YUV422P10 for ProResModel
clip = core.resize.Bicubic(clip=clip, format=vs.YUV422P10, matrix_s="709", range_s="limited", dither_type="error_diffusion")
# set output frame rate to 119.88fps (progressive)
clip = core.std.AssumeFPS(clip=clip, fpsnum=120000, fpsden=1001)
# Output
clip.set_output()
Failed to load, usually happens if a dependency is missing, the file is corrupt for some reason, or an anti virus or similar tool is interfering.

If you use https://github.com/lucasg/Dependencies and load the 'librife.dll' does it show any issues?
Do you have the latest NVIDIA drivers installed?

To be sure we use the same files, I send you a link to my current dev version via PM, try whether that one works.

Cu Selur
Dependencies doesn't show anything missing.

I tried on another PC with a clean Win 10 64bit, latest Nvidia driver that I could install (474.30 - it's an older GTX 680), same error. 

I also tried your dev version. It's the same. I've attached a debug output log, in case it helps.
Probably the same issue. Vapoursynth Preview should show an error message.

Quote:If you use https://github.com/lucasg/Dependencies and load the 'librife.dll' does it show any issues?
?

Cu Selur
The Dependencies program does not show anything missing.

Actually, on my clean install of Win 10, it did show that I was missing MSVCP140.DLL and a few other related .dlls. I installed "Microsoft Visual C++ Redistributable Packages for Visual Studio 2015" and after that everything's fine.

Thanks
Really strange, if something like the cuda calculation level wasn't high enough, I would have expected something else.
The 680 is probably too old, but the K6000 should be (slow, but) fine to use.
This sounds like Vapoursynth itself has an issue loading the dll.
Do you have Vapoursynth installed on your system? (Hybrid comes with a portable version.)
If you have a virus scanner aside from Windows Defender try disabling it or set some exception for the whole Hybrid folder.

Cu Selur
I do have Vapoursynth R63 installed.

I just read that the K6000 is a Kepler card, just like the 680. Maybe it's too old?

I'm going to try HolyWu's vs-rife and see if that's working.

Thanks
Try deinstalling Vapoursynth.
A local Vapoursynth installation might mess with Hybrids portable Vapoursynth, since Vapoursynth does not have an option to stop autoloading. (requested it a few times from the Vapoursynth devs, which confirmed that it's possible, but not supported atm.)

Since RIFE did work with my old 1070ti before I switched to my current card, I would suspect that K6000 should work too, but HolyWu probably answer this for sure.

Cu Selur
Hello,

Uinstalling Vapoursynth did not fix the issue. Which RIFE plugin is used in Hybrid? I thought it was HolyWu's looking on the github of the project I'm no longer sure.

Btw, this RIFE plugins works fine on my systems (it's Vulkan-NCNN based so I guess it's more compatible): https://github.com/HomeOfVapourSynthEvol...cnn-Vulkan
Hybrid atm. uses:
https://github.com/styler00dollar/Vapour...cnn-Vulkan
since the HolyWu hasn't updated his version for quite some time.

Cu Selur
Pages: 1 2