bin | ||
_config.yml | ||
.gitignore | ||
LICENSE | ||
README.md | ||
sample_input.mp4 | ||
sample_output.mp4 |
Video2X Lossless Video Enlarger
Official Discussion Group (Telegram): https://t.me/video2x
Prerequisites
Component names that are italicized can be automatically downloaded and configured with the video2x_setup.py
script.
- Operating System: Windows
- Nvidia GPU (AMD support is on the way)
- Nvidia GPU driver / Nvidia CUDNN
- FFMPEG
- Waifu2x Caffe
2.4.0 (February 8, 2019)
- Added AMD Support. You can now use
-d/--driver waifu2x_converter
to specify the waifu2x driver to bewaifu2x_converter_cpp
. Note that you'll have to download and configure waifu2x_converter_cpp first.
2.3.0 (February 8, 2019)
- Added the ability to specify the cache directories as required by @AusNaminator
- Fixed the problem where if there's insufficient RAM, the warning doesn't pause the script and prompt the user to reduce the amount of threads used.
- Some other minor adjustments.
2.2.1 (February 1, 2019)
- Fixed AAC codec error discovered by @meguerreroa
Description
Video2X is an automation software based on waifu2x image enlarging engine. It extracts frames from a video, enlarge it by a number of times without losing any details or quality, keeping lines smooth and edges sharp.
For short: Video2X enlarges your video without losing details
Watch for the sharper edges in this screenshot around the shadows:
Or you can watch the YouTube video Demo: https://www.youtube.com/watch?v=PG94iPoeoZk
Screenshot
Installation
Prerequisites
- Python 3
Download: https://www.python.org/downloads/windows/ - FFMPEG Windows Build
Download: https://ffmpeg.org/download.html - waifu2x-caffe for Windows
Download: https://github.com/lltcggie/waifu2x-caffe/releases
Install Dependencies
First, clone the video2x repository.
$ git clone https://github.com/K4YT3X/video2x.git
$ cd video2x/bin
Then you may run the video2x_setup.py
script to install and configure the depencies automatically. This script is designed and tested on Windows 10.
This script will install ffmpeg
, waifu2x-caffe
to %LOCALAPPDATA%\\video2x
and all python libraries.
$ python bin/video2x_setup.py
Alternatively, you can also install the dependencies manually. Please refer to the prerequisites section to see what's needed.
Then you'll need to install python dependencies before start using video2x. Install simply by executing the following command.
$ pip install -r requirements.txt
Quick Start
Nvidia CUDA (waifu2x_caffe)
Enlarge the video to 1920x1080 using CUDA. You may also use the -r/--ratio
option.
$ python video2x.py -i video.mp4 -o video_output.mp4 -m gpu --width=1920 --height=1080
Nvidia CNDNN
Enlarge the video to 1920x1080 using CUDNN. You may also use the -r/--ratio
option.
$ python video2x.py -i video.mp4 -o video_output.mp4 -m cudnn --width=1920 --height=1080
AMD or Nvidia (waifu2x_converter_cpp OpenCL)
Enlarge the video by 2 times using OpenCL. Note that waifu2x_converter_cpp
doesn't support width and height.
$ python video2x.py -i video.mp4 -o video_output.mp4 -m gpu -r 2
CPU
Enlarge the video to 1920x1080 using the CPU. You may also use the -r/--ratio
option. This is potentially much slower than using a GPU.
$ python video2x.py -i video.mp4 -o video_output.mp4 -m cpu --width=1920 --height=1080
Full Usage
usage: video2x.py [-h] -i INPUT -o OUTPUT -m {cpu,gpu,cudnn} -d
{waifu2x_caffe,waifu2x_converter}
[-y {upconv_7_anime_style_art_rgb,upconv_7_photo,anime_style_art_rgb,photo,anime_style_art_y}]
[-t THREADS] [-c CONFIG] [--width WIDTH] [--height HEIGHT]
[-r RATIO]
optional arguments:
-h, --help show this help message and exit
Basic Options:
-i INPUT, --input INPUT
Specify source video file/directory
-o OUTPUT, --output OUTPUT
Specify output video file/directory
-m {cpu,gpu,cudnn}, --method {cpu,gpu,cudnn}
Specify upscaling method
-d {waifu2x_caffe,waifu2x_converter}, --driver {waifu2x_caffe,waifu2x_converter}
Waifu2x driver
-y {upconv_7_anime_style_art_rgb,upconv_7_photo,anime_style_art_rgb,photo,anime_style_art_y}, --model_type {upconv_7_anime_style_art_rgb,upconv_7_photo,anime_style_art_rgb,photo,anime_style_art_y}
Specify model to use
-t THREADS, --threads THREADS
Specify number of threads to use for upscaling
-c CONFIG, --config CONFIG
Manually specify config file
Scaling Options:
--width WIDTH Output video width
--height HEIGHT Output video height
-r RATIO, --ratio RATIO
Scaling ratio
This project is based on the following softwares and projects.