
Set of tools for creating, altering and inspecting the Matroska file format. Split , merge, extract and get information about MKV video files. It also supports video codecs and subtitle formats.
Matroska (MKV) files have become the de facto standard for compact HD video files. To create MKV files from various sources or to modify the structure of existing Matroska files, MKVtoolnix offers an open-source solution to inspect, modify, or produce new MKV files with the audio, video, and subtitle streams of your choice.
Actually, MKVtoolnix is not one tool but a toolbox that integrates various Matroska-related open-source utilities. Mkvinfo provides you with a list of all the elements contained in a Matroska file, its tracks, and even the codecs used. Mkvmerge joins the streams of various media files in a single MKV file, while Mkvextract performs the opposite operation – it takes out a selected stream out of the container and save it as a standalone file. Mkvpropedit is used to modify the properties of an MKV file without extracting its contents or build a new one. With this utility, you can change the segment information elements (such as the title) and the track headers (the default track, the language code, etc.).
All of these functions are wrapped up in a convenient interface called mkvtoolnix-gui. This GUI turns all those more or less cryptic program names into more accessible options and tags, such as Multiplexer (to create new MKV files), Info tool, Header editor, or Chapter editor. Useful as it is, the interface itself (and some of the language used in it) is not the most straightforward video tool you may come across. Designed by experts, it does seem to be designed also for experts or, at least, for those who really know what a MKV file is and how it works internally. If you want to make the most of the various tools included in MKVtoolnix, you will need to do your homework first.
One great thing about this tool that all users will surely appreciate is its batch-oriented working flow. The last two tags in the program’s main interface, namely Job queue and Job output, will let you design all your multiplexing or stream extraction one at a time and launch them all in one single operation. Given that some of these operations may take some time to finish (especially if you use large BD video files as source), this batch processing approach is certainly a great add-on to this suite of tools.
Do not mistake this program with the average video conversion and compression tool – MKVtoolnix gathers a set of professional and high-quality MKV-related utilities aimed at video connoisseurs looking for an uncompressed HD video compact container for their beloved movies and other video files.
v25.0 [Jul 13, 2018]
New features and enhancements:
- mkvmerge: SRT/ASS/SSA text subtitles: for files for which no encoding has been specified, mkvmerge will try UTF-8 first before falling back to the system's default encoding. Part of the implementation of #2246.
- mkvmerge: SRT/ASS/SSA/WebVTT text subtitles: a warning is now emitted if invalid 8-bit characters are encountered outside valid multi-byte UTF-8 sequences. Part of the implementation of #2246.
- mkvmerge: Matroska & MPEG transport stream readers: the encoding of text subtitles read from Matroska files can now be changed with the `--sub-charset` parameter.
- Linux: starting with release 25 an AppImage will be provided which should run on any Linux distribution released around the time of CentOS 7/Ubuntu 14.04 or later.
- macOS: translations: updated the `build.sh` script to build `libiconv` and a complete `gettext`. Together with an additional fix to how translation files are located, MKVToolNix can now use all interface languages on macOS, too. Fixes #2110, #2307, #2323.
Bug fixes:
- mkvmerge: AVC/h.264: fixed file identification failing for certain elementary streams due to internal buffers not being cleared properly. Fixes #2325.
- mkvmerge: HEVC/h.265: fixed file identification failing for certain elementary streams due to internal buffers not being cleared properly. This is the HEVC analog to what was fixed for AVC in #2325.
- mkvmerge: MLP code: fixed various issues preventing MLP from being parsed correctly. Fixes #2326.
- mkvmerge: TrueHD/MLP packetizer; dialog volume normalization removal isn't attempted if the track is an MLP track as the operation is only supported for TrueHD, not MLP.
- mkvmerge: MPEG TS reader: when reading MPLS mkvmerge will now compare the MPLS's start and end timestamps against the transport stream's PTS instead of its DTS. Otherwise the first key frame of a video track might be dropped if it isn't the first in presentation order. Fixes #2321.
- mkvmerge: JSON identification: mkvmerge will ensure that all strings passed to the JSON output modules are valid UTF-8 encoded strings by replacing invalid bytes with placeholder characters. This avoids the JSON library throwing an exception and mkvmerge aborting on such data. Fixes #2327.
- mkvmerge: audio packetizers: mkvmerge will now keep discard padding values if they're present for packets read from Matroska files. Fixes #2296.
- mkvmerge: Ogg Opus reader: packet timestamps aren't calculated by summing up the duration of all packets starting with timestamp 0 anymore. Instead the algorithm is based on the Ogg page's granule position and which packet number is currently timestamped (special handling for the first and last packets in the stream).
Total Video Converter is a powerful video and audio conversion tool