MKVToolNix is a set of tools that include mkvmerge, mkvinfo, mkvextract, mkvpropedit and mmg, which allow you to to create, manipulate and inspect Matroska (.MKV) files in several ways. With MKVToolNix you can create, split, edit, mux, demux, merge, extract or inspect Matroska files.
Supported formats include:
- Video formats: AVI, MPEG, MP4, MPEG, Ogg/OGM, RealVideo, MPEG1/2, h264/AVC, Dirac, VC1. Suported video codecs include VP9.
- Audio formats: AAC, FLAC, MP2, MP3, (E)AC3, DTS/DTS-HD, Vorbis, RealAudio.
- Subtitle formats: SRT, PGS/SUP, VobSub, ASS and SSA.
MKVToolNix is a cross platform application, which is also available for MAC OS X and Linux.
The string formatting library used was switched from boost::format to fmt. See the section "Build system changes" for details.
New features and enhancements
MKVToolNix GUI: added an option in the preferences for disabling automatic scaling for high DPI displays.
MKVToolNix GUI: the GUI will now prevent the system from going to sleep while the job queue is running. This feature is implemented for macOS, Windows and Linux/Unix systems where the org.freedesktop.login1.Manager D-Bus interface is available.
mkvmerge: chapter generation: the start timestamps of chapters generated in intervals was wrong for files whose smallest video timestamp was bigger than 0.
mkvmerge: MP4 reader: fixed handling of atoms whose size exceeds the parent atom’s size.
mkvmerge, MKVToolNix GUI’s chapter editor: the chapter name template will now also be used when reading Ogg-style chapter files with empty chapter names.
mkvextract: AAC: mkvextract will now write the program config element (PCE) before the first AAC raw data packet if the PCE is present in the AudioSpecificConfig structure in the Codec Private Matroska element. The PCE carries vital information about the number of channels and is required in certain cases.
mkvpropedit, MKVToolNix GUI’s header editor: in situations when a one-byte space must be covered by a new EBML void element the following element must be moved up instead. If that moved element is a cluster, the corresponding cue entries will now be updated to reflect the cluster’s new position.
MKVToolNix GUI: Windows: the application manifest is now included properly so that Windows actually recognizes it.
Build system changes
Qt’s D-Bus implementation is now required for building on systems other than macOS and Windows,
The boost::format library is not used anymore.
The fmt library is now required. Versions 3 and newer are supported. As not all Linux distributions include packages for the library, its release 5.2.1 comes bundled with MKVToolNix. The configure script will check for a system version of the library and use it if present and recent enough. Otherwise it will fall back to the bundled version and link that statically.