Skip to main content

Local-first offline video enhancement CLI and Python desktop app.

Project description

silukman_video_enhancer

Project Status: Active License: MIT Latest Release Downloads Platform: Cross-platform Python Package

silukman_video_enhancer is a local-first, offline video enhancement application designed to run entirely on your own machine. It improves video quality without sending data to the cloud, utilizing hardware-accelerated AI models locally.

This project is a video-focused evolution of silukman_image_enhancer.

Repository social preview asset: docs/assets/github-social-preview.svg.


Key Features

  • Offline Video Upscaling: Increase video resolution (e.g., 720p to 1080p, 1080p to 4K) using local neural networks.
  • Denoising & Deblurring: Remove camera noise, low-light grain, and light motion blurs.
  • Compression Artifact Cleanup: Clean up pixelation and blocky artifacts caused by aggressive video compression.
  • Color Correction: Simple automatic adjustments to restore vibrance, contrast, and color balance.
  • Audio Preservation: Automatically extracts, syncs, and merges the original audio back into the enhanced video.
  • Hardware Acceleration: Built on ONNX Runtime, leveraging local GPU/NPU acceleration (NVIDIA CUDA, Apple CoreML, Windows DirectML) where available.
  • CLI Workflow: Optimized command-line interface for batch processing and integration into automation scripts.
  • Python Desktop UI: Planned cross-platform desktop interface using a Python GUI stack so the CLI, pipeline, inference, and UI layers can share one language/runtime.

Technical Architecture (Simplified)

[Input Video] ──> [FFmpeg Frame Extraction] ──> [Frame Queue]
                                                      │
                                                      ▼
[Output Video] <── [FFmpeg Muxing + Audio] <── [ONNX Inference Engine]

Prerequisites

To run this application locally, you will need:

  1. Python 3.9+
  2. FFmpeg installed and added to your system's PATH (if missing, the application will automatically download static binaries to a local bin/ folder on first run).
  3. Hardware Accelerator Drivers (optional but highly recommended):
    • NVIDIA CUDA Toolkit (for NVIDIA GPUs)
    • DirectML (supported out-of-the-box on Windows)
    • CoreML (supported out-of-the-box on macOS)
  4. Desktop UI Toolkit (planned): PySide6/Qt for the Python desktop application.

Installation

# Clone the repository
git clone https://github.com/lukman-ss/silukman_video_enhancer.git
cd silukman_video_enhancer

# Set up virtual environment
python3 -m venv .venv
source .venv/bin/activate  # On Windows use: .venv\Scripts\activate

# Upgrade pip (required for pyproject.toml editable installs)
pip install --upgrade pip

# Option 1: Install directly from PyPI (recommended)
pip install silukman-video-enhancer

# Option 2: Install in development/editable mode from source
pip install --no-compile -r requirements.txt -e ".[onnx,dev]"

# Option 3: Install a wheel downloaded from the tagged GitHub Release assets
pip install silukman_video_enhancer-*.whl

Usage

# Basic enhancement (upscaling)
python -m app enhance -i input.mp4 --scale 2 --output output.mp4

# Run denoise and color correction
python -m app enhance -i input.mp4 --denoise --color-correct --output output.mp4

# Launch the Python desktop app
python -m app desktop
# or
python -m ui.desktop

Project Status & Roadmap

This project is currently in active implementation. Phase 1 through Phase 10 are documented as completed.

  • Phase 1 (MVP): Core video pipeline with frame-by-frame extraction, ONNX scaling model integration, and CLI support.
  • Phase 2 (Refinement): Temporal consistency checks, advanced noise/blur removal models, and batch CLI processing.
  • Phase 3 (Desktop UI): Python desktop interface with PySide6/Qt, side-by-side preview, and offline packaging.
  • Phase 4 (Production): Release QA, job control, render farm hardening, subtitle engines, INT8, and timeline preview.
  • Phase 5 (Advanced Media & Runtime): Vulkan/WebGPU, OpenVINO/QNN, HDR/LUT workflows, tone mapping, professional codecs, hardware encoder profiling, high-resolution render planning, and model toolchain improvements.
  • Phase 6 (Headless API & Operations): REST API, client tooling, access controls, durable queues, worker pools, retries, graceful shutdown, LAN discovery, service diagnostics, log streaming, disk quotas, observability, and containerized render nodes.
  • Phase 7 (Ecosystem Governance & Lifecycle): Plugin SDK, sandboxing, workflow automation, reproducible manifests, configuration migration, audit logs, compatibility matrix tests, signed updates, model quarantine, telemetry, maintenance, and SDK docs.
  • Phase 8 (Desktop UX & Batch Processing): Multi-file queueing, batch progress, cancellation, retry, recent files, ETA, post-job actions, queue reordering, and output format selection.
  • Phase 9 (CI/CD & Cross-Platform Release Workflow): GitHub Actions test matrix, version tagging, signed Windows/macOS/Linux release artifacts, draft releases, smoke tests, and dependency caching.
  • Phase 10 (GitHub Repository Presence): Repository metadata, social preview asset, release badges, release/package publication workflows, issue templates, release naming policy, and security disclosure policy.

GitHub Repository Setup

Repository metadata is documented in .github/repository.yml. Apply the same values in GitHub repository settings:

  • Description: Local-first offline video enhancement CLI and Python desktop app.
  • Website: https://github.com/lukman-ss/silukman_video_enhancer
  • Topics: video-enhancement, upscaling, onnx, ffmpeg, pyside6, ai, python, offline-first, desktop-app
  • Social preview: upload docs/assets/github-social-preview.svg

Contributing

Contributions are welcome! Please read our Documentation first to understand the architecture and pipeline.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

silukman_video_enhancer-0.2.0.tar.gz (133.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

silukman_video_enhancer-0.2.0-py3-none-any.whl (120.7 kB view details)

Uploaded Python 3

File details

Details for the file silukman_video_enhancer-0.2.0.tar.gz.

File metadata

  • Download URL: silukman_video_enhancer-0.2.0.tar.gz
  • Upload date:
  • Size: 133.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for silukman_video_enhancer-0.2.0.tar.gz
Algorithm Hash digest
SHA256 66f5111b16db2a22191a59e0487565f18494ed0a7b9b03553a16004db443fd7c
MD5 5ee38c7a1cdce69d2e0186abe5dadb8b
BLAKE2b-256 c1fab72097aa63194d72aacd7b5387b69e7a84873da1ee4668976e6428abda1b

See more details on using hashes here.

File details

Details for the file silukman_video_enhancer-0.2.0-py3-none-any.whl.

File metadata

File hashes

Hashes for silukman_video_enhancer-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 8254f106e98beaec7bf60c7bf55c8877bf8dee53cc81821ebdb813d4cfb73e15
MD5 13e358b48ba33bd8c21ecd98fe98ce79
BLAKE2b-256 f4b55ac12c4585c47da3caaba96d5e7d3509818077ce2c9b0470070d7bef9af6

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page