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. |
7th February 2024, 06:00 | #1 | Link |
Registered User
Join Date: Dec 2003
Posts: 253
|
rife install and setup questions
i'd like to try to set up rife for some interpolation tests but am unsure both of my hardware and of the setup process.
my system is old, very workable, but old. probably the device that's most marginal is my graphics card. it's an nvidia gtx760 with 2gb of memory and 1152 cuda cores. can i even run rife in avisynth on this machine? i'm ok with slow but if it won't work at all i guess i can stop now. if i can run it, i'm unsure of the setup process for use with avisynth. i haven't really found any info as basic as a walkthrough of what to download, where to put it, and such. some things i've seen seem to call for compiling, which will definitely be beyond me. frankly, i'm not even sure if rife is something standalone or an avisynth plugin or something in between. i checked my avisynth+ version and it seems to be current enough to work 3.7.3 r4003 i think. any guidance in getting into this is much appreciated. thanks, babag Last edited by BabaG; 7th February 2024 at 06:03. |
7th February 2024, 06:03 | #2 | Link |
Registered User
Join Date: Jan 2018
Posts: 2,156
|
If your GPU support Vulkan so you can
https://github.com/Asd-g/AviSynthPlus-RIFE |
7th February 2024, 06:09 | #3 | Link |
Registered User
Join Date: Dec 2003
Posts: 253
|
thanks for the quick response, kedautinh12.
i believe the card is vulkan capable. no idea what to do with the link, though. it seems to require compiling(?) which is going to be well out of my wheelhouse. edit: just downloaded rife 1.1.0 7z file from here: https://github.com/Asd-g/AviSynthPlus-RIFE/releases/ currently downloading models from same page. thanks again, babag Last edited by BabaG; 7th February 2024 at 06:17. |
7th February 2024, 06:17 | #4 | Link |
Registered User
Join Date: Sep 2007
Posts: 5,377
|
Check GPU-z , a checkbox will be checkmarked if your GPU supports vulkcan
Compiled release and models https://github.com/Asd-g/AviSynthPlu...ases/tag/1.1.0 |
7th February 2024, 16:44 | #5 | Link | |
Registered User
Join Date: May 2018
Posts: 184
|
Quote:
Code:
LWLibavVideoSource("C:\Users\Admin\Downloads\New folder\005.mkv", format="GBRP16") ConvertBits(32) RIFE(model=44, factor_num=1, factor_den=1, fps_num=60, fps_den=1) Prefetch(2) |
|
7th February 2024, 20:55 | #6 | Link |
Registered User
Join Date: Dec 2003
Posts: 253
|
thanks for the responses. plugging away with it.
@takla: i tried your code copied exactly. did change the file name and path obviously. got error that: Couldn't locate decompressor for format '[0][0][0][0]' (unknown) then it says something about virtualdub requiring a vfw compatible codec to decompress the video. source video is proreshq quicktime mov. thanks, babag |
7th February 2024, 22:32 | #8 | Link |
Registered User
Join Date: Dec 2003
Posts: 253
|
thanks, pdr. now get:
Avisynth open failure: RIFE: only RGB 32-bit planar format supported tried pasting ", format="GBRP16"" at the end of the lsmash line: LSMASHVideoSource("TESTCLIP.mov", format="GBRP16") but then get the same error as before about: Couldn't locate decompressor for format '[0][0][0][0]' (unknown) thanks again, babag |
7th February 2024, 22:37 | #9 | Link |
Registered User
Join Date: Sep 2007
Posts: 5,377
|
format="GBRP16" is unsuitable for Prores . Prores will usually be 10bit422 , unless it's XQ4444.
Code:
LSmashVideoSource("video.mov") #prores will usually be 10bit422 Z_ConvertFormat(pixel_type="RGBPS", colorspace_op="709:709:709:l=>rgb:709:709:f") #convert to RGB 32bit float for RIFE RIFE() Code:
LSmashVideoSource("video.mov") RIFEWrap() Last edited by poisondeathray; 7th February 2024 at 22:39. |
7th February 2024, 23:53 | #11 | Link |
Registered User
Join Date: Sep 2007
Posts: 5,377
|
That error is because of vdub2 not supporting float RGB . You can use avspmod to preview, or you can convert back to YUV422P10 or some other pixel type . RifeWRAP will do it automatically, or add
Code:
Z_ConvertFormat(pixel_type="YUV422P10", colorspace_op="rgb:709:709:f=>"709:709:709:l") |
8th February 2024, 01:29 | #12 | Link |
Registered User
Join Date: Dec 2003
Posts: 253
|
some progress. thanks to you both.
first, @pdr, i was getting an error with your line: Code:
Z_ConvertFormat(pixel_type="YUV422P10", colorspace_op="rgb:709:709:f=>"709:709:709:l") Code:
"rgb:709:709:f=>"709:709:709:l") Code:
"rgb:709:709:f=>709:709:709:l") i'm getting nothing but crashes once i load the file now. it loads and i can navigate vdub settings and such but if i touch the file, such as by trying to seek to a frame, i get a crash. same if i just go straight to render. hoping it's not the ancient graphics card as that's not fixable at the moment. this is the code i currently have that, as i say, does load the file: Code:
LoadPlugin("Path/To/RIFE.dll") LSMASHVideoSource("TESTCLIP_ORIG.mov") ConvertToPlanarRGB() ConvertBits(32) RIFE(model=44, factor_num=1, factor_den=1, fps_num=72, fps_den=1) # quadruples number of frames, sets framerate to 72fps from 18fps. #RIFE(model=44, factor_num=8, factor_den=2) # quadruples number of frames, sets framerate to 72fps from 18fps. #SelectEvery(3, 1) Z_ConvertFormat(pixel_type="YUV422P10", colorspace_op="rgb:709:709:f=>709:709:709:l") right now, if i uncomment the 'SelectEvery' function, i get a crash as soon as the file loads. never get the chance to try anything. edit: just tried adding this line in place of the 'SelectEvery' line: Code:
RIFE(model=44, factor_num=1, factor_den=3) thanks, babag Last edited by BabaG; 8th February 2024 at 01:46. |
8th February 2024, 01:47 | #13 | Link |
Registered User
Join Date: Sep 2007
Posts: 5,377
|
It might be that you're out of GPU memory because you're interpolating twice.
It's unnecessary for rife models 4.x , you can go directly to 24 /1 with less memory, and you should get very similar if not the same results. fps_num=24, fps_den=1 Or it might be vulkan not working > I don't see your card here . https://developer.nvidia.com/vulkan-driver If GPU-z has the empty vulkan box, the AVS version is not going to work for you There are CUDA versions of RIFE, but not for avisynth . You can try a GUI such as flowframes to quickly test if CUDA RIFE works for you , then decide if you're willing to learn vapoursynth or just use one of the RIFE GUI's that don't use vulkan |
8th February 2024, 02:14 | #14 | Link |
Registered User
Join Date: Sep 2007
Posts: 5,377
|
4x then SelectEvery(3, 1) instead of SelectEvery(3, 0) will just take the 2nd frame to start instead of the 1st for every group of 3 . Each frame will be slightly later in time compared to SelectEvery(3,0). And SelectEvery(3,2) would be shifted slightly later than SelectEvery(3, 1) . The time / distance spacing between frames will be the same, just offset 1/3 of a frame . Direct interpolation 18 to 24 gives the same results as 4x (18 to 72) then SelectEvery(3,0) - so direct takes the 1st frame. Surprisingly the GPU and CPU memory consumption was actually similar on my test - but the direct interpolation method was 20-25% faster. Not sure if one method is necessarily better - they look the same just offset.
In some ways, Direct, or 4x then SelectEvery(3,0) is better because it keeps the original starting frame timing. Pretend you were filming a race and the 1st frame has the race on exactly on the start line . If you interpolate using 4x then SelectEvery(3,1), the contestants would be beyond the start line to begin with Last edited by poisondeathray; 8th February 2024 at 02:20. |
8th February 2024, 02:25 | #15 | Link |
Registered User
Join Date: Dec 2003
Posts: 253
|
vulkaninfo seems to produce a huge amount of info so i seem to have it on the system in some fashion. i'd thought i saw someplace that my card was compatible but i don't know.
didn't know what gpu-z is. just installed it via wine and, funnily enough, it does check the box for vulkan. cuda is not checked though. go figure. i know i have 1152 cores. i looked at vapoursynth some time ago and found it confounding. didn't find a binary at that time and had to compile things. was really too much for me. seems better now so maybe that's a possibility. my python version is 3.10 and it wants 3.11 though. so that's the first step down a slippery slope for me. thanks for the tips. i'll look into rife gui's and see what i can find to try. babag Last edited by BabaG; 8th February 2024 at 02:27. |
8th February 2024, 03:33 | #17 | Link |
Registered User
Join Date: Dec 2003
Posts: 253
|
well, you're right about that! made a copy of the original test file downsized to 720x540 and used it for the rife test and it processed fine. best interpolation i've seen so far of all the various things i've tried too. now what?
Last edited by BabaG; 8th February 2024 at 03:40. |
8th February 2024, 03:50 | #18 | Link |
Registered User
Join Date: Sep 2007
Posts: 5,377
|
At least you know it works, but the lack of meaningful error messages does not help
Likely has to do with memory, I'm guessing GPU memory, but not necessarily There is a UHD mode for RIFE, not sure if it will help . - uhd<br> Enable UHD mode.<br> Default: False. There is a dedicated UHD model for RIFE, but the quality is generally lower on most content. It's model=2 - you can look at the readme for the models . I'm not sure of the impact on memory consumption IIRC was it AVS x86 ? It could be host memory related. These days there is no reason to use x86 . x64 is better and faster . Even a straight encode without any filters or memory bottleneck is faster with x64. And , if there was some obscure x86 only plugin, you could use it with mp_pipeline in a x64 avs host. If you get it working and are using it through RIFE directly - not a wrapper function like FramerateConverter or RIFEWrap - don't forget scenechange is disabled by default Borrow a friend's / family member computer ? |
|
|