Reading through the thread it looks like the current consensus for worthwhile models from increasing quality/decreasing performance are 4.4v2, 4.6v2, 4.9v2/4.12_litev2/4.13_litev2, and placebo tier would be something like 4.13_ensemblev2 I guess? 4.12/13 are apparently better for animation, but otherwise slower than 4.9.

2

(2 replies, posted in Using SVP)

New optical flow estimation that can be utilized with RIFE. Someone mentioned using it with trt through vsmlrt piping, so I thought it might be worth looking into.
https://github.com/AmusementClub/vs-mlrt/issues/13

Current version
https://github.com/98mxr/GMFSS_union

Pytorch model
https://github.com/haofeixu/gmflow

Original paper
https://arxiv.org/abs/2111.13680

Chainik wrote:

> Trt inference model has to be built or cached for every new resolution

Not true, unless you enable the "perf. boost" profile option.

Problem is if you disable it then the generalized models which are too large for my vram size are generated instead.

Chainik wrote:

> Python exception: [WinError 740] The requested operation requires elevation
> Issue resolved by running mpc-hc in admin oddly.

I can only think your user doesn't have write permissions for the temp dir for some reason

> Trt inference model has to be built or cached for every new resolution

Not true, unless you enable the "perf. boost" profile option.

Oh ok. The tooltip says 5%, but is this separate from the parameters mentioned in vsmlrt?

