This repository is an inference repo similar to that of the ESRGAN inference repository, but for various video machine learning models. The idea is to allow anyone to easily run various models on video without having to worry about different repo setups. PRs welcome.
- SOFVSR (traiNNer Version)
- Original SOFVSR SR net
- RRDB SR net
- RIFE (traiNNer Version)
- Supports regular and 'HD' RIFE models
- Original RIFE models will need to be converted to BasicSR's single-model .pth file (conversion script located in utils folder)
- TecoGAN-Pytorch
- Automatic scale, number of frames, number of channels, and SR architecture detection
- Automatic 'HD' RIFE model detection
- Automatic beginning and end frame padding so all frames get included in output
- Direct video input and output through ffmpeg
- FP16 support for faster inference on RTX cards
Requirements: numpy, opencv-python, pytorch, progressbar2
Optional requirements: ffmpeg-python
to use video input/output (requires ffmpeg to be installed)
- Place exported video frames in the
input
folder - Place model in the
models
folder - Example:
python run.py ./models/video_model.pth
- Place model in the
models
folder - Set
--input
to your input video - Set
--output
to your output video - Example:
python run.py ./models/video_model.pth --input "./input/input_video.mp4" --output "./output/output_video.mp4"
--input
: Specifies input directory or file--output
: Specifies output directory or file--denoise
: Denoises the chroma layer--chop_forward
: Splits tensors to avoid out-of-memory errors--crf
: The crf (quality) of the output video when using video input/output. Defaults to 0 (lossless)--exp
: RIFE exponential interpolation amount--fp16
: Speedup on RTX cards using HalfTensors
- EDVR (modified)
- RRN
- Updated RIFE models
- Deep Video Deinterlacing
- More FFMPEG options
- Model chaining
- Will probably modify this repository to also run image models such as ESRGAN