English · Português (Brasil)
MediaConv is a safe, script-friendly command-line media converter powered by FFmpeg.
It starts with one polished profile: converting common video containers to broadly compatible MP4 using H.264 video and AAC audio. MediaConv validates the input, converts into a private staging directory, verifies the result, and only then publishes the output.
It also includes a stream profile for converting video to royalty-free WebM with VP9 and Opus, and a music profile for converting common audio files to portable MP3 using libmp3lame.
[!NOTE] MediaConv is in early development. Until v1.0, commands and flags may change between minor releases.
Why MediaConv?
FFmpeg is powerful, but the command line for a safe, compatible MP4 conversion is easy to get wrong. MediaConv packages that workflow into a small CLI with predictable defaults, clear diagnostics, structured output for automation, and a project layout ready for more converters over time.
Use MediaConv when you want:
- a short command instead of remembering FFmpeg flags;
- output that is verified before it replaces or creates the final file;
- readable errors for missing codecs, corrupt input, or output conflicts;
- a CLI that works in scripts through JSON and typed exit codes;
- a foundation that can grow into more media conversion profiles.
Features
- Local video to MP4 conversion with a compatibility-focused profile.
- Local video to WebM conversion with VP9 and Opus, for the open web.
- Local audio to MP3 conversion with a music-focused profile.
- Interactive progress when stderr is a terminal; clean output in scripts.
- No overwrite unless --overwrite is explicitly provided.
- Temporary output cleanup after failure or interruption.
- Paths containing spaces and Unicode are passed directly to FFmpeg without a shell.
- Human-readable and JSON output.
- Dependency and codec diagnostics through mediaconv doctor.
- Native release binaries for Linux, macOS, and Windows on AMD64 and ARM64.
Quick start
Install FFmpeg first, then install MediaConv from the latest release or with Go.
# Verify FFmpeg and the required codecs.
mediaconv doctor
# Inspect an input file.
mediaconv inspect "recording.webm"
# Create recording.mp4 beside the input.
mediaconv convert "recording.webm"
# Convert a camera export to MP4.
mediaconv convert "camera.mov" --output "camera.mp4"
mediaconv convert "song.wav" --to mp3
Convert to royalty-free WebM.
mediaconv convert "clip.mp4" --to webm