GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - SysAdminDoc/MediaForge: Python desktop media converter with batch processing, format detection, and FFmpeg-powered transcoding for audio, video, and image files.

BranchesTags
Open more actions menu

Latest commit

 

History

36 Commits
36 Commits

Folders and files

NameName
Last commit message
Last commit date
mediaforge
mediaforge
 
 
tests
tests
 
 
.gitignore
.gitignore
 
 
CHANGELOG.md
CHANGELOG.md
 
 
LICENSE
LICENSE
 
 
MediaForge.py
MediaForge.py
 
 
README.md
README.md
 
 
build.py
build.py
 
 
icon.ico
icon.ico
 
 
icon.png
icon.png
 
 
mediaforge_app.py
mediaforge_app.py
 
 
pytest.ini
pytest.ini
 
 
ruff.toml
ruff.toml
 
 

Repository files navigation

MediaForge

License Language Type Version

Buy me a coffee on Ko-fi

If this project helps you, a coffee helps me keep working on it.

Python desktop media converter with batch processing, automatic format detection, and FFmpeg-powered transcoding for audio, video, and image files. The conversion engine is usable headlessly, so scripted jobs do not need to start the Qt interface.

Features

  • Multi-Format Support — Convert between dozens of audio, video, and image formats
  • Batch Processing — Queue and convert multiple files at once
  • Auto-Detection — Automatically identifies input format and codec information
  • FFmpeg Backend — Leverages FFmpeg for professional-grade transcoding
  • Preset Profiles — Common conversion presets for quick access
  • Progress Tracking — Real-time conversion progress with time estimates
  • Dark Theme — Professional dark-themed GUI
  • Codec Choices — H.264, HEVC, AV1, HDR-to-SDR, AVIF, JPEG XL, WebP, and lossless remux paths
  • Hardware Fallback — Detects NVENC, QSV, AMF, and VideoToolbox encoders and falls back to CPU encoders safely
  • Preset Packs — Built-in sharing/mobile/web presets plus JSON import/export
  • Preset Chains — Reuse crop → resize → encode → metadata/audio actions from JSON across batches
  • Audio/Image Tools — Waveform and silence analysis, loudness normalization, metadata scrubbing, watermarking, and WebP/AVIF comparisons
  • Automation — Export commands to PowerShell/BAT/sh, edit metadata without re-encoding, benchmark encoders, use optional plugins/HandBrake, and hand off to an external AI upscaler
  • Stream Graphs — Inspect, reorder, and select video, audio, subtitle, and data streams before multiplexing
  • Remote Queue — Submit root-scoped jobs from the local GUI or CLI to a dependency-free HTTP worker

Installation

python MediaForge.py

The CLI is also available without opening the GUI:

python MediaForge.py --check
python MediaForge.py --list-presets
python MediaForge.py --probe input.mkv
python MediaForge.py --convert input.mkv --preset "HEVC x265 Quality" --output output.mp4
python MediaForge.py --watch ./incoming --watch-output ./converted --preset "Discord 25MB" --parallelism 2
python MediaForge.py --convert input.mkv --dry-run --command-script commands.ps1
python MediaForge.py --worker --worker-root ./shared-media --worker-port 8765
python MediaForge.py --convert ./shared-media/input.mkv --remote http://127.0.0.1:8765 --wait-remote

Remote workers only accept input, output, and optional asset paths inside their configured worker root. The local GUI uses the same shared-storage contract when its optional remote-worker URL is filled in.

Requirements

  • Python 3.8+
  • FFmpeg (auto-detected or bundled)

Build an unsigned Windows one-file executable with locally detected FFmpeg and FFprobe bundled:

python build.py

Related Tools

Tool Best For
MediaForge (this repo) Converting between formats — audio, video, and image transcoding
VideoCrush Compressing video files for smaller size — CRF, bitrate, and resolution controls

License

MIT License

About

Python desktop media converter with batch processing, format detection, and FFmpeg-powered transcoding for audio, video, and image files.

Topics

conversiondark-themeffmpegguimediapyqt6python

Resources

Readme
MIT license
Activity

Stars

2 stars

Watchers

0 watching

Forks

0 forks
Report repository

Releases

Packages

Used by

Contributors

Languages

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.