Convert MXF to MKV — Free Online Tool

Convert MXF broadcast files to MKV format, transcoding the video to H.264 and audio to AAC while preserving multiple audio tracks in an open, widely-compatible container. Ideal for moving professional production footage out of proprietary broadcast workflows into flexible, software-friendly storage.

FFmpeg Command

Copy this command to run the same conversion locally with FFmpeg on your desktop. Download FFmpeg

Free — no uploads, no signups. Your files never leave your browser.

Estimated output:

Conversion Complete!

Download

How It Works

MXF files from broadcast and post-production environments typically carry video encoded as MPEG-2, MJPEG, or H.264 alongside uncompressed PCM audio (16-bit or 24-bit), often with timecode metadata and multiple audio tracks. During this conversion, the video stream is re-encoded from whatever codec the MXF contains into H.264 using libx264 at CRF 23 — a visually near-lossless quality level suitable for archiving and playback. The PCM audio (commonly pcm_s16le or pcm_s24le in broadcast MXF) is transcoded to AAC at 128k, making it compatible with virtually all modern media players. The MKV container retains support for multiple audio tracks from the source MXF, and while MXF-specific timecode metadata is not preserved in MKV, standard metadata tags are carried over. The result is a dramatically smaller, broadly compatible file that trades broadcast-specific metadata for universal playback flexibility.

What Each Flag Does

Flag What it does
ffmpeg Invokes the FFmpeg binary — the open-source multimedia processing engine that powers this conversion entirely within your browser via WebAssembly, and can also be run identically on your local desktop for files over 1GB.
-i input.mxf Specifies the input MXF file. FFmpeg's MXF demuxer reads the container's operational pattern, locates all video, audio, and metadata tracks, and makes them available for processing.
-c:v libx264 Re-encodes the video stream to H.264 using the libx264 encoder, replacing whatever video codec the source MXF contained (typically MPEG-2, MJPEG, or H.264) with the highly efficient, universally compatible H.264 codec that MKV players expect.
-c:a aac Transcodes the audio from the broadcast MXF's typical uncompressed PCM format (pcm_s16le or pcm_s24le) to AAC, producing a compact lossy audio stream that is natively supported by virtually all devices and media players that can open MKV files.
-crf 23 Sets the Constant Rate Factor for the H.264 encode to 23 — the libx264 default — which delivers visually high-quality output at a fraction of the bitrate of the original broadcast MPEG-2 or MJPEG video. Lower values (e.g., 18) increase quality and file size; higher values (e.g., 28) reduce both.
-b:a 128k Sets the AAC audio bitrate to 128 kilobits per second. This is a significant reduction from the lossless PCM audio typically found in broadcast MXF files, but is transparent for most stereo program content; increase to 256k or higher for multi-track or critical listening scenarios.
output.mkv Defines the output file as an MKV (Matroska) container. The .mkv extension tells FFmpeg to use the Matroska muxer, which wraps the H.264 video and AAC audio into an open-standard, flexible container capable of supporting subtitles, chapters, and multiple audio tracks.

Common Use Cases

  • Archiving finished broadcast segments from a news or television production system so editors can review or repurpose them on consumer software like VLC or Premiere without needing broadcast infrastructure
  • Preparing camera-original MXF files from Sony XDCAM or Panasonic P2 decks for upload to video platforms or shared drives that do not accept MXF
  • Converting MPEG-2-encoded MXF rushes to H.264 MKV to significantly reduce storage footprint while keeping all audio tracks intact for multi-language or multi-mic recordings
  • Moving post-production deliverables out of a broadcast facility into an open-standard container so independent editors or clients can access them without proprietary codecs or hardware
  • Batch-processing MXF files from a broadcast archive into MKV for long-term preservation in a format readable by open-source tools and future software
  • Extracting multi-track audio from a broadcast MXF — such as a stereo mix plus a music-and-effects track — into an MKV that preserves all tracks for downstream localization or versioning work

Frequently Asked Questions

