2020-11-27 14:35:32 +01:00
# Flowframes - Windows GUI for Video Interpolation
2020-11-27 15:11:46 +01:00
Flowframes Windows GUI for video interpolation - Supports RIFE, RIFE-NCNN, DAIN-NCNN, CAIN-NCNN networks.
2020-11-27 14:35:32 +01:00
## Installation
2020-12-07 00:44:33 +01:00
* Download on [itch ](https://nmkd.itch.io/flowframes ) or, for the most recent beta versions, on [Patreon ](https://www.patreon.com/n00mkrad ). This repo does not provide builds.
2020-11-27 14:35:32 +01:00
* Run Flowframes.exe
* Select the components you want to install (certain packages are required, cannot be unticked)
## Using A Pytorch AI
Some of the AI networks run on Tencent's NCNN framework, which allows them to run on any modern (Vulkan-capable) GPU.
However, others (like RIFE) run best via their original Pytorch implementation.
The requirements to run these are the following:
* A **modern Nvidia GPU ** (750 Ti, 900/1000/1600/2000/3000 Series).
* A **Python ** installation including Pytorch (1.5 or later) as well as the packages `opencv-python` and `imageio` .
2020-11-27 15:11:46 +01:00
* You can install a portable version of all those requirements from the Flowframes Installer. This does not support RTX 3000 cards yet.
2020-11-27 14:35:32 +01:00
2020-12-07 00:44:33 +01:00
## Running A Pytorch AI on Nvidia Ampere (RTX 3000) GPUs
2020-11-27 14:35:32 +01:00
I do not have an Ampere card yet, so I can't fully test Flowframes on an RTX 3000 series GPU.
2020-12-07 00:44:33 +01:00
However, users have reported that you can run RIFE on Ampere cards by installing a recent **Pytorch 1.7 build ** . CUDA 11 is also required, but you should already have it if you use up-to-date GPU drivers. NCNN-based AIs should work out of the box.
2020-11-27 15:11:46 +01:00
## Configuration
All Settings have reasonable defaults, so users do not need to do any configuration before using the program.
Here is an explanation of some of the more important settings.
### General
* Maximum Video Size: Frames are exported at this resolution if the video is larger. Lower resolutions speed up interpolation a lot.
### Interpolation
* Copy Audio: Audio will be saved to a separate file when extracting the frames and will afterwards be merged into the output.
* Not guaranteed to work with all audio codecs. Supported are: M4A/AAC, Vorbis, Opus, MP2, PCM/Raw.
* Remove Duplicate Frames: This is meant for 2D animation. Removing duplicates makes a smooth interpolation possible.
* You can disable this completely if you only use content without duplicates (e.g. camera footage, CG renders).
* Animation Loop: This will make looped animations interpolate to a perfect loop by copying the first frame to the end of the frames.
* Don't Interpolate Scene Changes: This avoids interpolating scene changes (cuts) as this would produce weird a morphing effect.
* Save Output Frames As JPEG: Save interpolated frames as JPEG before encoding. Not recommended unless you have little disk space.
### AI Specific Settings
* RIFE - Use Fast Parallel Mode - Speeds up RIFE interpolation a lot if you have lots of VRAM. Not recommended with <8GB GPUs.
* GPU IDs: `0` is the default for setups with one dedicated GPU. Four dedicated GPUs would mean `0,1,2,3` for example.
* NCNN Processing Threads: Increasing this number to 2, 3 or 4 can improve GPU utilization, but also slow things down.
### Video Export
2020-11-27 15:31:15 +01:00
* Encoding Options: Set options for video/GIF encoding. Refer to the **FFmpeg ** and **Gifski ** documentations.
2020-11-27 15:11:46 +01:00
* Minimum Video Length: Make sure the output is as long as this value by looping it.
* Maximum Output Frame Rate: Limit frame rate, for example, if you want a 60 FPS output from a 24 FPS video.
### Debugging / Experimental
* Show Hidden CMD Windows: This will show the windows for AI processes. Can be useful for debugging.
* FFprobe: Count Frames Manually: This uses a slower way of getting the input video's total frame count, but works reliably.