RIFE AI interpolation

From SmoothVideo Project
Jump to navigation Jump to search

Please be aware that RIFE support is currently at BETA stage.

RIFE is a Real-time Intermediate Flow Estimation algorithm based on a neural network named IFNet, that can directly estimate the intermediate flows from images.



  • very high quality of the intermediate frames
  • runs completely on GPU (* almost)


  • rather demanding (comparing to SVP's interpolation method), real time playback requires a decent video card.

Required GPU:

  • 1080p x2, 720p x3 - at least RTX 3070
  • 720p x2 - at least RTX 2060


  • SVP 4.5.214 is required
  • Install an additional package via SVP menu -> Utilities -> Add. programs and features, called [VPS_64] RIFE AI interpolation engine, restart SVP
  • You'll notice a new video profile called RIFE AI interpolation added.



  • browse for a video file
  • choose a RIFE video profile
  • start transcoding!

Alternatively if you own a high-end video card you may try it in a real-time playback:

  • start playback in mpv (preferably) or VLC, DirectShow players may also work via Vapoursynth Filter (VPSF)
  • manually switch to the RIFE video profile (it can be in the Other profiles sub-menu depending on profile conditions currently set)

Advanced usage with profile conditions: for example, you may want to use RIFE for <= 720p in a real time and for every video when transcoding.



  • Vulkan may not be installed and/or configured correctly. If you see an error like "no Vulkan devices found" or "invalid GPU device" - you may need to re-install graphics drivers OR choose the correct "GPU device" ID in the video profile.
  • In a real-time playback seeking a video is really slooow. Be patient.
  • Overall GPU usage in the Task Manager may not reflect the actual computing power in use. Switch to "Compute_1" (NVIDIA) graph.


CUDA implementation can be (or can not be) slightly faster (+25%) than Vulkan, however it depends on really huge Python library which can't be bundled with SVP. Moreover it only works with transcoding and doesn't seems work in a real-time mpv/VPSF.

If you want to give it a try please follow these instructions (warning: you have to be an advanced user :D).

Credits: https://github.com/HolyWu/vs-rife