MKVToolNix logo mosu's Matroska stuff

MKVToolNix v99.0 released

2026-05-24 — mosu

Heyo everyone.

Here’s MKVToolNix v99. There are a couple of bug fixes & improvements in the GUI & in mkvmerge among with a huge amount of fixes/changes/improvements to the macOS build system. Yes, that’s right, macOS binaries are back.

Thanks to the huge amount of work by two community members, corticalcode & touchstone64 (Graham Thompson), we will once again provide macOS binaries (DMGs) for releases v98 (already available for download) and newer (such as this one, v99). Both have improved the macOS build system significantly, implemented building ARM binaries in addition to Intel binaries (this includes a Universal DMG) and fixing bugs they come across while doing so. I’m very grateful for their work, and the MKVToolNix community as a whole is better off.

The macOS DMGs I’ll host on the project’s home page will be built by aforementioned Graham Thompson, not by me. They’re signed & all the good stuff. You can find details about the certificate used on the authenticity page.

You can download the source code or one of the packages. The Windows packages as well as the Linux AppImage are available already. The other Linux packages & the macOS disk image are still being built and will be available over the course of the next couple of hours.

Here are the NEWS since the previous release:

Version 99.0 “Buka” 2026-05-24

New features and enhancements

  • MKVToolNix GUI: the GUI will now remember the last used directory for selecting audio files for playback in “play audio file” program runners separately from any other “open file”-type situations. This directory will also default to /System/Library/Sounds on macOS now. Implemented by #6213.
  • MKVToolNix GUI: executing actions → running programs: added new variables: MTX_DESTINATION_FILE_BASE_NAME (the name without the drive letter, path or the suffix; e.b. /movies/A.new.hope.mkvA.new.hope) and MTX_DESTINATION_FILE_SUFFIX (only the letters after the last ., e.g. /movies/A.new.hope.mkvmkv). Added examples to all the destination file variables in the popup menu when adding variables in the preferences. Implements parts of #6220.
  • MKVToolNix GUI: executing actions → running programs: the command-line input widget will now receive focus again after using the popup menu for adding a variable. Implements parts of #6220.
  • MKVToolNix GUI: executing actions → running programs: the variables will now also be set as environment variables when running a program after a job completes.
  • MKVToolNix GUI: executing actions → running programs: when using the “Execute now” button for testing the MTX_… variables will be set to the current multiplexer tab’s values for easier testing. Implements parts of #6220.

Bug fixes

  • mkvmerge: if using legacy font MIME types is off mkvmerge will now remap legacy font MIME types present in source files into the current ones. Patch by corticalcode via #6249.
  • mkvmerge, mkvpropedit, MKVToolNix GUI’s multiplexer & header editor: on Windows & macOS the MIME type detection will now use the FreeDesktop.org MIME database instead of falling back to file extension-based guesses. This matches how it works on other operating systems. This fixes e.g. OpenType fonts being detected as the legacy type application/vnd.ms-opentype instead of the current IETF RFC, font/otf, no matter what the “use legacy font MIME types” settings in the preferences was set to. Fixes #6240 for Windows; fixes #6248 for macOS. Implemented by corticalcode for macOS in #6250.
  • MKVToolNix GUI: update checker: fixed a potential attempt to read from an invalid memory address if an error occurred when parsing the XML file retrieved from the official MKVToolNix server.
  • macOS: GUI: the default audio file for program runners of type “play audio file” has been changed to an AIFF file as Qt’s Multimedia backend routes through Core Audio which doesn’t support WebM/VP8/Vorbis/Opus. Existing configurations will be updated if they point to the prior default WebM audio file. Fixes #6209.

Build system changes

  • macOS: build.sh: the Qt installation is now done via cmake --install instead of using classic make as the classic Makefiles produced by Qt’s build system are incomplete. Patch by corticalcode. Fixes #6205.
  • macOS: build.sh: the binaries in the DMG are now stripped of debug symbols. Patch by corticalcode. Fixes #6206.
  • macOS: build.sh: enabled release build optimizations for dependencies. Patch by corticalcode. Fixes #6207.
  • macOS: build.sh: disabled use of pkg-config for Qt to prevent linking against installed non-OS libraries such as from Homebrew. Patch by corticalcode. Fixes #6208.
  • macOS: added support for notarization of a macOS disk image by an Apple developer account. Implementation of #6212 by Touchstone64.
  • macOS: patch added to make building Qt 6.11 from source possible on macOS 26.4. Patch by Touchstone64.
  • macOS: additions to DMG package naming including the machine type it targets (arm64 or x86_64) and a revision number (to support re-packaging of an existing MKVToolnix release). For example, MKVToolNix-98.0-1-arm64.dmg would represent the first revision of a DMG package for an Apple Silicon Mac, containing MKVToolNix release 98.0. Implementation by Touchstone64.
  • macOS: the packaging process now verifies the MKVToolNix source release using the author’s GPG key before packaging. Implementation by Touchstone64.
  • macOS: the app bundle name has been standardised by removing the version number, so DMG packages will contain ‘MKVToolNix.app’. Implementation by Touchstone64.
  • macOS: Qt is now built without printing support, reducing the size of the resulting DMG slightly. Implementation by Corticalcode. Implements #6230.

Have fun 😁

© 2002 – 2024 Moritz Bunkus   |   Imprint/Impressum   |   Data Protection/Datenschutz   |   Cookie settings