# Change Log
# Version 59.0.0 "Shining Star" 2021-07-10
## New features and enhancements
* mkvmerge: WebVTT parser: the parser now follows the specs' rules for parsing
timestamps more closely by being more lenient: it allows arbitrary number of
spaces & tabs at the start of the line & around the arrow; it allows any
number of digits for the hours. Part of #3139.
* MKVToolNix GUI: multiplexer: when adding a Blu-ray playlist without scanning
for other playlists the GUI will now look for disc library information & let
the user select which one to use if there's more than one entry. Implements
* MKVToolNix GUI: multiplexer: added an option for sorting files & tracks by
track types when adding them to multiplex settings. The order is: video
first followed by audio, subtitles and other types. Files & tracks can still
be reordered manually later. The option is enabled by default & can be found
in the preferences → "Multiplexer" page → "Adding files" section. Implements
* MKVToolNix GUI: multiplexer: added an option for recognizing file name
sequences such as `movie.001.mp4`, `movie.002.mp4`, `movie.003.mp4` when
adding multiple files at once. If a sequence is detected, the only first
file will be added while the second and following file names will be
appended to the first one. The option is enabled by default & can be found
in the preferences → "Multiplexer" page → "Adding files" section. Implements
* MKVToolNix GUI: multiplexer: added small colored boxes for each file & track
in order to indicate from which file each track is read. The colors used can
be configured in the preferences → "Multiplexer" page → "File & track
## Bug fixes
* build system: fixed compilation with fmt v8. Fixes #3151.
* mkvmerge: SRT subtitle reader: characters that aren't valid according to the
assumed encoding of the file will now be replaced by the Unicode
"Replacement Character" U+FFFD instead of keeping the invalid characters,
potentially violating the Matroska specs.
* mkvmerge: WebVTT parser: the parser now accepts timestamps with hours
larger than 99. Part of #3139.
* mkvextract: TTA extraction, only on Windows: fixed removing the temporary
file created during extraction.
* mkvmerge, mkvpropedit, MKVToolNix GUI's multiplexer & header editor: MIME
type detection is now done using Qt instead of the `magic` library. The main
impact is the MIME types of TrueType & OpenType fonts are now detected
correctly. Fixes #3137.
* mkvmerge, mkvinfo, MKVToolNix GUI's info tool: only on Windows: displaying
dates before 1970-01-01 00:00:00 UTC or after 2038-01-19 03:14:08 UTC was
broken. Note that the header editor was not affected. Fixes #3148.
* MKVToolNix GUI: only on 64-bit Windows: under certain conditions, the 64-bit
Windows binaries crashed when opening dialog windows. Even though the
underlying bug hasn't been identified, the investigation showed that
building it with newer versions than 10.2.0 of the mingw/gcc cross-compiler
enabled the crashes, while binaries built with 10.2.0 were fine. This
affected v57 and v58 which were built with gcc versions 10.3.0 and 11.1.0
respectively. For the time being I've switched back to building Windows
binaries with gcc 10.2.0. Fixes #3132 & #3133.
* MKVToolNix GUI: multiplexer: when adding files to the multiplexer by running
the GUI's executable with file names as command line arguments, the source
directory will be remembered as the "last open directory" again, causing
subsequent uses of the "open file" dialog to start in the same directory.
* MKVToolNix GUI: multiplexer: the "default track flag" column in the track
list was missing its icons. Additionally it contained text even for things
that aren't regular tracks and therefore do not actually have that flag
(e.g. chapters or tags). Fixes #3144.
* MKVToolNix GUI: multiplexer: the default for the dialog asking the user what
to do with dragged & dropped files if they've never seen the dialog is back
to adding the files to the current multiplex settings instead of "add as
additional parts" which was an unintentional default.
* MKVToolNix GUI: multiplexer: the "show command line" dialog will now always
use backward slashes for the "Windows (cmd.exe)" mode and forward slashes
for the "Linux/Unix shells" mode, regardless of the operating system it's
currently running on. Fixes #3155.
## Build system changes
* The Qt library is now required for building all applications, even the
command-line ones, as they use Qt's MIME type detection capabilities. In
turn this means that you cannot disable the Qt usage anymore; either Qt5 or
Qt 6 is required.
You can still chose not to build MKVToolNix GUI, though. A new option has
been added to `configure` for this purpose: `--disable-gui`.
* The `gmp` library is now required.
* The `magic` library is not used anymore.
* The `PCRE2` & `JPCRE2` libraries are not used anymore. The bundled version
of `JPCRE2` was removed.
* Boost's "rational" library is not used anymore.
* `configure`: the option `--enable-appimage` has been removed. The location
of the relevant directories within an AppImage is now detected
* The bundled `fmt` library was updated to v8.0.0.
MKVToolNix is a small collection of tools (mkvmerge, mkvinfo, mkvextract, mkvpropedit and mmg) that allows you to manipulate Matroska (MKV) files in several ways.
You can use MKVToolNix to create, split, edit, mux, demux, merge, extract or inspect Matroska files. The program will also work with other video formats (AVI, MPEG, MP4, MPEG, Ogg/OGM, RealVideo, MPEG1/2, h264/AVC, Dirac, VC1) including some video codecs (such as VP9 video codec support - reading from IVF/Matroska/WebM files, extract to IVF files). Audio formats (AAC, FLAC, MP2, MP3, (E)AC3, DTS/DTS-HD, Vorbis, RealAudio) and also most subtitle formats (SRT, PGS/SUP, VobSub, ASS, SSA, etc.). MKVToolNix is a cross-platform application that will work on Windows® (both 32 and 64-bit versions), Mac® OS X® and Linux. Please note that from this page you can download the Windows® (installer and portable) and Mac® OS X® versions. If you're looking for a Linux version, you can download one from MKVToolNix homepage.
Trademark Note 1: Microsoft®, Windows® and other product names are either registered trademarks or trademarks of Microsoft Corporation in the United States and/or other countries.
Trademark Note 2: Mac and OS X are trademarks of Apple Inc., registered in the U.S. and other countries.
Note: I tested MKVToolNix on Windows® 7 Ultimate 32-bit using mkvmerge GUI and several other tools opened from the Command Prompt such as mkvinfo. Therefore, if you're looking for more information on how to compile MKVToolNix yourself, check the README file (online). I wanted to test two things: the mkvmerge GUI (software interface) and see how easy or hard is to use the command line for all the other tools such as "mkvinfo."
The software interface (mkvmerge GUI)
As soon as the setup finished, I opened the "mkvmerge GUI" shortcut from my desktop. At a first look, the interface seems quite intuitive, so my first action was to open an MKV file, select an option and see the result. I went to program interface at the "Input" tab and used the "Add" button (it also works using the "drag and drop" method.
I selected a 710 MB MKV file and I wanted to split this (from "Global" tab - select "Split Mode" - "split after size" and then I specified the size - in this case 50M = 50MB) in smaller files with a size of 50 MB for each. Finally, I clicked on "Start Muxing" button.
The program required just 45 seconds for this operation, and the result was 14 smaller MKV files. After this, I wanted to mux the content of an AVI file in MKV format. Again, I went to "Input" tab and used the "Add" button, I selected an AVI file from my computer, and I noticed that the program displayed the Output filename automatically with the name of the same file but this time in MKV (Matroska) format.
Again, the same button called "Start Muxing" was doing all the magic. This time the process was even faster - at the end I could read the following message "Muxing took 34 seconds".
Other command line tools (example: mkvinfo)
To use all the other command line tools in Windows®, open a Command Prompt window. Just hit the "Start" button, click on "Search programs and files" (Windows® 7 and Vista) or "Run" (Windows® XP and others) and type either "cmd" or "command prompt" (without the quotes).
In the command prompt, you can try each program (mkvmerge, mkvinfo, mkvextract, mkvpropedit) by typing its name and the usage parameters. An example would be: "mkvinfo --help" that will display a list with all the commands available. I tried mkvinfo using this command: "mkvinfo -g" and the result was a small interface that allowed me to open an MKV file and see all kind of technical details about it. I was also able to save the results in the TXT format.
You can launch an instance of mkvmerge GUI (software interface) directly from the command prompt. Just type "mmg" and hit "Enter."
Besides of the usual standard documentation from the command prompt (I hate it because it's hard to read) you can find and read the online documentation available on MKVToolNix documentation homepage here: (use the blue links for mkvmerge, mkvinfo, mkvextract, mkvpropedit and mmg to access the online help).
You can learn how to use several main features in minutes but to master the program, it does require more time. Your best bet is to experiment all of his options and whenever you need some help, check the FAQ section (filled with great answers to common issues), start with the guide of mkvmerge GUI here and check the documentation for all the other tools - here (provided once again). MKVToolNix is a "must-have" software if you work with MKV files. It has an incredible amount of features that are not listed on the homepage. Ultimately, if you appreciate this tool, please consider a DONATION to support the work of Mr. Moritz Bunkus, the author of MKVToolNix.