diff --git a/README.md b/README.md index 45eb436..68b0bd9 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # Flowframes - Windows GUI for Video Interpolation -## [itch.io (Free Builds)](https://nmkd.itch.io/flowframes) | [Patreon (Latest Builds)](https://www.patreon.com/n00mkrad) | [Discord](https://discord.com/invite/eJHD2NSJRe) +## [itch.io (Free Old Builds)](https://nmkd.itch.io/flowframes) | [Patreon (Latest Builds)](https://www.patreon.com/n00mkrad) | [Discord](https://discord.com/invite/eJHD2NSJRe) Flowframes Windows GUI for video interpolation - Supports RIFE (Pytorch & NCNN), DAIN (NCNN), and FLAVR (Pytorch) implementations. @@ -13,8 +13,8 @@ However, **I do not provide support for self-built versions** as I can't guarant ## Quick Installation * 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. -* Extract the 7z archive (7-zip or similar software required!) to any folder -* Run Flowframes.exe +* Follow the instructions in the installer and wait for it to complete +* Run Flowframes @@ -27,47 +27,43 @@ However, the official RIFE implementation run best via its original Pytorch impl 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`. - * The python runtime with pytorch is included in the Flowframes "Full" and "Full-RTX3000" downloads. +* A **Python** installation including Pytorch (1.5 or later) as well as the packages `opencv-python`, `sk-video`, `imageio`. + * The Flowframes Installer will automatically download all dependencies by default if these requirements are not fullfilled. [More Details On Python Dependencies](PythonDependencies.md) -## Running A Pytorch Implementation on Nvidia Ampere GPUs - -The python runtime included in the "Full-RTX3000" package includes support for Ampere GPUs. If you want to use your own installation, [use Pytorch 1.7.1](https://pytorch.org/get-started/locally/) or newer on Python 3.8.x. - -Important: Ampere GPUs perform worse than they should on cuDNN 8.04 and older. If your cuDNN version is not >=8.05, you can manually update it by downloading it from Nvidia and replacing the DLLs in the torch folder. The embedded runtime already includes those files. - - - ## 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 +### Application +* Processing Style: Either run all steps at once, or each step manually, in case you want to edit frames, or deduplicate manually. * Maximum Video Size: Frames are exported at this resolution if the video is larger. Lower resolutions speed up interpolation a lot. +* Export Name Pattern: Customize the pattern of the filenames of outputs using variables. ### 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. +* Input Media To Preserve: Toggle transfer of Audio, Subtitles and MKV Metadata. +* Enable Transparency: Interpolate transparency. Only active if the input **and** output support transparency (PNG/GIF). +* Import HQ JPEGs: Will extract JPEG instead of PNG frames from videos. Fast and lightweight, but with a tiny (invisible) quality loss. +* Frame De-Duplication: This is meant for 2D animation. Removing duplicates makes a smooth interpolation possible. + * You should disable this completely if you only use content without duplicates (e.g. camera footage, CG renders). + * "During Extraction" works for most content. Use "Accurate (After Extraction)" for fine-tuning the sensitivity. +* Loop Interpolation: This will make looped animations interpolate to a perfect loop by interpolating back to the first frame at the end. +* Fix Scene Changes: This avoids interpolating scene changes (cuts) as this would produce weird a morphing effect. * Auto-Encode: Encode video while interpolating. Optionally delete the already encoded frames to minimize disk space usage. -* Save Output Frames As JPEG: Save interpolated frames as JPEG before encoding. Not recommended unless you have little disk space. ### AI Specific Settings * RIFE - UHD Mode - This mode changes some scaling parameters and should improve results on high-resolution video. * 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. +* RIFE CUDA Fast Mode: Utilizes Half-Precision (fp16) to speed things up and reduce VRAM usage, but can be unstable. ### Video Export @@ -78,7 +74,6 @@ Here is an explanation of some of the more important settings. ### 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 more reliably. @@ -92,7 +87,7 @@ Here is an explanation of some of the more important settings. * Modern CUDA-capable GPU (Nvidia Maxwell or newer) with 6 GB VRAM or more * 16 GB RAM -* Modern CPU (Intel Core 7xxx Series or newer, AMD Ryzen Series) +* Modern CPU (Intel Core 7000 Series or newer, AMD Ryzen 1000 Series or newer) @@ -114,4 +109,4 @@ Here is an explanation of some of the more important settings. **A:** It encodes your output video during interpolation, instead of afterwards. Enable it unless you have a very weak CPU. **Q:** I downloaded a "Full" package but now want to switch to my own system Python installation. How do I do that? -**A:** Go to `FlowframesData/pkgs/` and delete the folders `py-tu` or `py-amp`, whichever you have. Flowframes will now try to use system python. +**A:** Go to `FlowframesData/pkgs/` and delete the folders `py-tu` or `py-amp`, whichever you have. Flowframes will now try to use system python. \ No newline at end of file