Video2x

Video2x is a super-resolution imaging software with 1.9k stars on their github repository. Video2x utilizes other 3rd party softwares as dependencies like Waifu2x-Caffe, Waifu2x Converter CPP, Waifu2x NCNN Vulkan, SMRMD NCNN Vulkan, RealSR NCNN Vulkan, and Anime4KCPP. It's true value lies in its ability to upscale and work with more media files. Not only does Video2x work with images and gifs, but also video files. This is possible because of its use of FFmpeg, which is a very powerful media processor. Video2x uses FFMPEG to extract all image frames from a video and process each of the frames in the upscaling process, and afterwards it reassembles all the image frames back into the video container. Video2x offers both a GUI and CLI.

waifu2x-bg
Video2x's Logo

Video2x GUI

Video2x has both a GUI and CLI. It's GUI may seem pretty intimidating to learn at first but if you have experience using other Waifu2x 3rd party softwares, then its not as hard to pick up. Video2x consist of multiple dependencies from other 3rd-party softwares like Waifu2x-Caffe and Waifu2x-CPP. It allows users to upscale a video while having the options to choose from a swath of Waifu2x implementations/algorithms. It's essentially an all-in-one Waifu2x software with the ability to even work with videos by using FFmpeg. The GUI also pulls up a CUI that allows users the verbose ability to see more detail on whats going on.
The current GUI 2.8.0 consist of the main screen, driver, FFmpeg, gifski, and tools settings.

Main Settings

The main settings consist of configuring the input and output settings, express settings, and output progress. The input and output selection allows for files to be dragged in or selected manually. It also always for a pretty customizable output file name by allowing users to specify the format string. Last it has the other paths selection which allows users tos pecify the yaml file path and cache folder path. THe cache folder contains the frames that have been extracted and the frames that are currently being processed which will be removed after the video has been upscaled, but this folder can be preserved if the "Preserve Frames" has been checked off in the express settings.
The express settings section allows users to select the driver implementation, number of processes to be used, upscale ratio, the output width and height, image and video output extension, and preserve frames option. The higher the processes the faster the upscaling speed, but it has had a lot of problems in the past so its reccommeded at 1. Users are given the option to specify a specific output width and height, or use a scale ratio. The image output can be specified for the extention of the frames that are being processed and the video extension can also be specified for the final video output extension. Lastly, the preserve frames can be checked to get the image frames that have been extracted and upscaled instead of being deleted along with the cache folder.
Lastly users are able to get a preview of each invidiual frames as its being upscaled in the frame preview panel. Users are also able to view the current video upscale progress which displays the total time elapsed, time remaining, FPS, frames and overall process.

Driver Settings

The driver settings contain a plethora of super resolution implementations. It consist of Waifu2x_Caffe, Waifu2x Converter CPP, Waifu2x NCNN Vulkan, SRMD NCNN Vulkan, RealSR NCNN Vulkan, and Anime4k CPP. In order to use these drivers, it must be installed either seperately or from Video2x's installation process as dependencies. Each driver settings are unique to the drivers itself and more information can be found on each of the drivers own site.

FFmpeg Settings

The FFmpeg settings contains the global options, frame extract, video assembly, and streams migration settings. It is reccommended that you understand FFmpeg before changing information in this section. The most important section would be the frame extraction, video assembly, and streams migration sections.The frame extraction section allows users to select the pixel format for the frames and it defaults to rgb24. The video assembly section contains the settings for the video format when the upscaled frames are being assembled. It allows users to select the video codec, pixel format, CRF, and other miscellaneous settings. Lastly the streams migration settings allows users to specify video, audio, and data stream mapping.

Gifski Settings

The Gifski settings makes use of Gifski, a great software for gif encoding. The main interest in this setting is to specify the quality, where users can specify the gif quality.

Tools Settings

The last settings is the tools settings which involves FFprobe. This allows users to use FFprobe without going through the CLI. All the user has to do is drag the video into the box in order to obtain a plethora of information about the video.

Dragon Ball Z Opening Upscale & Denoise Example

Source Video: 360p

New Videos Upscaled using Waifu2x NCNN Vulkan at 1080p

3x Upscale and Denoise Level 0

3x Upscale and Denoise Level 1

3x Upscale and Denoise Level 2

3x Upscale and Denoise Level 3