Firefox is finally getting MKV playback support


The MKV format (Matroska Video) is one that has been around for a very long time now, and it is loved for its high quality and flexibility. It has been supported by many web browsers, and even Windows 10, for quite some time, but not Firefox.
But now Mozilla is taking action to address this. Some eight years after a Bugzilla post requested the addition of MKV support to the browser, a developer has been assigned the task of implementing MKV playback in Firefox. So, what happens now?
It is a bit too early to say exactly when MKV support is going to hit Firefox for everyone, but the current estimate is that it will take no more than a month or two – which is really nothing when compared to the eight years that have passed so far.
We have reached the stage of a Technical Brief having been published about the Matroska support in Firefox. It starts off with a handy summary of just what the format is for anyone who is unfamiliar with it:
Matroska (MKV) is a modern, flexible multimedia container format widely used by media enthusiasts and in open-source communities. It is capable of holding video, audio, and subtitles in a single file, similar to MP4, but with broader codec support.
The author continuing, setting out two key reasons for bringing support for the video format to the browser:
- Primary reason — compatibility & demand: Chromium‑based browsers already play MKV. Lack of native support leads to playback failures, downloads instead of play, and manual transcoding. Many users have been asking for first‑class MKV playback.
- Standards‑backed: Matroska (and EBML) are published as IETF RFCs via the CELLAR working group, providing an open, stable specification for long‑term interoperability.
Although the implementation plan breaks down the process into no fewer than five imposing phases, the size of the project is downplayed: “The whole plan will be a small task, the estimation of the implementation will take 1-2 months”.
MKV in Firfox at long last
The full timeline – although there are no specific dates or time periods for each phase – looks like this:
Phase 0 — Confirm background & align on scope
- Capture the “why”: MKV causes real compatibility issues, users are asking for it; Matroska/EBML are IETF-standardized specs.
- Produce a short tech brief.
- Send Intent-to-Prototype to dev-platform.
Phase 1 — Measure MKV usage
- Sniff MKV loads (MIME + EBML header)
- add/extend Glean probes to track MKV usage.
Phase 2 — Nightly prototype
- Enable Matroska demuxing on Nightly with limited codec surface to derisk rollout.
- Start with the most common cases: AVC video + AAC audio.
- add/extend Glean probes to track codecs usage.
- Nightly-only pref, default off outside Nightly.
Phase 3 — Extend codec coverage
- Let data from Phase 2 guide priorities; aim to meet Chromium’s practical coverage unless we identify risks.
- Extend the test suites and run full QA to pass across all supported codecs.
- Fuzzing and malformed-file corpus; verify no crashers, OOMs, or hangs and any significant blockers.
- Updated probes reflecting broader codec matrix for playback status.
Phase 4 — Feature shipment
- Update MDN codec support.
- Send Intent-to-Ship to dev-platform.
- Pref flip for all trains.
The original “bug report” is being used to track progress of work on the project, and you can keep an eye on how things are going here.
Quite why it has taken Mozilla so long to get to work on this is anyone’s guess. For anyone who has considered the lack of MKV support a barrier to using Firefox, bringing the browser in line with other Chromium-based browsers may be an incentive for a handful of people to switch allegiances.
Image credit: Monticello/depositphotos.com