22:33:32.546 [i]: AVSF: found new player instance
22:33:32.572 [i]: AVSF: filters in use: LAV Splitter Source -> LAV Video Decoder -> * -> madVR
22:33:32.573 [i]: AVSF: new video in mpc-hc64.exe (64-bit) [MPC-HC 2.0.0.0] on screen 0
22:33:32.614 [i]: Media: video 1920x1440 [PAR 1.000] at 23.976 fps
22:33:32.614 [i]: Media: codec type is AV1, YUV/4:2:0/10 bits
22:33:32.615 [i]: Playback: starting up...
22:33:32.619 [i]: Playback [73c0e3c8]: Frame server (64-bit) C:\Users\Sahil\AppData\Local\Programs\VapourSynth\core\vapoursynth.dll
22:33:32.620 [i]: Playback [73c0e3c8]: resulting video frame 1920x1440
22:33:32.621 [i]: Playback [73c0e3c8]: 4 acceptible profiles, best is 'RIFE AI engine' [5000]
22:33:32.623 [i]: Playback [73c0e3c8]: enabled while video is playing
22:33:32.626 [i]: Playback [73c0e3c8]: playing at 59.94 [23.976 *5/2] /10 bit
22:33:32.939 [E]: Playback [73c0e3c8]: VS - Python exception: [WinError 740] The requested operation requires elevation
22:33:32.939 [E]: Playback [73c0e3c8]: VS - Traceback (most recent call last):
22:33:32.939 [E]: Playback [73c0e3c8]: VS - File \src\cython\vapoursynth.pyx\, line 2866, in vapoursynth._vpy_evaluate
22:33:32.939 [E]: Playback [73c0e3c8]: VS - File \src\cython\vapoursynth.pyx\, line 2867, in vapoursynth._vpy_evaluate
22:33:32.939 [E]: Playback [73c0e3c8]: VS - File \C:\Users\Sahil\AppData\Roaming\SVP4\scripts\73c0e3c8.py\, line 77, in <module>
22:33:32.940 [E]: Playback [73c0e3c8]: VS - smooth = interpolate(clip)
22:33:32.940 [E]: Playback [73c0e3c8]: VS - File \C:\Users\Sahil\AppData\Roaming\SVP4\scripts\73c0e3c8.py\, line 56, in interpolate
22:33:32.940 [E]: Playback [73c0e3c8]: VS - smooth = RIFE(input_m,multi=rife_num,model=rife_mnum,backend=trt_backend)
22:33:32.940 [E]: Playback [73c0e3c8]: VS - File \C:\Program Files (x86)\SVP 4\rife\vsmlrt.py\, line 936, in RIFE
22:33:32.940 [E]: Playback [73c0e3c8]: VS - output0 = RIFEMerge(
22:33:32.940 [E]: Playback [73c0e3c8]: VS - File \C:\Program Files (x86)\SVP 4\rife\vsmlrt.py\, line 821, in RIFEMerge
22:33:32.940 [E]: Playback [73c0e3c8]: VS - return inference_with_fallback(
22:33:32.940 [E]: Playback [73c0e3c8]: VS - File \C:\Program Files (x86)\SVP 4\rife\vsmlrt.py\, line 1420, in inference_with_fallback
22:33:32.940 [E]: Playback [73c0e3c8]: VS - raise e
22:33:32.940 [E]: Playback [73c0e3c8]: VS - File \C:\Program Files (x86)\SVP 4\rife\vsmlrt.py\, line 1399, in inference_with_fallback
22:33:32.940 [E]: Playback [73c0e3c8]: VS - return _inference(
22:33:32.940 [E]: Playback [73c0e3c8]: VS - File \C:\Program Files (x86)\SVP 4\rife\vsmlrt.py\, line 1339, in _inference
22:33:32.940 [E]: Playback [73c0e3c8]: VS - engine_path = trtexec(
22:33:32.940 [E]: Playback [73c0e3c8]: VS - File \C:\Program Files (x86)\SVP 4\rife\vsmlrt.py\, line 1172, in trtexec
22:33:32.940 [E]: Playback [73c0e3c8]: VS - completed_process = subprocess.run(args, env=env, check=False, stdout=sys.stderr)
22:33:32.940 [E]: Playback [73c0e3c8]: VS - File \C:\Users\Sahil\AppData\Local\Programs\Python\Python38\Lib\subprocess.py\, line 493, in run
22:33:32.940 [E]: Playback [73c0e3c8]: VS - with Popen(*popenargs, **kwargs) as process:
22:33:32.940 [E]: Playback [73c0e3c8]: VS - File \C:\Users\Sahil\AppData\Local\Programs\Python\Python38\Lib\subprocess.py\, line 858, in __init__
22:33:32.940 [E]: Playback [73c0e3c8]: VS - self._execute_child(args, executable, preexec_fn, close_fds,
22:33:32.940 [E]: Playback [73c0e3c8]: VS - File \C:\Users\Sahil\AppData\Local\Programs\Python\Python38\Lib\subprocess.py\, line 1311, in _execute_child
22:33:32.940 [E]: Playback [73c0e3c8]: VS - hp, ht, pid, tid = _winapi.CreateProcess(executable, args,
22:33:32.940 [E]: Playback [73c0e3c8]: VS - OSError: [WinError 740] The requested operation requires elevation

Issue resolved by running mpc-hc in admin oddly.

Another issue. Trt inference model has to be built or cached for every new resolution. This caused me a lot of confusion for real time playback as it would hang and there's no indication how long that will take to finish building. Once that's done realtime playback works. It might help new users if the TensorRT version came with a benchmark tool that contained some reference footage at different resolutions and gave a notification when all the refence models for common resolutions were saved. Also going over the vsmlrt documentation, it's extremely important to set fp16, num_parameters, and previously workspace before the inference model is made. How is svp handling fp16 vs fp32 and does the gpu thread setting refer to the num_stream parameter in vsmlrt?

Heard about this a couple weeks ago. In my experience neural network trained algorithms tend to be slow and very marginal improvements in quality, but maybe someone here would know better.

https://grisk.itch.io/dain-app
https://github.com/baowenbo/DAIN#dain-d … erpolation
https://github.com/baowenbo/MEMC-Net

7

(16 replies, posted in Using SVP)

According to this, HDR is treated like a regular color format.
https://forum.doom9.org/showthread.php?t=175205
http://avisynth.nl/index.php/Avisynthplus_color_formats
https://github.com/FFMS/ffms2/blob/mast … visynth.md

As I'm too stubborn to move on from DirectShow based players and all their legacy support, I'm looking for an alternative to ffdshow raw video filter that supports 10-bit video output. My understanding was that this was the final missing link to getting 10-bit SVP support in MPC-HC. When I have some free time, I'll play around with it myself, but maybe someone else is also curious.

https://forum.doom9.org/showthread.php?t=127037
https://github.com/FFMS/ffms2
http://avisynth.nl/index.php/High_bit-d … o_AviSynth
http://www.vapoursynth.com/doc/pluginlist.html
https://forum.doom9.org/showthread.php?t=174469

Worth looking into.

Sad

Good to know, maybe this fork has worked it out?
http://ffdshow-tryout.sourceforge.net/changelog.php

I don't think that's right. Ffdshow raw video filter shows options for 10-bit output, and according to older posts it was avisynth that limited svp to 8-bit in the past but both vapoursynth and avisynth+ support high bitdepth.

http://www.svp-team.com/forum/viewtopic.php?id=632

I'll play around with an interframe2 script sometime to see if it works in theory.

I was just wondering what are the current draw-backs of continuing to use these older video players now? I've been looking into a new monitor in the future so I could enjoy 10-bit content, but I didn't want to switch to mpv just yet. I understand that Avisynth was limited to 8-bit but since the switch to Avisynth+ shouldn't that have been resolved?
http://avisynth.nl/index.php/Avisynthplus_color_formats

14

(45 replies, posted in Using SVP)

dejavecue wrote:

I don't think you will see much difference. I am running a Ryzen 7 1700 @3.8 Ghz with 16GiB of RAM @ 2933 Mhz and with SVP4 pro (mpv) version, CPU usage never goes above 10% even. SVP seems to be mostly GPU intensive.

You're running a fairly high end CPU so that's understandable. In my experience ram frequency is the biggest bottleneck once you have a more than 4 threads.  I bet if you go to 2133 MHz on your ram you'll start dropping frames.

Taudris wrote:

I've been utterly unable to get my Ryzen 1700 and RX 480 to play 4k files with interpolation. 1080p works fine with interpolation enabled and maxed out. 4k plays fine without interpolation with almost no CPU usage. 4k also plays fine if I leave SVP enabled and turn off interpolation in the SVP app, again with almost no CPU usage.

I haven't done anything 4K but that doesn't seem right at all. SVP scales pretty linearly so 4K should only take 4x the processing power. What's your target framerate and what's your cpu usage on EVR with 1080p videos.

15

(45 replies, posted in Using SVP)

Seems like everyone's suspicions that Ryzen's core count and love for high frequency memory would mean it performs well here. What I'm really wondering is if Threadripper with its 4 memory channels will do even better. Would love to see a comparison between a 1700 and 1900X.

16

(8 replies, posted in Using SVP)

Can't imagine why you don't like watercooling but just make sure your cooler is rated for the CPUs TDP. If you're getting a new PC, getting a new Ryzen CPU makes sense for a few reasons. Still 1700 is probably overkill, and you'd have no trouble with an R5 like the 1600.

https://imouto.my/tutorials/madvr/
https://wiki.mikejung.biz/MadVR#madVR_Overview
http://www.svp-team.com/forum/viewtopic.php?id=2317
https://forum.doom9.org/showthread.php?t=171787

It's a little outdated but all still relevant. I switched to NGU Anti-Aliasing from NNEDI3 because it has better render times and is tuned for animation. I would also recommend getting rid of profile switching based on filenames/formats because it makes no sense, just go by resolution. Which MadVR settings you end up using depends entirely on the power of your GPU. Since it will need to render each extra frame from SVP, the GPU gets pushed considerably more. Still the biggest limiting factor in my experience has been ram speed. Any ram OC dramatically improves SVP performance provided your CPU meets the minimum requirments.

18

(11 replies, posted in Using SVP)

Your choice of upgrades makes no sense to me. To use a G4560 you had to replace the motherboard and ram. You could get a Haswell quadcore for way less off ebay and keep all the other components. While the GT 1030 is a card oriented to HTPCs, your GTX 960 should perform significantly better.

19

(15 replies, posted in Using SVP)

MadVR still has some high end upscalers that haven't been implemented in mpv like NGU which in my experience is sharper than NNEDI3 in some scenarios but significantly faster which is vital for interpolation. For my mostly anime usecase, NGU w/AA had the best results though if I had a 10 bit monitor, I'd probably make the switch to mpv. Still I've had great results with madVR, able to get 90 fps across the board with no dropped frames. I think the biggest bottleneck is ram speed actually since neither my GPU or CPU are getting near full utilization, but I can't get up to 120 fps. That was only possible after overclocking my ram. Couldn't get over 75 fps beforehand, and on my old DDR3 PC had dropped frames at 60 fps.

QT is just a gui for mpv which of course has vapoursynth integration which works much better than avisynth+ and ffdshow raw video filter which is used for MPC-HC. Unfortunately ffdshow doesn't allow 10 bit. Madshi mentioned in the past that he was planning vapoursynth integration eventually but it's been over a year since then with no further mention. He seems to be focused on tuning NGU and HDR support for now.

With good profile configurations you can fine tune upscaling based on the native resolution of the video with either program I believe. I know you can for madVR at least.

So I finally gave up on MPC+madVR not dropping at least 1 frame per second now that I know it's not a hw limitation. I'm using the same settings as I do in MPC+madVR but when I load ffdshow raw video filter I get the error message "failed to connect filter to graph." Your guide is a little outdated and I'm using the x64 version of everything so is the problem that MPDN doesn't agree with ffdshow x64 or Avisynth+ or just SVP4? I have Avisynth 2.6 and I've tried disabling Avisynth in ffdshow raw video filter and running with SVP4 not on with the same error still.

21

(15 replies, posted in Using SVP)

This guide was very helpful to me for fine tuning SVP but I don't see the point in using madVR if you're dropping so many frames and still using such low end settings. Until there's better integration of the two, I think I'm sticking with EVR.

22

(7 replies, posted in Using SVP)

Meaning SVP-on-GPU is theoretically possible but would require extremely high end graphics cards. Good to know, thanks.

23

(7 replies, posted in Using SVP)

So I finally got a chance to ask the madVR developers about frame server integration and possible benefits to performance with SVP: http://forum.doom9.org/showthread.php?p … ost1772653

Their response got me wondering how well SVP could perform if it was entirely handled by a dedicated GPU. I can't find much on GPU frame interpolation and nothing on GPU frame servers. Dmitrirender which is DirectX 11 based is the only one I could find, and it's been discussed here that it performs significantly worse than SVP but it is fast. It's more or less the same as the smooth motion option in madVR already I've heard.

I know rewriting SVP for DirectX 11 or Vulkan is out of the question, but would that be the only way? Would there be any point?

24

(8 replies, posted in Using SVP)

Sorry to bring up an old thread, but I asked madshi about this: http://forum.doom9.org/showthread.php?p … ost1773438

Downloaded from the website receiving a network connection error (301) when I copy a youtube url, and after a few second some formats are available but they fail to render. Is it my firewall? Will try downloading from maintenance tools. Working now! The version on the wiki is different. I'd like to configure a separate profile for when using svptube, would that be possible?