Media Exchange Layer (MXL) HANDS ON

July 14, 2026 · View on GitHub

Welcome to this guided workshop around the MXL SDK. MXL is an open source SDK to enable seamless real-time in memory exchange of video, audio, and timed metadata between media functions within modern, software-driven, distributed media production environments.

As the media industry transitions from traditional hardware-based setups to virtualized and containerized production environments, the need for scalable, interoperable software solutions has never been greater. The MXL Project aims to establish an open framework for real-time media exchange, reducing infrastructure complexity and ensuring seamless integration across compute nodes, production clusters, and broadcast platforms. MXL provides an implementation of the Media Exchange Layer defined in the Dynamic Media Facility Reference Architecture as published by the EBU.

The MXL Project will provide the foundation for:

  • Interoperable software-based media production – Enabling broadcasters to optimize workflows by seamlessly integrating diverse production tools and compute environments.
  • Accelerating industry-wide adoption of software-defined infrastructure – Helping media companies adopt software solutions for all tiers of production and for all levels of complexity, including workflows that are latency or quality sensitive.

Preparation Windows 11 - Getting WSL (Alma) and Docker ready

Preparation Windows 11 - Getting WSL (Ubuntu) and Docker ready

Preparation Mac - Getting Docker installed and creating a RamDisk

Exercise 1 - Single writer and single domain

Exercise 2 - Multiple writers and multiple domains

Exercise 3 - Add VNC client for GUI and changing the attribute of one of the writer app

Exercise 4 - Explore audio and video in a real DMF ecosystem with Gstreamer based mxl applications.

TODO

  • Create a git pipeline that will automatically update the images to the latest MXL code

Authors

  • Felix Poulin: initial idea
  • Mathieu Rochon: Exercise design
  • Anthony Royer: Exercise design
  • Sunday Nyamweno: Exercise design and implementation

⚖️ License

This repository is dual-licensed.

Please see LICENSES/LICENSE.md for more details. A copy of the Apache License 2.0 is also provided in the top-level LICENSE file.

The dmf-mxl git submodule is a separate work licensed under its own Apache License 2.0 (see dmf-mxl/LICENSE.txt); its license is unchanged by this repository.

The container images built from this repository bundle third-party open-source components under their own licenses. See THIRD-PARTY-NOTICES.md for details.