Skip to content

AniruthKarthik/vfi

Repository files navigation

Video Frame Interpolation (VFI) Engine

This repository provides three high-performance engines for increasing video frame rates (FPS) and achieving "butter-smooth" playback.

  • Best Engine (Python): Our premium engine featuring TTA and CRF 0 for mathematically lossless results.
  • Standard Engine (Python): Uses Deep Learning (RIFE/IFNet) for high visual quality.
  • C++ Engine: Uses Multi-Scale Pyramid Motion Estimation for high-speed processing without requiring a GPU.

Quick Comparison

Feature Best Engine Standard Engine C++ Engine
Technology DL + TTA + Lossless DL (RIFE) Pyramid Flow
Quality ⭐⭐⭐⭐⭐+ (Absolute Best) ⭐⭐⭐⭐⭐ (Excellent) ⭐⭐⭐ (Good / Fast)
Speed Slowest Faster Fastest
Specialty 0 Quality Loss High Fidelity Real-time / Low-power

1. Best Engine (Python) - py/best_engine.py

This is the ultimate engine for users who prioritize quality above all else.

Key Features:

  • Test Time Augmentation (TTA): Runs multiple passes per frame to eliminate artifacts.
  • Mathematically Lossless: Supports --lossless (CRF 0) encoding.
  • Scene Detection: Automatically prevents warping at camera cuts.
  • Async I/O: Multi-threaded video reading and writing.

Usage

# Maximum Quality Mode
python py/best_engine.py --video in.mp4 --output out.mp4 --fps 60 --tta --lossless

# Balanced Mode
python py/best_engine.py --video in.mp4 --output out.mp4 --fps 60 --batch_size 4

2. Standard Engine (Python) - py/main.py

Uses the RIFE (Real-Time Intermediate Flow Estimation) architecture.

Usage

python py/main.py --video input.mp4 --output output.mp4 --fps 60

3. C++ Engine (High Performance)

A custom implementation of a Multi-Scale Pyramid Motion Estimator.

Build

cd cpp && mkdir -p build && cd build
cmake .. && make -j$(nproc)

Usage

./vfi <input_video> <output_video> <target_fps>

🛠 Prerequisites

  • FFmpeg: Required for video encoding/decoding.
  • Python 3.8+
  • CUDA: Recommended for Python engines.
  • CMake & G++: For building the C++ engine.

📁 Project Structure

  • py/best_engine.py: Advanced premium engine.
  • py/main.py: Standard RIFE implementation.
  • cpp/src/: High-performance motion estimation core (C++).

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published