About this project

RealScaler is an end-user Windows app for AI-based image and video upscaling, built around Real-ESRGAN models. It is written in Python and uses a CustomTkinter interface, with ONNX Runtime DirectML as its current AI engine and supporting libraries including OpenCV, MoviePy, PyTorch, ONNX, and FFmpeg. The app supports common image formats such as JPG, PNG, TIF, BMP, WebP, and HEIC, and video formats including MP4, MKV, FLV, GIF, AVI, MOV, MPG, QT, and 3GP. Features include image and video upscaling, multiple-file processing, output-resolution selection, automatic image tiling for limited VRAM, pre-upscaling resizing, interpolation between original and upscaled content, remaining-time display, saved user settings, and metadata transfer with ExifTool. Video workflows support stop-and-resume, multithreaded processing, FFmpeg frame extraction, and hardware-accelerated encoding through NVENC, AMF, and QSV. RealScaler can use multiple GPUs and targets DirectX 12-compatible AMD, Intel, and Nvidia hardware through DirectML. The documented requirements are Windows 10 or 11, at least 8 GB of RAM, and a DirectX 12 GPU with at least 4 GB of VRAM. Processing runs locally and does not require an internet connection. Running from source requires Python, the project dependencies, separately downloaded ONNX AI models, and FFmpeg.exe placed in the project assets.