FFmpeg Command to Output MXF Video

This guide provides a straightforward tutorial on how to use FFmpeg to export video files into the professional MXF (Material Exchange Format) container. You will learn the basic command structure, standard broadcast-compliant codecs for MXF, and practical command-line examples to convert your videos quickly.

Basic MXF Conversion Command

To remux an existing video into an MXF container without re-encoding the streams, use the following command. Note that this only works if the source video and audio codecs are already compatible with the MXF specification:

ffmpeg -i input.mp4 -c copy output.mxf

Standard Broadcast MXF Commands

MXF is a professional broadcast format that usually requires specific codecs, such as XDCAM, DNxHD, or ProRes, along with uncompressed PCM audio.

1. Exporting to XDCAM HD422 (MPEG-2) MXF

This is the most common format for television broadcast delivery. It requires 1080i or 1080p MPEG-2 video at 50 Mbps with 24-bit PCM audio.

ffmpeg -i input.mp4 -c:v mpeg2video -pix_fmt yuv422p -g 12 -b:v 50M -maxrate 50M -minrate 50M -bufsize 36.4M -c:a pcm_s24le output.mxf

2. Exporting to DNxHD MXF

Avid DNxHD is widely used in post-production. To export to DNxHD, you must match the bitrate and frame rate to DNxHD specifications (e.g., 220 Mbps for 1080p at 29.97 fps).

ffmpeg -i input.mp4 -c:v dnxhd -b:v 220M -pix_fmt yuv422p -c:a pcm_s16le output.mxf

3. Exporting to ProRes MXF

ProRes is also highly compatible with the MXF container for modern editing workflows.

ffmpeg -i input.mp4 -c:v prores_ks -profile:v 3 -pix_fmt yuv422p10le -c:a pcm_s24le output.mxf

Key Parameter Explanations

  • -i input.mp4: Specifies the input source file.
  • -c:v: Defines the video codec (e.g., mpeg2video, dnxhd, prores_ks).
  • -pix_fmt: Sets the pixel format. Broadcast MXF usually requires 10-bit (yuv422p10le) or 8-bit (yuv422p) 4:2:2 chroma subsampling.
  • -c:a pcm_s24le or pcm_s16le: Sets the audio codec to uncompressed Little-Endian PCM (16-bit or 24-bit), which is mandatory for most professional MXF profiles.
  • output.mxf: The final output file. FFmpeg automatically detects the MXF muxer based on this file extension.