There will be a generation loss on both streams since neither is copied losslessly by default. The video re-encodes from MPEG-2 (or MJPEG) to H.264 at CRF 23, which is visually high quality and typically produces a much smaller file than the MPEG-2 original. The audio converts from uncompressed PCM (common in broadcast MXF) to AAC at 128k, which is perceptibly transparent for most program material but does discard the original lossless audio. If you need to retain lossless audio, you can modify the command to use '-c:a flac', which MKV fully supports.
Yes — MKV is one of the most capable containers for multiple audio tracks, and FFmpeg will map all audio streams from the MXF into the output MKV by default. Broadcast MXF files often carry four, eight, or more audio channels (e.g., stereo mix, mono ISO tracks, M&E). You can explicitly control which tracks are included by adding '-map 0' to the command to force all streams, or '-map 0:a:0' to select only the first audio track if you want a simpler output file.
MXF has a rich, standardized timecode and metadata structure used in broadcast workflows that does not have a direct equivalent in the MKV specification. FFmpeg will attempt to carry over generic metadata tags (such as creation date or reel name) as MKV metadata fields, but broadcast-specific timecode, KLV metadata, and UMID values embedded in the MXF will not survive the conversion. If timecode preservation is critical, consider keeping the original MXF alongside the MKV output.
To adjust video quality, change the '-crf 23' value — lower numbers like '-crf 18' produce higher quality and larger files, while higher numbers like '-crf 28' produce smaller files with more compression. The CRF scale for H.264 runs from 0 (lossless) to 51 (worst). To change audio quality, replace '-b:a 128k' with a higher bitrate such as '-b:a 256k' for better fidelity, or swap the AAC codec entirely with '-c:a flac' for lossless audio output, which MKV supports natively.
The command displayed converts a single file, but you can adapt it for batch processing in a shell script. On Linux or macOS, use: 'for f in *.mxf; do ffmpeg -i "$f" -c:v libx264 -c:a aac -crf 23 -b:a 128k "${f%.mxf}.mkv"; done'. On Windows Command Prompt, use: 'for %f in (*.mxf) do ffmpeg -i "%f" -c:v libx264 -c:a aac -crf 23 -b:a 128k "%~nf.mkv"'. This is especially useful for converting a full broadcast archive or P2 card dump where dozens of MXF clips need to be processed.
Broadcast MXF files are intentionally large — they commonly use lightly-compressed or intra-frame-only codecs like MPEG-2 422 or MJPEG, and carry uncompressed PCM audio, because broadcast workflows prioritize editing performance and signal integrity over storage efficiency. Converting to H.264 with CRF 23 applies long-GOP inter-frame compression, which is far more efficient for finished content, and AAC replaces multi-megabyte-per-second PCM audio with a compact stream. A 10GB broadcast MXF can easily become a 500MB–1GB MKV with no perceptible quality difference for viewing purposes.

Technical Notes

MXF (Material Exchange Format) is a container defined by SMPTE standards (ST 377) designed specifically for broadcast interchange, and its internal structure differs fundamentally from consumer containers. It supports operational patterns (OP1a, OP-Atom) that affect how streams are interleaved, and it embeds KLV (Key-Length-Value) metadata including UMIDs, timecode tracks, and descriptive metadata that FFmpeg can read but cannot fully represent in MKV. When the source MXF contains MPEG-2 video (common in XDCAM HD and P2 workflows), the re-encode to H.264 will be computationally intensive, especially at high resolutions like 1080i. For 24-bit PCM audio (pcm_s24le, common in high-end broadcast MXF), the downconversion to AAC introduces both a bit-depth reduction and lossy compression; switching to '-c:a flac' in the command preserves full dynamic range if audio fidelity is a priority. MKV fully supports subtitles and chapter markers, which MXF does not, so the MKV output can be enriched with those elements after conversion if needed. FFmpeg's MXF demuxer handles most common MXF operational patterns but may have difficulty with some proprietary or non-standard MXF variants produced by older broadcast hardware.

Related Tools