Moritz Bunkus - ( Open Source)
MKVToolNix is a handy and powerful set of tools for easily creating and working with Matroska (.MKV) files.
MKVtoolnix is a handy application that helps you to work with Matroska - a multimedia container that allows to unite in a single file video, audio and subtitle tracks, taking the concept of mkvextract GUI but empowered with some additional features. The application lets you extract the audio, video and subtitles of MKV container, mix new audio tracks, videos or subtitles, convert videos and audios to Matroska (MKV) format, offering the possibility to choose the default audio or add more, and the same with subtitle tracks. In addition, you can retouch MKVToolnix quality and appearance of the video. MKVToolnix supports the many formats such as for video: 264, AVC, H.264, AVI, DRC, MP4, MPG, MPEG, M1V, M2V, EVO, MKV, OGG, MOV, RA, RAM, RMVB, VC1; audio: AC3, AAC, M4A, MP4, DTS, FLAC, OGG, MP2, MP3, MKA, TTA, WAV, WV and subtitles: SRT, ASS, SSA, USF, XML, IDX.
New features and enhancements:
Mkvmerge: MP4 reader: improved the detection of edit lists consisting of two identical entries, each spanning the file's duration as given in the movie header atom. The second entry is ignored in such cases.
Mkvmerge: JSON identification: the "display unit" video track property is now reported as display_unit`. The JSON schema has been bumped to v11 for this change.
Mkvmerge, mkvextract: AVC/h.264: empty NALUs will now be removed.
mkvextract: VobSub extraction: empty SPU packets will now be dropped during extraction as other tools such as MP4Box cannot handle them correctly.
Bug fixes:
Mkvmerge: E-AC-3 parser: fixed determining the number of channels for streams that contain an AC-3 core with dependent E-AC-3 frames.
Mkvmerge: Matroska reader: fixed mkvmerge buffering the whole file if a video track is multiplexed that consists of only one or a few frames.
Mkvmerge: the "display unit" video track property will now be kept if it is set in the source file.
MKVToolNix GUI: multiplexer: when scanning playlists, all playlists were offered for selection regardless of the value of the "minimum playlist duration" setting.
MKVToolNix GUI: multiplexer: deriving track languages from file names: the regular sub-expressions for ISO 639-1 codes could match on empty strings, too, causing matches in wrong places and hence no language being recognized in certain situations.
MKVToolNix GUI: header editor: fixed a crash when saving the file fails (e.g. because it isn't writable).
MKVToolNix GUI: header editor: the editor was wrongfully claiming that mandatory elements with default values cannot be removed in the "status" text.
MKVToolNix GUI: preferences: on macOS & Linux the setting "enable copying tracks by their type" wasn't restored on program start.
Other changes:
Niels Lohmann's JSON library: the bundled version has been updated from v1.1.0 (git revision 54d3cab) to v3.1.1 (git revision g183390c1).
pugixml library: the bundled version has been updated from v1.8 to v1.9 (git revision e584ea3).