Skip to main content

Mooper Logo

A lightning-fast, interactive command-line media conversion tool built in pure Python.

PyPI Version Python Versions License: MIT


Mooper is a modern, dependency-light CLI tool for converting media files between formats.

Unlike most converters that simply act as wrappers around subprocess.run(["ffmpeg"]), Mooper interfaces directly with libavcodec and libavformat natively in Python memory via PyAV. This guarantees blazing fast performance, cross-platform compatibility, and an incredibly low resource footprint.

✨ Features

  • 🪄 Interactive UI: Just point it at a file or folder. Mooper detects the media type and provides a beautiful interactive menu for conversion targets.
  • 🧠 Intelligent Batch Processing: Point it at a folder to automatically categorize, group, and convert mixed media files into organized subfolders.
  • 📱 Mobile VFR Support: Advanced two-pass video engine specifically handles Variable Frame Rate (VFR) iPhone and Android footage without green frames or audio desync.
  • Remux-First: Instantly remuxes container-compatible files (e.g. H.264 in .mov.mp4) without re-encoding to preserve 100% original quality.
  • ⚙️ Persistent Config: Use mooper config to open a visual editor for default qualities, frame rates, and overwrite policies.
  • 📊 Live Progress: Granular, real-time tqdm progress bars for every frame and audio packet.

📦 Installation

Mooper requires Python 3.8 or newer. Install it globally via pip:

pip install mooper

🚀 Quick Start

1. Interactive Conversion

The easiest way to use Mooper is to simply point it at a file. It will detect the format and ask you what to do.

mooper my_video.MOV
Detected video file (.mov).
? Select target format to convert to:
> .mp4
  .mkv
  .webm

2. Intelligent Batch Folders

Point Mooper at an entire directory of mixed media. It will scan the folder and let you map out conversions for each filetype.

mooper ./vacation_media
Scanning directory for formats...
Found 2 format(s):
  .mov: 10 file(s)
  .jpg: 5 file(s)

? Select target format for .mov (10 files): .mp4
? Select target format for .jpg (5 files): .webp

Mooper will automatically create vacation_media_converted/mov_to_mp4/ and process your files!

3. Explicit / Scripting Mode

You can bypass the interactive menus by specifying the input and output directly:

mooper input.png output.webp
mooper recording.mov clip.mp4

4. Advanced Extractions

Extract Audio from Video:

mooper video.mp4 audio.mp3

Extract a Single Frame as an Image:

mooper video.mp4 thumbnail.jpg --frame 150

Compile an Image Sequence into a Video:

mooper ./folder_of_frames output_video.mp4 --fps 30

💻 CLI Commands Reference

Mooper can be run without any arguments to see the interactive landing screen, or run with arguments for precise control.

mooper [input] [output] [options]

Arguments

Argument / Flag Description
input Path to input file or directory
output Path to output file or directory (optional — triggers interactive mode if omitted)
--quality [low|mid|high] Override quality for this specific conversion
--low-resource Use lightweight encoding settings (single-threaded, ultrafast preset)
--frame N Extract frame number N (only applies when converting video → image)
--fps N Set framerate for image sequence encoding (default: 24)
--format .ext Target extension for explicit CLI-driven batch conversion

Configuration Commands

Mooper saves your preferences persistently to ~/.mooper_config.json.

Command Description
mooper Show the landing screen containing your current global settings.
mooper config Open the full Interactive Settings Editor to visually change defaults.
mooper config set <key> <value> Scriptable command to update a setting directly (e.g. mooper config set quality high).

Available Config Keys:

  • quality (low, mid, high)
  • low_resource (on, off)
  • default_video_format (e.g., mp4)
  • default_image_format (e.g., png)
  • default_fps (e.g., 30)
  • recursive_batch (yes, no) — determines if batch processing looks inside subfolders.
  • overwrite_policy (ask, overwrite, skip)

💽 Supported Formats

  • Video: .mp4, .mov, .mkv, .avi, .webm, .flv, .wmv, .ts, .ogv
  • Audio: .mp3, .aac, .wav, .flac, .ogg, .m4a
  • Images: .png, .jpg, .jpeg, .webp, .bmp, .gif, .tiff, .ico

📄 License

MIT License. See LICENSE for details.

Download files

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

Source Distribution

mooper-0.1.0.tar.gz (17.3 kB view details)

Uploaded Source

Built Distribution

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

mooper-0.1.0-py3-none-any.whl (16.5 kB view details)

Uploaded Python 3

File details

Details for the file mooper-0.1.0.tar.gz.

File metadata

  • Download URL: mooper-0.1.0.tar.gz
  • Upload date:
  • Size: 17.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.12.10

File hashes

Hashes for mooper-0.1.0.tar.gz
Algorithm Hash digest
SHA256 076ca92481084282812d14eafb5cc9112ba21b1901b781d34be8223de7dad27d
MD5 c19e919a655fcd840481863d65691227
BLAKE2b-256 2cf311a16c507652a6f353931822181d6143d96aebaaee1903dac61fdbd84fae

See more details on using hashes here.

File details

Details for the file mooper-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: mooper-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 16.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.12.10

File hashes

Hashes for mooper-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 209763a23f561cbbcae68ccbfcd1540c0a9f74b84cc54c3854f1855b4df2ceca
MD5 490d6f77779de922d97d1b92797bc125
BLAKE2b-256 fa4f5ed701b97a537367e024c40dbba8422b4afe5bc39f6bcfe858eb29046f4e

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page