AfterDawn: Software downloads

Versie historie van MKVToolNix

<<Terug naar software beschrijving

Veranderingen voor v14.0.0 - v15.0.0

  • ## Important notes
  • * mkvmerge, mkvpropedit, GUI's header and chapter editors: the programs will no longer add most missing Matroska elements that are mandatory but have a default value in the Matroska specification (e.g. the `TagLanguage` element with a value of `und` if it isn't present in its `SimpleTag` parent). Due to this change libEBML v1.3.5 is now required.
  • ## New features and enhancements
  • * MKVToolNix GUI: multiplex tool: added a new entry to the "source files" context menu labeled "Set destination file name from selected file's name". It will force the GUI to consider the selected file to be the reference for automatically setting the file name, no matter which file was originally added as the first file. It will also force setting the destination file name once if automatic destination file name generation is turned off in the preferences. Implements part of #2058.
  • * MKVToolNix GUI: multiplex tool: added an option in the preferences on "Multiplexer" ? "Output" labeled "Only use the first source file that contains a video track". If enabled, only source files containing video tracks will be used for setting the destination file name. Other files that are added are ignore. Implements the rest of #2058.
  • * MKVToolNix GUI: header editor: added support for editing the video colour attributes. Implements the second half of #2038.
  • * MKVToolNix GUI: header editor: added support for the "video projection" track header attributes. Part of the implementation of #2064.
  • * MKVToolNix GUI: job queue: selected jobs can now be move up and down by pressing the `Ctrl+Up` and `Ctrl+Down` keys. Additionally, push buttons to move them up & down are shown if the corresponding option is enabled in the preferences. Implements #2060.
  • * mkvmerge: added support for the "video projection" track header attributes. Part of the implementation of #2064.
  • * mkvinfo: added support for the "video projection" track header attributes. Part of the implementation of #2064.
  • * mkvpropedit: added support for editing the video colour attributes. Implements one half of #2038.
  • * mkvpropedit: added support for the "video projection" track header attributes. Part of the implementation of #2064.
  • ## Bug fixes
  • * all: selecting the program's language (e.g. via the `--ui-language` command-line option or via the GUI's preferences) did not work on Linux & Unix if the `LANGUAGE` environment variable was set and didn't include the desired language. Fixes #2070.
  • * MKVToolNix GUI: removed the keyboard shortcuts for switching between the different tools (e.g. `Ctrl+Alt+1` for the multiplexer). They overlapped with basic functionality on keyboards that use an `AltGr` key, e.g. German ones, where `AltGr+7` emits `{`. As `AltGr+key` is implemented as `Ctrl+Alt+key` under the hood, this means that `AltGr+7` is really `Ctrl+Alt+7` which the GUI now took to mean "switch to the job queue" instead of "insert `{`". Fixes #2056.
  • * MKVToolNix GUI: header editor: after saving the file the GUI wasn't updating its internal file modification timestamp. That lead to the GUI wrongfully claiming that the file had been modified externally when the user wanted to save the file once more, requiring a reload of the file losing all modifications made since saving the first time.
  • * mkvmerge: DTS handling: some source files provide timestamps for audio tracks only once every `n` audio frames. In such situations mkvmerge was buffering too much data resulting in a single gap in the timestamps of one frame duration after frame number `n - 1` (the second audio timestamp read from the source file was used one output frame too early). Fixes #2071.
  • * mkvinfo: fixed a null pointer dereference if an `EbmlBinary` element's data pointer is a null pointer. Fixes #2072.
  • ## Build system changes
  • * configure: added option `--disable-update-check`. If given, the code checking online for available updates will be disabled. The update check is enabled and included in the GUI by default.
  • * libEBML v1.3.5 is now required.
  • ## Other changes
  • * mkvmerge: the option `--colour-matrix` has been renamed to `--colour-matrix-coefficients` in order to match the specification more closely. The old option name will continue to be recognized as well.



Veranderingen voor v13.0.0 - v14.0.0

  • ## New features and enhancements
  • * mkvmerge: AAC: implemented support for AAC with 960 samples per
  • frame. Implements #2031.
  • * mkvmerge: identification: if the encoding/character set of a text subtitle
  • track is known (e.g. because a byte order mark is present in the file), then
  • it will be output during identification as the `encoding`
  • property. Implements mkvmerge's part of #2053.
  • * mkvmerge: WAV reader: added support for Wave64 files. Implements #2042.
  • * mkvmerge, mkvpropedit, MKVToolNix GUI (chapter editor): added support for
  • chapters in WebM files that is spec-compliant by removing all tag elements
  • not supported by the WebM spec. Implements #2002.
  • * mkvpropedit: added support for tags in WebM files that is spec-compliant by
  • removing all tag elements not supported by the WebM spec.
  • * MKVToolNix GUI: multiplexer: if the encoding/character set of a subtitle
  • track cannot be changed, the GUI will deactivate the "subtitle character
  • set" drop-down box and ignore changes to it when multiple tracks are
  • selected. Additionally, if the track's encoding is known and cannot be
  • changed (e.g. due to a byte order mark in the file), that encoding will be
  • selected in the drop-down box automatically. Both changes signal to the user
  • that she doesn't have to take care of the encoding herself. Implements the
  • GUI's part of
  • #2053.
  • * MKVToolNix GUI: chapter editor: added a function to the "additional
  • modifications" dialog for calculating and setting the end
  • timestamps. Implements #1887.
  • * MKVToolNix GUI: changed the shortcuts for switching between the various
  • tools from `Alt+number` (e.g. `Alt+1` for the multiplexer tool) to
  • `Ctrl+Alt+number` in order to avoid clashing with Windows' input method for
  • arbitrary characters (pressing and holding `Alt` and typing the codepoint on
  • the number pad). Implements #2034.
  • * MKVToolNix GUI: added a "Window" menu and entries with shortcuts for
  • selecting the next (`Ctrl+F6`) respectively previous tab (`Ctrl+Shift+F6`)
  • in the current tool. Implements #1972, #2032.
  • * MKVToolNix GUI: on Windows the GUI will now determine the default font to
  • use by querying Windows for the default UI/message box font instead of using
  • the hardcoded `Segoe UI`. This might fix issues such as #2003 (unverified).
  • * translations: added a Romanian translation of the programs by Daniel (see
  • AUTHORS).
  • ## Bug fixes
  • * mkvmerge: AVC/h.264 parser: fixed wrong frame order & timestamp calculation
  • in certain situations when SPS (sequence parameter sets) or PPS (picture
  • parameter sets) change mid-stream. Fixes #2028.
  • * mkvmerge: HEVC/h.265 parser: fixed wrong frame order & timestamp calculation
  • in certain situations when SPS (sequence parameter sets) or PPS (picture
  • parameter sets) change mid-stream. This is the HEVC/h.265 equivalent of
  • #2028.
  • * mkvmerge: MPEG-1/-2 video: the "remove stuffing bytes" feature introduced in
  • v5.8.0 (feature request #734) was broken. In a lot of situations it did not
  • detect the end of a slice correctly and removed 0 bytes that were actually
  • part of the slice structure. Often there were no visual problems as decoders
  • were able to ignore such errors, but in other cases there are visual
  • artifacts upon decoding. As detecting the slice end properly requires
  • parsing the whole slice structure, this feature has been removed
  • again. Fixes #2045.
  • * mkvmerge: MPEG PS reader: fixed mkvmerge trying to handle an "end" code the
  • same way as a "program stream map" code.
  • * mkvmerge: MPEG TS reader: mkvmerge won't emit warnings if the system's
  • `iconv` library doesn't support the ISO 6937 character set. Fixes #2023.
  • * mkvmerge: when appending fails the error message details (e.g. "the number
  • of channels differs: 1 and 2") were often not output. Fixes #2046.
  • * MKVToolNix GUI: multiplex tool: implemented a workaround for a crash that
  • could occur during drag & drop if at least one of the columns is
  • hidden. Fixes #2009.
  • * MKVToolNix GUI: multiplex tool: appended tracks can no longer be enabled
  • (selected for multiplexing) if the track they're going to be appended to is
  • not enabled. Fixes #2039.
  • * MKVToolNix GUI: multiplex tool: if the GUI is set to ensure unique output
  • file names, it will now verify that right before starting to
  • multiplex/adding the job to the queue, too. Fixes #2052.
  • * MKVToolNix GUI: fixed the total progress reverting to 0% instead of staying
  • at 100% when all jobs have finished. This was introduced by the attempt at
  • fixing the computation of the value of total progress bar for multiple jobs
  • running. Fixes #2005.
  • * configure: fixed DocBook detection if `/bin/sh` is `dash`. Patch by Steve
  • Dibb. Fixes #2054.
  • ## Build system changes
  • * Boost: the minimum required version has been bumped to 1.49.0. Earlier
  • releases fail to build on my current systems and will therefore not be
  • supported anymore.
  • * configure: when looking for the "nlohnmann JSON" include files configure
  • will now try the path "nlohmann/json.hpp" first, "json.hpp" second (only
  • "json.hpp" was tried before). If neither is found, the copy included in the
  • MKVToolNix sources will be used. Fixes #2048.



Veranderingen voor v12.0.0 - v13.0.0

  • ## New features and enhancements
  • * mkvmerge: MPEG TS reader: information about multiple programs will be output
  • as container properties during verbose/JSON identification. See #1990 for
  • the use case.
  • * MKVToolNix GUI: multiplex tool: added a column "program" to the tracks
  • list. Certain container types such as MPEG transport streams can contain
  • multiple programs. The new column will contain the service name (think TV
  • station names such as "arte HD") for such streams. Implements the GUI part
  • of #1990.
  • * MKVToolNix GUI: multiplex tool: the dialog asking the user what to do with
  • dropped files (add to current settings, add to new settings etc.) now
  • remembers the previous decision and defaults to it the next time it's
  • shown. Implements #1997.
  • * MKVToolNix GUI: tabs can now be closed by pressing the middle mouse
  • button. Implements #1998.
  • ## Bug fixes
  • * mkvmerge: MP4 reader: MPEG-1/2 video read from MP4 files was written with an
  • invalid codec ID (e.g. `V_MPEG7`) in certain cases. Fixes #1995.
  • * mkvmerge: MPEG PS reader: made the file type detection less strict so that
  • garbage at the start of the file doesn't prevent detection. Fixes #2008.
  • * mkvmerge: MPEG PS reader: (E-)AC-3 tracks were not detected if the very
  • first packet for that track didn't contain a full (E-)AC-3 frame. Fixes
  • #2016.
  • * mkvmerge: MPEG TS reader: fixed mkvmerge not detecting all tracks in MPEG
  • transport streams containing multiple programs. Fixes one part of #1990.
  • * mkvmerge: MPEG TS reader: fixed track content being broken for some tracks
  • read from MPEG transport streams containing multiple programs. Fixes another
  • part of #1990.
  • * mkvmerge: JSON identification: the `stream_id` and `sub_stream_id` track
  • properties were output as hexadecimal strings instead of unsigned
  • integers. As the `ts_pid` track property was only used for MPEG transport
  • streams, its value is now output as `stream_id` instead, and the `ts_pid`
  • property has been removed. The JSON schema version has been bumped to 8 due
  • to this change.
  • * mkvmerge: fixed a crash when appending video tracks where one track has a
  • CodecPrivate member and the other one doesn't.
  • * mkvmerge: track statistics tags: the `NUMBER_OF_BYTES` tag is supposed to
  • contain the number of bytes in a track before any of the content encoding
  • schemes such as lossless compression is applied; however, mkvmerge was
  • wrongfully using the number of bytes after the schemes had been
  • applied. Fixes #2022.
  • * mkvmerge: CLPI & MPLS parsers: MPLS and CLPI files with version number
  • `0300` as used on Ultra HD Blu-ray Discs are now accepted as well. Fixes
  • #2010.
  • * mkvpropedit: fixed a crash when the selector used for `--tags` is invalid.
  • * MKVToolNix GUI: fixed computation of value of total progress bar for multiple
  • jobs running. Fixes #2005.
  • * MKVToolNix GUI: multiplexer, adding new attachments: when the GUI checks if
  • there's an attachment with the same name it will now disregard disabled
  • attached files. Fixes #2001.
  • * Debian/Ubuntu packaging: during a `dpkg-buildpackage` run the test suite was
  • failing when a non-English locale was active and MKVToolNix packages had
  • already been installed. Fixes #2011.



Veranderingen voor v11.0.0 - v12.0.0

  • ## New features and enhancements
  • * MKVToolNix GUI: the key combination Ctrl+Shift+Space will now toggle the selection of the current item in all tree views where multiple selections are allowed. Implements #1983.
  • * MKVToolNix GUI: chapter editor: added the extension `*.cue` (for cue sheet files) to the "open chapter file" dialog.
  • * mkvmerge: cue sheet parser: if the cue sheet contains a non-empty `TITLE` entry and if no other segment title has been set yet, then the segment title will be set to the cue sheet's `TITLE` value. Implements #1977.
  • * mkvmerge, MKVToolNix GUI (multiplexer): added an option `--no-date` that prevents the "date" field from being written to the segment information headers. Implements one half of #1964.
  • * mkvpropedit, MKVToolNix GUI: header editor: added support for editing the "date" segment information field. Implements the other half of #1964.
  • ## Bug fixes
  • * MKVToolNix GUI: preferences ? job actions, type "play audio file": the GUI will no longer clear the audio file name input if the user aborts the audio file selection dialog.
  • * MKVToolNix GUI: preferences ? job actions, type "play audio file", on Windows: the default "play audio" action was pointing to the wrong directory. Existing configurations with such a wrong path will be fixed automatically upon starting the GUI. Fixes #1956.
  • * mkvmerge: HEVC/h.265 parser: fixed the superfluous copying of the `bitstream_restriction_flag` and its dependent flags in the VUI parameters of the sequence parameter sets if the timing information is present, too. This fixes #1924 properly, and it also fixes #1958.
  • * mkvmerge: MPEG TS reader, AAC parser: the MPEG TS reader will now force the AAC parser to use the multiplex mode that the MPEG TS reader has detected (e.g. LOAS/LATM). This prevents the AAC packetizer from mis-detecting it in its own attempt to identify the mode. Fixes #1957.
  • * mkvmerge: MPEG TS reader: valid MPEG transport streams that start with an h.264/h.265 start code (e.g. a file created by cutting at an arbitrary position) were not recognized as a supported file type.
  • * mkvmerge: MPEG TS reader: fixed a potential read access from invalid memory addresses in the code parsing the program map table (PMT).
  • * mkvmerge: MPEG TS reader: if packets are encountered that belong to a PID not listed in the program map table (PMT), mkvmerge will attempt to determine their type and codec from the content. This supported content types are AAC (ADTS only) and AC-3. Fixes #1980.
  • * mkvmerge: MP4 reader: fixed finding and parsing the `colr` atom if there are more than one video extension atoms and the `colr` atom is not the first one.
  • * mkvmerge: MP4 reader: the `nclx` colour type of the `colr` atom is now recognized, too (as defined by ISO/IEC 14496-12, "ISO base media format").
  • * configure: fixed configure aborting if a `moc`, `uic`, `rcc` or `qmake` binary is found, but the binary's version is too old. Fixes #1979.



Veranderingen voor v10.0.0 - v11.0.0

  • ## New features and enhancements
  • * mkvmerge: FLAC reader: added support for handling embedded pictures as attachments. Implements #1942.
  • * mkvmerge: MP4 reader: merged pull request #1804 adding support for parsing the "COLR" atom and including its values as track headers.
  • * MKVToolNix GUI: watch jobs: the user can now have the GUI execute an action once as soon as the current job or the whole queue finishes. The actions are the same ones that can be configured to be run automatically after job or queue completion.
  • * MKVToolNix GUI: implemented several built-in actions that can be executed either on special events or once via the "watch jobs" tool. These are: playing an audio file (implemented for all operating systems); hibernating, sleeping and shutting down the computer (only implemented for Windows and for Linux systems using systemd).
  • * MKVToolNix GUI: multiplex tool: added a new option for what to do after starting to multiplex/adding to the job queue: "close current settings" will close the current multiplex settings without opening new ones.
  • ## Bug fixes
  • * mkvmerge: AAC parser: fixed mis-detection of certain data as valid ADTS AAC headers resulting in memory allocation failures. Fixes #1941.
  • * mkvmerge: AVC/h.264 parser: mkvmerge will now ignore bogus timing information in the sequence parameter sets (values indicating more than 100000 progressive frames per second). Fixes #1946.
  • * mkvmerge: AVC/h.264 & HEVC/h.265 parsers: all trailing zero bytes will now be removed from NALUs. Fixes #1952.
  • * mkvmerge: HEVC/h.265 parser: fixed copying the `bitstream_restriction_flag` and all dependent fields in the VUI parameters of the sequence parameter sets. Fixes #1924.
  • * mkvmerge: HEVC/h.265 parser: fixed the calculation of the number of parameter set arrays in the HEVCC data structure stored in CodecPrivate. Fixes the video-related part of #1938.
  • * mkvmerge: HEVC/h.265 parser: fixed writing superfluous and uninitialized bytes at the end of the HEVCC data structure stored in CodecPrivate. Another fix for the video-related part of #1938.
  • * mkvmerge: HEVC/h.265 parser: fixed the assumption that the HEVCC data structure always includes arrays for all parameter set types (VPS, SPS, PPS and SEI), and that the order is always VPS ? SPS ? PPS ? SEI. Instead now only the arrays actually present are parsed, and they can be in any order. This fixes mkvinfo's output for Matroska files created from files such as the one from #1938.
  • * mkvmerge: AVC/h.264 packetizer: when reading a framed track (e.g. from Matroska or MP4 files), specifying a default duration as fields (e.g. `50i`) would result in double the actual duration for each frame and the track's default duration header field. Fixes #1916.
  • * mkvmerge: Matroska reader: invalid track language elements are now treated as if they were set to `und` = "undetermined". See #1929 for context.
  • * mkvmerge: MPEG TS reader, AAC: mkvmerge will now require five consecutive AAC headers with identical parameters before track type determination is considered valid. This avoids false positives and consequently wrong track parameters. Fixes the audio-related part of #1938.
  • * mkvmerge: fixed an endless loop in certain circumstances when splitting by `parts` or `parts-frames` and the start of the file is discarded. Fixes #1944.
  • * MKVToolNix GUI: multiplexer tool: the "show command line" dialog will no longer include the mkvmerge executable's location as the first argument for the two "MKVToolNix option files" escape modes. Fixes #1949.
  • * MKVToolNix GUI, header editor: empty track language elements are now treated the same as those set to invalid ISO 639-2 codes: as if they were set to `und` = "undetermined". See #1929 for context.
  • ## Build system changes
  • * bug fix: configure now looks for the `strings` binary by using the `AC_CHECK_TOOL()` autoconf macro. That way it will be found in multiarch setups, too. Fixes #1923.
  • * bug fix: the environment variable USER_CXXFLAGS was accidentally removed from the compiler flags in release 9.8.0. It's been re-added. Fixes #1925.
  • * The `.desktop` files have been renamed to `org.bunkus.mkvtoolnix-gui.desktop` and `org.bunkus.mkvinfo.desktop`. This allows Wayland compositors to associate the correct icons with running applications for e.g. task switchers. Fixes #1948.
  • * Qt's multimedia component is required for compilation of the GUIs since version 11.



Veranderingen voor v9.9.0 - v10.0.0

  • ## New features and enhancements
  • * mkvmerge: AVC/h.264 parser: mkvmerge will now drop all frames before the
  • first key frame as they cannot be decoded properly anyway. See #1908.
  • * mkvmerge: HEVC/h.265 parser: mkvmerge will now drop all frames before the
  • first key frame as they cannot be decoded properly anyway. See #1908.
  • * mkvmerge: HEVC/h.265 parser: added a workaround for invalid values for the
  • "default display window" in the VUI parameters of sequence parameter
  • sets. Fixes #1907.
  • ## Bug fixes
  • * mkvmerge: MP4 reader: fixed track offsets being wrong in certain situations
  • regarding the presence or absence of edit lists ('elst' atoms) & composition
  • timestamps ('ctts' atoms). Fixes #1889.
  • * mkvmerge: MP4 reader: offsets in "ctts" are now always treated as signed
  • integers, even with version 0 atoms.
  • * mkvinfo: the timestamps of SimpleBlocks with negative timestamps are now
  • shown correctly.
  • * mkvmerge: Matroska reader: fixed handling BlockGroups and SimpleBlocks with
  • negative timestamps.
  • * mkvmerge: MP3 packetizer: the MP3 packetizer will no longer drop timestamps
  • from source containers if they go backwards. This keeps A/V in sync for
  • files where the source was in sync even though their timestamps aren't
  • monotonic increasing. Fixes #1909.
  • * mkvmerge: AVC/h.264 parser: mkvmerge will now drop timestamps from the
  • source container if no frame is emitted for that timestamp. Fixes #1908.
  • * mkvmerge: HEVC/h.265 parser: mkvmerge will now drop timestamps from the
  • source container if no frame is emitted for that timestamp. Fixes the HEVC
  • equivalent of the problem with AVC described in #1908.
  • * mkvextract: SSA/ASS: fixed extraction when the "Format" line in the
  • "[Events]" section contains less fields than the default for SSA/ASS would
  • indicate. Fixes #1913.



Veranderingen voor v9.8.0 - v9.9.0

  • New features and enhancements
  • GUI: chapter editor: added a character set selection in the preferences for text files. If a character set is selected there, it will be used instead of asking the user when opening text chapter files. Implements #1874.
  • GUI: multiplexer: added a column "character set" to the "tracks, chapters and tags" list view showing the currently selected character set for that track. Implements #1873.
  • mkvmerge: added an –engage option "all_i_slices_are_key_frames" for treating all I slices of an h.264/AVC stream as key frames in pathological streams that lack real key frames. Implements #1876.
  • GUI: running programs after jobs: added a new variable for the directory the MKVToolNix GUI executable is located in.
  • mkvmerge: DVB subtitle tracks whose CodecPrivate data is only four bytes long will now be fixed up to the proper five bytes by adding the subtitling type byte.
  • mkvmerge: MP4 reader: "ctts" version 1 atoms are now supported.
  • Bug fixes
  • mkvmerge: AC-3 handling: some source files provide timestamps for audio tracks only once every n audio frames. In such situations mkvmerge was buffering too much data resulting in a single gap in the timestamps of one frame duration after frame number n – 1 (the second audio timestamp read from the source file was used one output frame too early). Fixes #1864.
  • mkvmerge: MP4 reader: mkvmerge was only reading a small part of MP4 DASH files where the first "moov" "mdat" atoms occur before the first "moof" atom. This is part of the fix for #1867.
  • mkvmerge: MP4 reader: edit list ("edts" atoms) that are part of the "moof" atoms used in MP4 DASH files weren’t parsed. Instead the edit lists from the main track headers inside the "moov" atom were used. This is part of the fix for #1867.
  • mkvmerge: MP4 reader: when an MP4 DASH file contained both normal chunk offset table ("stco"/"co64" atoms) in their regular "moov" atoms, a sample-to-chunk table ("stsc" atom) whose last entry had a "samples per chunk" count greater than 1 and DASH "trun" atoms, then mkvmerge was calculating wrong positions the frame content. This is part of the fix for #1867.
  • mkvmerge: MP4 reader: mkvmerge couldn’t deal with the key frame index table having duplicate entries. The result was that only key frames up to and including the first duplicate entry were marked as key frames in the output file. All other frames weren’t, even though some of them were referenced from the key frame table after the first duplicate entry. This is part of the fix for #1867.
  • mkvmerge: MP4 reader: when an MP4 file contained more than one copy of the "moov" atom (the track headers etc.), mkvmerge was parsing them all adding tracks multiple times. Fix for #1877.
  • mkvmerge: MP4 reader: fixed an integer overflow during the timestamp calculation leading to files with wrong timestamps. Such files could not be played back properly by most players. Fixes #1883.
  • mkvmerge: MPEG TS reader: if the PMT lists a DVBSUB track, mkvmerge will now recognize it without having to find a packet for it within the probed range.
  • mkvmerge: splitting by parts (both the "timestamps" and the "frames" variants): fixed the calculation of track statistics tags. When calculating the duration the skipped portions weren’t taken into account leading to a too-high duration. As a consequence the BPS tag (bits per second) was wrong, too. Fixes #1885.
  • mkvmerge: reading files with DVB/HDMV TextSV subtitle tracks with invalid CodecPrivate caused mkvmerge to abort with an error from boost::format about the format string not having enough arguments. Fixes #1894.
  • mkvmerge: fixed misdetection of certain AC-3 files as MP3 files which led to an error message that "the demultiplexer could not be initialized".
  • mkvmerge: fixed huge memory consumption when appending big Matroska files with sparse tracks (e.g. forced subtitle tracks). The Matroska reader will now queue at most 128 MB of data. Fixes #1893.
  • mkvmerge: MP4 reader: the timestamps of all multiplexed tracks will now be 0-based properly.
  • mkvmerge: MP4 reader: the DTS-to-PTS offsets given by the "ctts" atoms are now applied for all tracks containing a "ctts" atom, not just h.264 & h.265 tracks.
  • Build system changes
  • Up to and including release 9.8.0 the man pages and their translations came pre-built and bundled with the source code. Those pre-built files have now been removed and must be built during the build process. Therefore the tool "xsltproc" and the DocBook XSL stylesheets for man pages are now required dependencies. Additionally the tool "po4a" must be installed for the translated man pages to be built and installed, though this is optional. In order to facilitate finding the new requirements new options have been added to confiure: "–with-xsltproc=prog", "–with-docbook-xsl-root=dir", "–with-po4a=prog" and "–with-po4a-translate=prog.
  • pugixml detection will be attempted via "pkg-config" first. If that fails, "configure" will fall back to the previous method of trying just to compile and link a test program with the standard include and library locations. Implements #1891.



Veranderingen voor v9.7.1 - v9.8.0

  • ## Important notes
  • * build system: the included version of the "drake" build tool has been removed. Since Ruby 2.1 rake has supported parallel builds, too. The MKVToolNix build system has been adjusted to enable parallel builds by default.
  • ## New features and enhancements
  • * mkvmerge: VobSub in Matroska: mkvmerge will now create and use a default index for VobSub tracks read from Matroska files that are missing their CodecPrivate element (which normally contains said index). Implements #1854.
  • * GUI: added checks for several common problems with the installation. These checks will be executed when the GUI starts, and any problems will be reported to the user.
  • * mkvmerge: added the ISO 639-2 language codes "qaa" and "qad" (both are titled "reserved for local use") as both are used often in France. See #1848 for more information.
  • * mkvmerge: the JSON identification result now includes a track's codec delay if set (only for Matroska source files). The JSON schema version has been bumped to 6.
  • * mkvmerge: MPEG TS: added a workaround for files where the subtitle packets are multiplexed properly, but where their timestamps are way off from the audio and video timestamps. Implements #1841.
  • * mkvmerge: added support for Digital Video Broadcasting (DVB) subtitles (CodecID `S_DVBSUB`). They can be read from MPEG transport streams and from Matroska files. Implements #1843.
  • ## Bug fixes
  • * mkvmerge: MP4 reader: when an MP4 file contained fewer entries for timestamps than frames (which they never should), mkvmerge would use 0 as the timestamp for all the other frames. This resulted in effects such as the last frame of an output file having a timestamp of 0 and in split files having a much longer duration than they should have. Fixes #1847.
  • * GUI: the cache cleanup process that's run automatically when the GUI starts no longer blocks file identification until it is finished. Additionally the process will only be run once per release of MKVToolNix. Fixes #1860.
  • * GUI: certain failures during file identification that can be traced to broken installations (e.g. mkvmerge being too old) won't be stored in the cache anymore. Without this fix the GUI would still use the cached failed identification result even though the underlying might have already been fixed.
  • * mkvmerge: fixed that the error message "not enough space on disk" was shown twice on some operating systems. Fixes #1850.
  • * mkvmerge, Matroska: if a codec delay is set for a track in the input file, it is kept. Fixes #1849.
  • * GUI: multiplexer: changing default values in the preferences (e.g. the default track language to set) did not affect files whose identification results had already been cached.
  • * mkvmerge, MP4: fixed detection of MP3 audio when the object type ID in the ESDS signals MP2 and the track headers have invalid values for number of channels or sampling frequency. Fixes #1844.
  • ## Build system changes
  • * nlohman json-cpp: configure now looks for a system-wide installed version of the nlohmann json-cpp header-only library. If one is found, it is used; otherwise the included version will be used. Implements #1858.
  • * If MKVToolNix is built with rake v10.0.0 or newer, its "multitask" feature will be turned on allowing automatic parallel builds.
  • * CURL is no longer used by MKVToolNix and is therefore not required for building anymore.
  • ## Other changes
  • * GUI: the update check now uses Qt's networking classes instead of CURL.
  • * The command line option "--check-for-updates" has been removed, even though the deprecation warning in release 9.7.0 stated that it would be removed in 2018.



Veranderingen voor v9.4.1 - v9.4.2

  • * mkvmerge: bug fix: AVC & HEVC readers: release v9.4.1 contains a change to both readers so that they will refuse to handle files where the detected pixel width or height is equal to or less than 0. This check was wrong in certain cases causing mkvmerge to reject a file as an unsupported file type. This has been fixed while keeping the constraints on width & height having to be positive.



Veranderingen voor v9.0.1 - v9.1.0

  • * mkvmerge: MPEG TS/teletext enhancement: included the teletext page number in the JSON/verbose identification output as track property "teletext_page".
  • * mkvmerge: MPEG TS bug fix: the "text_subtitles" property of the JSON/verbose identification modes was always set to true for all subtitle tracks, even for those that aren't text subtitles (VobSub, PG).
  • * mkvmerge: MPEG TS/teletext enhancement: if a teletext track contains multiple teletext pages then mkvmerge will now recognize all of those pages as separate tracks to merge instead of only merging the first page. See #1662.



Veranderingen voor v9.0.0 - v9.0.1

  • * mkvmerge: bug fix: regression in v9.0.0: the text subtitle packetizer was wrongfully assuming an encoding of UTF-8 if none was given instead of assuming the system's encoding. Fixes #1639.
  • * mkvmerge: bug fix: if too many chapters had been generated with--generate-chapters then mkvmerge created a bogus entry in the meta seek element and did not actually write the chapters to the file.
  • * mkvmerge: bug fix: the DTS packetizer was setting the number of channels wrong sometimes when reducing to the DTS core. It was using the number of channels including the extensions instead of the channels of the core only.



Veranderingen voor v8.9.0 - v9.0.0

  • 2016-03-26 Moritz Bunkus
  • * Released v9.0.0 "Power to progress".
  • 2016-03-25 Mike
  • * build system: implemented support for explicit pre-compiled headers for Linux and Mac OS.
  • 2016-03-25 Moritz Bunkus
  • * Installer: fixed support for silent installation and uninstallation.
  • 2016-03-24 Moritz Bunkus
  • * mkvmerge: bug fix: fixed two more issues in the conversion of teletext subtitles to SRT subtitles:
  • 1. Packets belonging to pages that don't contain subtitles were used as valid end points for subtitles causing entries to become very short (e.g. 40ms).
  • 2. Sometimes the timestamps of wrong packets were used as entry's start and end points causing start timestamps and durations that were slightly off.
  • Second part of the fix for #1623.
  • 2016-03-22 Moritz Bunkus
  • * mkvmerge: MP4/QuickTime reader: audio tracks with the FourCC 'lpcm' are muxed as A_PCM/INT/LIT instead of A_QUICKTIME.
  • * mkvmerge: bug fix: MP4/QuickTime reader: audio tracks can contain two instances of certain header fields (channel count, bits/sample & channel, sample rate) in the STSD atom: one instance in the version 0 header and one in the version 2 header parts. So far mkvmerge has used those from the version 0 header only and ignored the ones from the version 2 header.
  • This has been changed to match the behavior of other players and MP4 readers like ffmpeg. If the STSD atom contains a version 2 structure then the fields from it will be used. Otherwise the fields from the version 0 part will be used.
  • Fixes #1633.
  • 2016-03-21 Moritz Bunkus
  • * all: new feature: added a new translation of both the programs and the man pages to Korean by Potato (see AUTHORS).
  • * MKVToolNix GUI: chapter editor enhancement: added a button next to the 'segment UID' controls that enable the user to select a Matroska file. The GUI reads that file's segment UID and enters its value into the input field.
  • 2016-03-20 Moritz Bunkus
  • * build system: added an option to configure »--without-qt-pkg-config«. Normally configure uses pkg-config for detecting Qt and setting QT_CFLAGS and QT_LIBS. With this option configure won't use pkg-config and rely on the user having set both variables before running configure. This enables using Qt on systems where no pkg-config files are generated (e.g. Qt 5.6.0 on MacOS with frameworks enabled).
  • 2016-03-18 Moritz Bunkus
  • * mkvinfo: change: on Windows and Mac OS mkvinfo will now launch the GUI by default unless the option »--no-gui« (or »-G«) has been given. This is due to the fact that on both OS users often use portable versions respectively disk images and launch the executable directly and not via start menu entries. In those situations adding command line options for launching the GUI is unnecessarily difficult.
  • 2016-03-16 Moritz Bunkus
  • * mkvmerge: bug fix: fixed two issues in the conversion of teletext subtitles to SRT subtitles:
  • 1. Consecutive teletext packets with the same content are now merged into a single entry instead of resulting in multiple entries.
  • 2. The calculation of a packet's duration was wrong in certain situations.
  • Part of the fix for #1623.
  • 2016-03-14 Moritz Bunkus
  • * MKVToolNix GUI: merge tool (playlist selection dialog) enhancement: the playlist items are sorted by their position within the playlist by default.
  • * MKVToolNix GUI: merge tool (playlist selection dialog) enhancement: double-clicking on a playlist will select and add that playlist.
  • 2016-03-12 Moritz Bunkus
  • * mkvmerge: enhancement: added the number of bits per sample to the verbose/JSON identification output for FLAC files.
  • 2016-03-11 Moritz Bunkus
  • * mkvextract: bug fix: fixed the duplication of VPS, SPS, PPS and SEI NALUs when extracting h.265/HEVC tracks. See #1076 and #1621.
  • * mkvmerge: bug fix: reverted the patch by Vladimír Pilný that made the h.265/HEVC not store SEI NALUs with the frames during muxing. It was supposed to prevent having the SEI NALUs present twice when extracting HEVC due to some SEI information also being stored in the codec private data, but it dropped a lot of other SEI NALUs irrevocably. Fixes #1621.
  • 2016-03-09 Moritz Bunkus
  • * mkvmerge: bug fix: the --sub-charset option is now ignored for text subtitle files that start with a byte-order mark (BOM) bringing the behavior in line with the documentation. Fixes #1620.
  • 2016-03-07 Moritz Bunkus
  • * mkvextract: new feature: implemented the extraction of Big Endian PCM (codec ID A_PCM/INT/BIG) to WAV files. The content will be byte-swapped into Little Endian PCM in the process.
  • * mkvmerge: enhancement: Big Endian PCM tracks will now be byte-swapped into Little Endian PCM, and the codec ID A_PCM/INT/LIT will be used. This was done due to a lot of players not supporting Big Endian PCM inside Matroska.
  • 2016-03-01 Moritz Bunkus
  • * mkvmerge, MKVToolNix GUI: new feature: added switches (»--generate-chapters« and »--generate-chapter-name-template«) and their corresponding UI items for generating chapters while muxing. Two modes are currently supported: »when-appending« which creates one chapter at the beginning and an additional one each time a file is appended and »interval:…« which generates chapters in fixed intervals.
  • Implements mkvmerge's and the GUI's part of #1586.
  • 2016-02-28 Moritz Bunkus
  • * MKVToolNix GUI: job queue enhancement: completed jobs will now be removed from the queue automatically on exit if the job has been added more than 14 days ago in order not to let the queue grow arbitrarily large. This feature can be turned off and the number of days can be adjusted in the preferences.
  • 2016-02-27 Moritz Bunkus
  • * mkvpropedit, MKVToolNix GUI's header editor: bug fix: fixed the handling of files where the last level 1 element has an unknown size. The programs will now either fix this element to have a known size or abort the process with an appropriate error message but without modifying the file. Fixes #1601.
  • 2016-02-25 Moritz Bunkus
  • * mkvextract: enhancement: when extracting chapters in the simple format the user can use the new option »--simple-language …« for selecting the chapter names that are output. Normally the first chapter name found in each atom is used. With this option mkvextract looks for a chapter name whose language matches the specified one.
  • Implements the feature enhancement part of #1610.
  • * mkvextract: several issues regarding the extraction of chapters in the simple format have been fixed: if multiple names with different languages were present then an entry had been written for each name; the total number of entries written was wrong; the wrong entries were written.
  • The new code only writes the first name found from the top-most chapter atoms of all editions. Chapters flagged as hidden or as not enabled are not extracted at all.
  • Fixes the bug part of #1610.
  • 2016-02-24 Moritz Bunkus
  • * MKVToolNix GUI: new chapter editor feature: added an option to multiply all chapter timecodes by a factor to the "additional modifications" dialog. Implements #1609.



Veranderingen voor v8.8.0 - v8.9.0

  • * MKVToolNix GUI: the default font size adjustment has been deactivated for the time being as it causes problems on high DPI displays. See #1602.
  • * MKVToolNix GUI: bug fix: ampersands (&) in file names were shown as keyboard shortcuts in tab titles in various tools (merge tool, chapter and header editors, job output tool). Fixes #1603.
  • 2016-02-20 Moritz Bunkus
  • * MKVToolNix GUI: header editor enhancement: when the user drags & drops files on an open header editor tab the GUI will ask the user what to do with them: either open the files as new header editor tabs or add the files as new attachments to the current tab. The action can also be set as the default. Implements #1585.
  • * MKVToolNix GUI: chapter & header editor enhancement: Matroska files are initially opened in read-only mode and only later re-opened in read/write mode in order to enable reading from write-protected files. Part of the implementation of #1594.
  • * MKVToolNix GUI: chapter & header enhancement: the error messages shown when a Matroska file could not be parsed have been improved to include the most likely reasons. Part of the implementation of #1594.
  • * MKVToolNix GUI: chapter editor enhancement: added a menu entry for removing chapters from an existing Matroska file. Inspired by #1593.
  • * MKVToolNix GUI: chapter editor enhancement: it is now possible to save chapters to Matroska files after having removed all entries (editions and chapter atoms). This effectively removes the chapters from the file. Implements #1593.
  • 2016-02-18 Moritz Bunkus
  • * MKVToolNix GUI: job queue enhancement: added keyboard shortcuts for removing all completed jobs and for removing successfully completed jobs. Implements #1599.
  • * MKVToolNix GUI: merge tool enhancement: added icons to the context menu actions in the "attachments" sub-tab. Implements #1596.
  • * MKVToolNix GUI: merge tool enhancement: made the context menu entries in the "attachments" sub-tab clearer. Implements #1597.
  • 2016-02-10 Moritz Bunkus
  • * mkvmerge: bug fix: fixed the handling of AVIs with a negative video height (which signals that the rows are arranged top-to-bottom).
  • 2016-01-31 Moritz Bunkus
  • * MKVToolNix GUI: job queue bug fix: fixed an invalid memory access in the "edit in corresponding tool and remove from queue" functionality.
  • * MKVToolNix GUI: re-write, merge tool bug fix: the file identification is now based on mkvmerge's JSON output instead of its verbose output. This also fixes the merge tool not showing names of attachments inside Matroska files properly if those names contain spaces (#1583).
  • * MKVToolNix GUI: merge tool bug fix: the "mux this" combo box was disabled if a single attachment was selected.
  • * mkvmerge: bug fix: removed spurious output generated during file identification in the HEVC detection code (e.g. "Error No Error").
  • * mkvmerge: bug fix: fixed the output of the "playlist_file" and "other_file" properties of the "container" entity in the JSON identification format from a single string to an array of strings. The format version has been bumped to 3 due to this change.
  • 2016-01-30 Moritz Bunkus
  • * docs: added a Polish translation of the man pages by Daniel Kluz (see AUTHORS).
  • * MKVToolNix GUI: "run program after XYZ" enhancement: configurations can now be deactivated without having to change them. Implements #1581.
  • 2016-01-24 Moritz Bunkus
  • * mkvmerge: bug fix: fixed parsing of AAC in MP4 with a program config element with an empty comment field at the end of the GA specific config. Fixes #1578.
  • 2016-01-19 Moritz Bunkus
  • * mkvmerge: enhancement: when reading Matroska files created by HandBrake that contain chapters the existing edition UIDs and chapter UIDs are removed and random ones created. This is necessary as HandBrake assigns sequential numbers starting at 1 for each file. Therefore there are two chapter entries with the UID 1, two with the UID 2 etc. and those should, strictly speaking, be treated as if they were a single chapter whereas the user expects those entries to stay separate entries. Implements an improvement for issues such as #1561.
  • * MKVToolNix GUI: merge tool bug fix: the GUI no longer requires at least one source file to be present before muxing can start in order to allow creation of track-less files. Fixes #1576.
  • 2016-01-16 Moritz Bunkus
  • * MKVToolNix GUI: enhancement: the "escape for Windows' cmd.exe" mechanism will only escape arguments that actually need escaping in order to produce easier to read command lines.
  • 2016-01-15 Moritz Bunkus
  • * mkvmerge: QuickTime/MP4 reader: fix a division by zero in the index generation for certain old audio codecs that have certain header fields (bytes_per_frame, samples_per_packet) set to 0.
  • 2016-01-13 Moritz Bunkus
  • * mkvinfo: bug fix: global elements (EBML void and CRC-32 elements) are now handled correctly if they're located inside the segment info or the chapter translate parents



Veranderingen voor v8.5.1 - v8.5.2

  • 2015-11-04 Moritz Bunkus
  • * Released v8.5.2.
  • 2015-11-03 Moritz Bunkus
  • * MKVToolNix GUI: bug fix: the file/track columns aren't resized to fit their content when expanding/collapsing tree nodes anymore. Such expansion also happened when moving entries with the "move up/down" buttons. Fixes #1492.
  • * mkvmerge: bug fix: fixed the values of the "previous/next segment UID" elements when splitting by parts with segment linking enabled. Fixes #1497.
  • * mkvmerge: bug fix: mkvmerge no longer creates a "next segment UID" field in the last file when splitting and segment linking is active.
  • 2015-10-22 Moritz Bunkus
  • * mkvpropedit, MKVToolNix GUI header editor: enhancement: added the "codec delay" track header field as an editable property.
  • * mkvmerge: bug fix: fixed an endless loop when updating track headers caused by the fix for "Re-rendering track headers: data_size != 0 not implemented yet". Fixes #1485.



Veranderingen voor v8.2.0 - v8.3.0

  • * MKVToolNix GUI: chapter editor enhancement: pressing return will cause the next appropriate chapter control to be selected depending on where the focus currently is: from a chapter input to the first chapter name, from a chapter name to the next chapter name and from the last chapter name to the next chapter entry's start time. Implements #1358.



Veranderingen voor v8.0.0 - v8.1.0

  • * mmg: bug fix: fixed handling of the characters [ and ] in container and track properties.
  • * MKVToolNix GUI: merge tool enhancement: moved the »output filename« controls below the three tabs so they're always visible. Also added an option in the preferences to move them back inside the »output« tab. Implements.



Veranderingen voor v7.9.0 - v8.0.0

  • * MKVToolNix GUI: improved locating the mkvmerge executable on non-Windows systems. Fixes #1246.



Veranderingen voor v7.8.0 - v7.9.0

  • * build system: configure will now check for Qt by default. If at least v5.2.0 is found then the Qt versions of mkvinfo's GUI and the new mkvtoolnix-gui will be enabled. You can affect this detection with the options --disable-gui (turns off all GUIs; works the same as before), --disable-qt (will compile thewxWidgets GUI for mkvinfo and mmg) and --without-mkvtoolnix-gui (will compile the Qt version of mkvinfo's GUI but no mkvtoolnix-gui).



Veranderingen voor v7.6.0 - v7.7.0

  • 2015-02-08 Moritz Bunkus
  • Released v7.6.0.
  • 2015-02-03 Moritz Bunkus
  • all programs: bug fix: Since release 7.0.0 the wrong exit code was used when warnings were finished (0 instead of 1). Fixes #1101.
  • 2015-02-02 Moritz Bunkus
  • mkvmerge: bug fix: Appending chapters with the same chapter UID was dropping all sub-chapters from the one of the two merged chapters. Now the sub-chapters are merged recursively as well.
  • mkvmerge: bug fix: The wrong Codec ID was written when reading PCM tracks from Matroska files in Big Endian byte order. Fixes #1113.
  • 2015-01-23 Moritz Bunkus
  • all: new feature: added a Serbian (Latin) translation of the programs by Danko (see AUTHORS).
  • 2015-01-17 Moritz Bunkus
  • mkvmerge: bug fix: If splitting was active and AC3 tracks read from Matroska files were shorter than a split point then the following output file would contain an AC3 packet with the timecode of 00:00:00 somewhere in the middle. Fixes #1104.
  • 2015-01-14 Moritz Bunkus
  • mmg: bug fix: If a chapter track from a Matroska file is selected then the »language« drop-down box is disabled. Fixes #1105.
  • 2015-01-05 Moritz Bunkus
  • mkvmerge: bug fix: On Windows the end-of-file-reached status wasn't tracked correctly for certain file operations. This could manifest in e.g. mkvmerge not finding tracks in MPEG transport streams when probing MPLS playlist files. Fixes #1100.
  • mmg: bug fix: When scanning for play lists the window presenting the results listed some properties in an unescaped way (e.g. »\s« instead of spaces).
  • mmg: bug fix: When adding MPLS files mmg was only offering to scan for more playlists if there were at least two additional MPLS files present. This has been fixed to one MPLS file (in addition to the one just added).



Veranderingen voor v7.5.0 - v7.6.0

  • 2015-02-08 Moritz Bunkus
  • Released v7.6.0.
  • 2015-02-03 Moritz Bunkus
  • all programs: bug fix: Since release 7.0.0 the wrong exit code was used when warnings were finished (0 instead of 1). Fixes #1101.
  • 2015-02-02 Moritz Bunkus
  • mkvmerge: bug fix: Appending chapters with the same chapter UID was dropping all sub-chapters from the one of the two merged chapters. Now the sub-chapters are merged recursively as well.
  • mkvmerge: bug fix: The wrong Codec ID was written when reading PCM tracks from Matroska files in Big Endian byte order. Fixes #1113.
  • 2015-01-23 Moritz Bunkus
  • all: new feature: added a Serbian (Latin) translation of the programs by Danko (see AUTHORS).
  • 2015-01-17 Moritz Bunkus
  • mkvmerge: bug fix: If splitting was active and AC3 tracks read from Matroska files were shorter than a split point then the following output file would contain an AC3 packet with the timecode of 00:00:00 somewhere in the middle. Fixes #1104.
  • 2015-01-14 Moritz Bunkus
  • mmg: bug fix: If a chapter track from a Matroska file is selected then the »language« drop-down box is disabled. Fixes #1105.
  • 2015-01-05 Moritz Bunkus
  • mkvmerge: bug fix: On Windows the end-of-file-reached status wasn't tracked correctly for certain file operations. This could manifest in e.g. mkvmerge not finding tracks in MPEG transport streams when probing MPLS playlist files. Fixes #1100.
  • mmg: bug fix: When scanning for play lists the window presenting the results listed some properties in an unescaped way (e.g. »\s« instead of spaces).
  • mmg: bug fix: When adding MPLS files mmg was only offering to scan for more playlists if there were at least two additional MPLS files present. This has been fixed to one MPLS file (in addition to the one just added).



Veranderingen voor v7.4.0 - v7.5.0

  • 2015-01-04 Moritz Bunkus
  • Released v7.5.0.
  • mkvmerge: bug fix: If the target drive is full then a nicer error message is output instead of simply crashing due to an uncaught exception.
  • mkvmerge: bug fix: Fixed reading MPEG transport streams in which all PATs and/or PMTs have CRC errors. Fixes #1100.
  • 2015-01-03 Moritz Bunkus
  • all: bug fix: Re-wrote the whole checksum calculation code. This lead to a fix for the Adler32 checksum algorithm that was triggered under certain circumstances. Adler32 is used in mkvinfo's output (e.g. in summary mode or if checksums are activated), in the h.265/HEVC bitstream and TrueAudio (TTA) file headers.
  • 2015-01-01 Moritz Bunkus
  • mkvmerge: bug fix: fixed handling of HE-AACv2 with object type »parametric stereo«.
  • mkvmerge: new feature: implemented support for MP4 DASH files. Implements #1038.
  • 2014-12-31 Moritz Bunkus
  • mkvmerge: new feature: implemented reading MPEG-H p2/HEVC video tracks from MP4 files. Implements #996.
  • 2014-12-30 Moritz Bunkus
  • mkvinfo: bug fix: track statistics: the duration (and therefore the estimated bitrate) was wrong for files in which the frame with the maximum timecode wasn't the last frame in the file. Fixes #1092.
  • mkvmerge: new feature: implemented support for AAC in LOAS/LATM multiplex if read from MPEG transport streams or raw LOAS/LATM AAC files. Implements #877 and fixes the underlying issue in #832.
  • 2014-12-21 Moritz Bunkus
  • build system: libEBML and libMatroska have been changed to provide pkg-config configuration files. Therefore MKVToolNix' build system has been switched to look for both libraries via pkg-config.
  • 2014-12-20 Moritz Bunkus
  • all: bug fix: several fixes have gone into libEBML and libMatroska that prevent illegal memory access (both reading from and writing to unallocated addresses). The bugs #1089 and #1096 have thus been fixed.
  • 2014-12-19 Moritz Bunkus
  • build system: libMatroska v1.4.2 is now required as part of a fix for #1096.
  • 2014-12-18 Moritz Bunkus
  • build system: libEBML v1.3.1 is now required as a part of a fix for #1089.
  • mkvinfo: bug fix: mkvinfo will abort with a proper error message if the first element found is not an EBML head element. See #1089.
  • all: enhancement: improved exception messages that can occur when reading damaged Matroska files to make it clearer for the user what's happening. See #1089.
  • 2014-12-16 Moritz Bunkus
  • mkvmerge: new feature: Added support for reading h.265/HEVC video tracks from MPEG transport streams. Implements #995.
  • mkvinfo: bug fix: Timecodes output with ms resolution are now rounded to ms instead of simply cut off. Fixes #1093.



Veranderingen voor v7.3.0 - v7.4.0

  • Released v7.4.0.
  • 2014-12-10 Moritz Bunkus
  • mkvmerge: bug fix: mkvmerge was sometimes dropping lines from teletext subtitles read from MPEG transport streams. See #773.
  • 2014-12-05 Moritz Bunkus
  • mkvmerge: bug fix: The PCM packetizer was producing wrong track statistics by disregarding the last packet's duration when reading PCM data from packaged sources (Matroska, MP4 files). Fixes #1075.
  • build system: enhancement: configure will look for a system version of the pugixml library and use that instead of the bundled version if it is found. Fixes #1090.
  • mkvextract: bug fix for chapter & tag extraction: If locale is set to a non-UTF locale (including C or POSIX) then no XML data was output at all even if the XML data contained ASCII characters only. Fixes #1086. This also fixes mkvextract writing two BOMs when extracting tags with the »--redirect-output« option on Windows.
  • 2014-11-19 Moritz Bunkus
  • mkvinfo: bug fix: summary mode: reported frame types in block groups are now derived from the number of references found and not by the references' values.
  • 2014-11-16 Moritz Bunkus
  • mkvmerge: bug fix: Fixed muxing open GOPs after I frames in MPEG-1/2 video (patch by Stefan Pöschel). Fixes #1084.
  • 2014-11-15 Moritz Bunkus
  • mmg: bug fix: VP9 video tracks are accepted in WebM mode.
  • 2014-11-05 Moritz Bunkus
  • mkvmerge: bug fix: Cherry-picked several commits from DivX' mkvmerge fork for improved HEVC handling. Fixes #1076.
  • all: new feature: added a Catalan translation of the programs by Antoni Bella Pérez (see AUTHORS).
  • 2014-11-04 Moritz Bunkus
  • mkvmerge: bug fix: Fixed the handling of Big Endian PCM tracks read from MP4 files. Fixes #1078.
  • 2014-10-22 Moritz Bunkus



Veranderingen voor v7.2.0 - v7.3.0

  • mkvmerge: new feature: implemented support for reading teletext subtitles from MPEG transport streams. They're converted to SRT-style subtitles (CodecID S_TEXT/UTF8). Implements #773.
  • mkvmerge: bug fix: probing MPEG transport streams with certain types of broken MPEG-2 inside caused mkvmerge to exit with an error message. Such tracks are now ignored instead.
  • mkvmerge, mmg's chapter editor: fixed the default value for the »language« element if it isn't present in a chapter XML file.
  • MKVToolNix GUI: implemented drag & drop in the files pane.
  • mkvinfo (Qt version on Windows): bug fix: the console window is closed if the GUI is launched.
  • mkvmerge: bug fix: Reading tracks from MPEG transport streams resulted in the track being cut off at points with a five minute gap in between frames. It is due to timecode wrap detection introduced in v6.9.0. As it affects subtitles the most the wrap detection has been relaxed for them.
  • MKVToolNix GUI: implemented drag & drop in the track pane.
  • mkvmerge: new feature: added support for PCM in MPEG program streams (.vob – DVDs) and transport streams (.ts, .m2ts – Blu-rays). Implements #763.
  • MKVToolNix GUI: fixed missing command line switch for audio sync/stretch.
  • MKVToolNix GUI: implemented drag & drop in the job queue.
  • MKVToolNix GUI: implemented storing the job queue when the application exits and retrieving it when it starts again.
  • Installer: bug fix: the shortcut for the GUI preview on the desktop is removed upon uninstallation. If the user opts not to have shortcuts on the desktop then no shortcut is created for the GUI preview either.
  • MKVToolNix GUI: fixed clearing the file/track/attachment lists when starting a new config or when loading an existing one.
  • MKVToolNix GUI: implemented setting the output file name automatically in four different modes (don't set at all; place in previous output directory; place in fixed output directory; place in parent directory of first source file) with an option to make them unique by appending a running number.
  • MKVToolNix GUI: implemented setting the file title automatically from added files that already have a title.



Veranderingen voor v7.1.0 - v7.2.0

  • 2014-09-13 Moritz Bunkus
  • Released v7.2.0.
  • MKVToolNix GUI: included a first preview version in the Windows installer and portable releases.
  • 2014-09-08 Moritz Bunkus
  • mkvmerge: bug fix: Fixed calculating AC3 delay from garbage data when reading AC3 from AVIs. This stopped working in release 5.4.0 due to commit 97cc2121.
  • 2014-09-06 Moritz Bunkus
  • mkvextract: bug fix: SSA/ASS files with sections after "[Events]" in their CodecPrivate are now handled correctly. Fixes #1057.
  • 2014-09-05 Moritz Bunkus
  • mkvmerge: bug fix: Fixed handling certain edit list types in MP4 files that are used for positive track delays. Fixes #1059.
  • 2014-08-09 Moritz Bunkus
  • source: Fixed compilation with Boost 1.56.0 which changed the»indexed« range adaptor in an incompatible way.
  • mkvpropedit, mmg’s header editor: bug fix: when editing files with missing track UID elements such an element will be generated automatically instead of crashing and leaving the file in an unplayable state. Part of a fix for #1050.
  • mkvmerge: bug fix: Reading Matroska files with missing track UID elements will no longer cause mkvmerge to abort with an error. A warning is printed and a new unique track ID generated instead. Part of a fix for #1050.



Veranderingen voor v7.0.0 - v7.1.0

  • * all: bug fix: Fixed file seeking code for »seek relative to endof file « case.
  • * mmg: bug fix: Selecting the root of the chapter editor tree will disable the language/country inputs properly as changing those fields doesn't make sense for the root.



Veranderingen voor v6.9.1 - v7.0.0

  • mkvmerge: enhancement: In addition to the track statistics tags »BPS«, »DURATION«, »NUMBER_OF_BYTES« and »NUMBER_OF_FRAMES« mkvmerge will write two more tags identifying which application wrote the statistics (»_STATISTICS_WRITING_APP«) and when the file in question was written: »_STATISTICS_WRITING_DATE_UTC«. »_STATISTICS_WRITING_APP« will always contain the same string contained in the segment info header element »WritingApp«. »_STATISTICS_WRITING_DATE_UTC« will contain the same timestamp as in the segment info header element »Date«, though »_STATISTICS_WRITING_DATE_UTC« is actually a string representation instead of an integer value.
  • Additionally a tag named »_STATISTICS_TAGS« is written containing the names of the tags that mkvmerge has set automatically. It equals the following currently: »BPS DURATION NUMBER_OF_BYTES NUMBER_OF_FRAMES«.
  • build system: Boost's "date/time" library is now required.
  • mkvmerge: bug fix: If a single subtitle track contains two or more entries at the same timecode then the cue duration and cue relative position elements written were wrong.
  • mkvinfo: bug fix: fixed wrong progress percentage shown during saving the information to text files. Fixes #1016.
  • mkvmerge: new feature: Added a global option for disabling writing the tags with statistics for each track: --disable-track-specific-tags.
  • mkvmerge: new feature: When identifying a Matroska file in verbose identification mode track-specific tags will be output as well. The format is »tag_:», e.g. for a tag named »BPS« with the value »224000« the output would be »tag_bps:224000«. Enhancement for #1021.
  • mkvmerge: new feature: mkvmerge will write track-specific tags with statistics (»BPS« for the average number of bits per second, »DURATION« for the duration, »NUMBER_OF_BYTES« and »NUMBER_OF_FRAMES« for the track's size in bytes and its number of frames/packets). Implements #1021.
  • mkvmerge: bug fix: Changed the file type detection order again. The text subtitle formats are now probed after those binary formats that can be detected quickly and unambiguously. This avoids some mis-detection if e.g. Matroska files as ASS text subtitles if they do contain such a track.
  • mmg: enhancement: The chapter editor will only use fast-mode parsing when loading chapters from Matroska files.
  • all: bug fix: fixed invalid memory access in the cleanup procedures which only occurred if the output was redirected with the »--redirect-output« command line parameter.
  • mkvmerge: enhancement: The last chapter entry read from MPLS files is removed if it is at most five seconds long. Patch by Andrew Dvorak (see AUTHORS).
  • mkvmerge: enhancement: added the attachment UID to the verbose identification output of Matroska files.
  • mmg: bug fix: Selecting a subtitle track correctly sets the »character set« drop-down box if no character set was set for this track. Fixes #1008.
  • mmg: enhancement: the subtitle character set cannot be set anymore for subtitle tracks read from Matroska files as mkvmerge ignores that setting for said container anyway (text subs are always encoded in UTF-8 in Matroska).
  • mmg: enhancement: mmg will look for the »mkvmerge« executable in the same directory as the »mmg« executable is located it if the location hasn't been set by the user on all operating systems (before: only on Windows). Improves detection if »mkvmerge« is not in the $PATH.



Veranderingen voor v6.9.0 - v6.9.1

  • fixed a severe bug that wasn’t present in 6.8.0



Veranderingen voor v6.8.0 - v6.9.0

  • * all: new feature: added a Brazilian Portuguese translation of the programs by Thiago KĂĽhn (see AUTHORS).
  • * mkvpropedit, mmg's header editor: bug fix: fixed a failed
  • assertion in libEBML when writing the same changes twice to certain files (those for which a seek head with a single entry
  • pointing to the elements modified by mkvpropedit/mmg's header editor; e.g. x264 creates such files).



Veranderingen voor v6.7.0 - v6.8.0

  • 2014-03-02 Moritz Bunkus
  • Released v6.8.0.
  • 2014-02-28 Moritz Bunkus
  • mkvmerge, mkvextract: new feature: added support for h.265/HEVC by merging the patches from DivX/Rovi Corp. So far HEVC is only supported as elementary streams and read from other Matroska files.
  • 2014-02-22 Moritz Bunkus
  • mkvmerge: enhancement: The deprecated ISO 639-1 code "iw" is now recognized for Hebrew.
  • 2014-02-15 Moritz Bunkus
  • mkvmerge: bug fix: The AC3 packetizer will re-derive the sampling frequency and the number of channels from the bitstream. This way obviously invalid information from the source container like a sampling frequency of 0 Hz will be fixed.
  • 2014-02-05 Moritz Bunkus
  • mkvmerge: enhancements: AVI reader: audio chunks with obvious wrong size information (bigger than 10 MB) will be skipped.
  • 2014-02-03 Moritz Bunkus
  • mkvmerge: bug fix: When reading M2TS files belonging to an MPLS playlist mkvmerge will now only copy packets whose timestamps lie between the »in time« and »out time« restrictions from the playlist's entry corresponding to that M2TS file. Fixes #985.
  • 2014-01-22 Moritz Bunkus
  • all: Windows 64bit: fixed return value checks for opening files. Fixes #972.
  • 2014-01-21 Moritz Bunkus
  • all: Windows: when redirecting the program's output with cmd.exe (e.g. »mkvinfo file.mkv > info.txt«) the programs will no longer write two line feed characters (\r) per carriage return character (\n). Fixes #970.
  • all: Windows: the default charset for the files created with »--redirect-output« has been changed from the system's local charset to UTF-8. Just like before it can be changed with »--output-charset«. See #970.
  • all: bug fix: Windows: messages written to the console (cmd.exe) are not re-encoded to the local charset and back to UTF-16 before they're handed over to ConsoleWriteW(). This fixes outputting Unicode characters to the console that are not part of the local charset. Fixes #971.
  • 2014-01-18 Moritz Bunkus
  • extract: bug fix: using names of non-existing files in »attachments«, »chapters«, »cuesheet« or »tags« mode caused mkvextract to crash instead of emitting a proper error message. Fixes #964.
  • 2014-01-17 Moritz Bunkus
  • mmg: bug fix: fixed the check for WebM-compatible track types for Opus.
  • 2014-01-12 Moritz Bunkus
  • mkvmerge: bug fix: fixed muxing Sorenson v3 (SVQ3) video from QuickTime files.
  • 2014-01-11 Moritz Bunkus
  • mkvmerge, mkvextract, mkvpropedit: enhancement: attachments in Matroska files with a missing FileUID element are not ignored anymore even though they violate the specs. mkvmerge generates a new FileUID instead.
  • 2014-01-10 Moritz Bunkus
  • mkvmerge: re-built with the 64bit build for Windows with a newer compiler version in order to fix #957. It was due to a bug in gcc: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56742
  • mmg: bug fix: mkvmerge's file identification is written to a temporary file with --redirect-output and from there into mmg instead of directly from mkvmerge. This prevents from character re-coding done by wxWidgets 3.0.0 on Windows. Fixes #959.
  • 2014-01-09 Moritz Bunkus
  • installer: enhancement: the architecture (32bit vs 64bit) is mentioned in the interface.
  • installer: bug fix: the installation directory for 64bit builds will default to the proper directory (»C:\Program Files« instead of »C:\Program Files (x86)«). Fixes #956.



Veranderingen voor v6.4.1 - v6.5.0

  • * mkvmerge: enhancement: filler NALUs will now be removed from framed h.264/AVC tracks (such as the ones read from Matroska/MP4 files) just like they have already been when handling unframed tracks.
  • * mkvextract: new feature: implemented support for extracting VP9 tracks into IVF files.
  • * mkvmerge: new feature: implemented support for VP9 read from IVF and Matroska/WebM files. Implements #899.
  • * mkvextract: enhancement: using the same track/attachment ID multiple times in "tracks", "attachments" or "timecodes_v2" mode will result in an error message instead of one empty file. Implements #914.
  • * mmg: bug fix: With wxWidgets 2.9.x/3.0.x debug message will no longer appear as modal dialogs but only go to the log window.
  • * mkvmerge: bug fix: fixed a crash when reading empty global tag files.
  • * build system: bug fix: fix autodetection of Boost's library path if it is installed in the multiarch directories (e.g. /usr/lib/i386-linux-gnu or /usr/lib/x86_64-linux-gnu).
  • * mmg: bug fix: saved window widths were growing by 1 pixel each time mmg was exited.
  • * documentation: Added a German translation of the man pages
  • * mkvmerge: bug fix: Reading OGM files with chapter entries not encoded in the system's local character set has been fixed. During identification the number of chapter entries is still output by removing any non-ASCII characters from the chapter entries. When muxing an additional warning is output if parsing those chapter entries fails, e.g. due to the format being wrong or due to the charset guessed wrongly.
  • * mkvmerge: bug fix: The "duration" element was calculated wrong if the first element in the file wasn't the one with the smallest timestamp. To be precise, it was too short by the difference between the first timestamp and the smallest one (e.g with video sequences timestamped 80ms, 0ms, 40ms, 120ms... the duration was 80ms too short).



Veranderingen voor v6.4.0 - v6.4.1

  • mkvmerge: bug fix: fixed packet ordering regression introduced in 6.4.0 if --default-duration is used for a track.



Veranderingen voor v6.3.0-1 - v6.4.0

  • mkvextract: new feature: Implemented extraction of Opus tracks into OggOpus files.
  • mkvinfo: bug fix: The track information summary enabled with -t/--track-info counted bytes in SimpleBlocks twice.
  • mkvmerge: bug fix: CueRelativePosition was wrong for BlockGroups: it pointed to the Block inside the group instead of the BlockGroup itself. CueRelativePosition elements for SimpleBlock elements are not affected. Fixes #903.
  • mkvmerge: new feature: Implemented final Opus muxing.
  • mmg: bug fix: The "jobs" folder will be created in the same mmg.exe is located in for the portable version. The installed version will still keep the folder where has already been (%APP_DATA%\mkvtoolnix\jobs).
  • mmg: bug fix: Closing mmg's window while it was minimized caused mmg to appear hidden and unmovable when started the next time.
  • mmg: bug fix: Fixed overly long startup time with wxWidgets 2.9.x (especially on Windows) by using alternative methods for initializing certain controls. Makes startup time on par with wxWidgets 2.8. See #893.
  • mkvinfo: new feature: Added support for the new Matroska elements DiscardPadding, CodecDelay and SeekPreRoll.
  • build system: libMatroska 1.4.1 is now required for building.



Veranderingen voor v6.3.0 - v6.3.0-1

  • Added new builds for Windows (6.3.0-1): same source, but built against a different version of the wxWidgets library in order to circumvent a bug in the library.



Veranderingen voor v6.2.0 - v6.3.0

  • mkvmerge: bug fix: When appending unframed AVC/h.264 tracks and setting the default duration the second and all following source parts will use the same default duration as set for the first part. Fixes #889.
  • all: enhancement (Windows only): mmg will store its settings in a file "mkvtoolnix.ini" in the same folder mmg.exe is located in if MKVToolNix hasn't been installed via its installer. If it has been installed then the settings are stored in the Windows registry. This way MKVToolNix is truly portable.
  • mmg: new feature: mmg's windows and dialogs will remember and restore their positions and sizes. Implements #878.
  • mkvmerge: bug fix: AVC/h.264 output module: fixed writing the wrong values if --fix-bitstream-timing-information is used. Fixes #888.
  • mkvmerge: bug fix: FLV reader: Implemented deriving the video dimensions for FLV1 type tracks from the frame content if they're not given within a script tag. Fixes #880.
  • mkvmerge: bug fix: Fixed handling MPEG transport streams with broken PES packet streams. Fixes #879 and #887.
  • mkvextract: bug fix: mkvextract writes the correct value for the "block alignment" value in the header of WAV files (mostly affects mono PCM audio tracks). Fixes #883.
  • all: new feature: added a Portuguese translation of the programs by Ricardo PerdigĂŁo (see AUTHORS).



Veranderingen voor v6.0.0 - v6.1.0

  • 2013-03-02 Moritz Bunkus
  • * Released v6.1.0.
  • 2013-02-24 Moritz Bunkus
  • * mkvmerge: bug fix: Fixed mkvmerge sometimes mistakenly detecting MPEG-1 video in MPEG program streams as AVC/h.264. Fixes #845.
  • * mmg: new feature: When a playlist file (e.g. MPLS Blu-ray playlist) is added mmg can optionally scan all the other files in the directory that have the same extension and present the user with the results (including them playback time, total size, number of chapters, number and types of tracks). The user can then select the actual playlist file to add. The user can configure the minimum playlist duration in order to filter out too short ones.
  • 2013-02-22 Moritz Bunkus
  • * mmg: new feature: Added an option for disabling making the suggested output file name unique by adding a running number (e.g. ' (1)'). Implements #848.
  • * mmg: new feature: The output file name can be auto-set to be located in the first input file's parent directory. Implements #849.
  • 2013-02-17 Moritz Bunkus
  • * mkvinfo, mkvpropedit, mmg's header editor: bug fix: Fixed the description for the DisplayUnit element to include value 3 ("aspect ratio").
  • 2013-02-16 Moritz Bunkus
  • * documentation: Added a Dutch translation of mmg's guide by RenĂ© Maassen (see AUTHORS).
  • * mkvmerge: bug fix: Fixed handling chapters when splitting by parts (both parts/timecodes and parts/frames). Fixes #831.
  • * mkvmerge: bug fix: Fixed reading certain MP4 atoms with invalid length fields.
  • 2013-02-06 Moritz Bunkus
  • * mkvmerge: bug fix in common AAC code: Fixed wrong calculation of AAC packet size for malformed packets resulting in "safemalloc()" failing to allocate memory. Part of a fix for #832.
  • 2013-02-03 Moritz Bunkus
  • * mkvmerge: new feature: Implemented support for reading MPLS BluRay playlist files. All M2TS files referenced from an MPLS file are processed. Chapter entries from that MPLS file are used as well. Implements #765.
  • 2013-01-26 Moritz Bunkus
  • * mmg: bug fix: Selecting one of the pre-defined values from the "split by X" argument drop down box (e.g. "700M") was not leaving the selected entry in the drop down box but set it to empty instead.
  • 2013-01-21 Moritz Bunkus
  • * mkvmerge: bug fix: Fixed reading VP6 video from FlashVideo files. Fixes #836.



Veranderingen voor v5.9.0 - v6.0.0

  • 2013-01-20 Moritz Bunkus
  • * Released v6.0.0.
  • 2013-01-14 Moritz Bunkus
  • * mkvmerge: new feature: Implemented splitting by parts based on frame/field numbers ("--split parts-frames:" in mkvmerge). Implements #819.
  • 2013-01-13 Moritz Bunkus
  • * mkvmerge: bug fix: Re-writing the track headers after they'd grown a lot (to more than the EBML void size located after them allowed for) led to an integer underflow. Then mkvmerge tried to write a void element the size of that integer (e.g. nearly 4 GB on 32bit platforms). Fixes #822 and #828.
  • 2013-01-12 Moritz Bunkus
  • * mkvmerge: bug fix in the MP4 reader: Fixed language code conversion from what is used in MP4 to the ISO 639-2 codes used in Matroska (e.g. convert from "deu" to "ger").
  • * Source distribution: source code archives (tarballs) will be compressed with xz instead of bzip2 from now on. The file name's extension will therefore change from ".tar.bz2" to ".tar.xz". The download URL changes accordingly.
  • 2013-01-11 Moritz Bunkus
  • * mkvmerge: new feature: Implemented reading VobSubs from MP4 files if they're stored in the Nero Digital way (track sub-type 'mp4s', ESDS object type identifier 0xe0). Implements #821 and the second half of #815.
  • 2013-01-08 Moritz Bunkus
  • * mmg: new feature: Command line options can be saved as default for new jobs by clicking a check box in the "add command line options" dialog.
  • 2013-01-02 Moritz Bunkus
  • * mmg: bug fix: Fixed a crash in the chapter editor if the root was selected and the user used the "Set values" button.
  • 2013-01-01 Moritz Bunkus
  • * mkvmerge, mmg: removal: The 'header removal compression' method is not turned on by default anymore. This affects the following track types: AC3, AVC/h.264, Dirac, DTS, MP3. The setting in mmg that turned it off by default has been removed.
  • 2012-12-31 Moritz Bunkus
  • * mkvmerge: new feature: Added experimental support for the Opus audio codec. Parts of an implementation of #779.
  • 2012-12-28 Moritz Bunkus
  • * mkvmerge: bug fix: "text"-type tracks in MP4 files are only treated as chapters if their track ID is listed on a "chap" atom inside a "tref" track reference atom. Fixes #815.
  • 2012-12-27 Moritz Bunkus
  • * mkvmerge, mmg: new feature: Implemented splitting by chapter numbers. Implements #504 and #814.
  • 2012-12-25 Moritz Bunkus
  • * mkvmerge: enhancement: Removed several warnings from the MPEG-2 video parser code about open GOPs, missing references. Those were too confusing for most users, even after being given additional information via email and FAQs.
  • * mkvextract: new feature: Implemented extraction of ALAC into Core Audio Format files (CAF). Implements #786.
  • 2012-12-23 Moritz Bunkus
  • * mkvmerge, mmg: new feature: Implemented splitting by frame/field numbers. Implements #771.
  • * mmg: bug fix: Fixed consistency checks when appending files and at least one track is disabled.
  • * mkvmerge: new feature: Implemented a reader for the Flash Video format (.flv). Implements #735.
  • 2012-12-22 Moritz Bunkus
  • * Build system: Boost's "variant" library is now required.
  • 2012-12-17 Moritz Bunkus
  • * mkvmerge: bug fix: ISO 639-2 language handling: The deprecated language codes "scr", "scc" and "mol" are replaced by their respective successors "hrv", "srp" and "rum". Fixes #803.
  • * mkvmerge: bug fix: Matroska reader: Fixed finding the "segment info" element if it is located behind the clusters.
  • 2012-12-16 Moritz Bunkus
  • * mkvmerge: bug fix: MP3 parser code: Fixed skipping ID3 tags so that the header directly behind the ID3 tag is recognized properly. Fixes #747.
  • * mkvmerge: bug fix: MP4 reader: Fixed handling of edit lists if the edit list is used to adjust the track's timecodes by a fixed amount (either positive or negative). Fixes #780.
  • 2012-12-10 Moritz Bunkus
  • * mkvpropedit: bug fix: Giving a non-existent file name in tags mode will result in a proper error message. Fixes #806.



Veranderingen voor v5.8.0 - v5.9.0

  • 2012-12-09 Moritz Bunkus
  • * Released v5.9.0.
  • * mkvmerge: bug fix: Fixed reading seek position values bigger than 2 GB. Fixes #805.
  • 2012-12-08 Moritz Bunkus
  • * mkvmerge: bug fix: Fixed appending non-empty tracks to empty tracks. Fixes #793.
  • * mkvmerge: bug fix: mkvmerge will now keep timecodes of PCM tracks from source files if they're available. Fixes #804.
  • 2012-12-05 Moritz Bunkus
  • * all: bug fix: EBML void elements will be skipped when reading structures from XML (e.g. chapters). Fixes #802.
  • 2012-12-02 Moritz Bunkus
  • * all: bug fix: EBML void elements will be skipped when saving structures to XML (e.g. chapters). Fixes #801.
  • * mkvmerge: bug fix: Fixed reading linked seek heads in Matroska files.
  • 2012-11-13 Moritz Bunkus
  • * mmg: bug fix: Fixed reading file names containing a '%' from a .mmg settings file (both normally saved files and the job queue files). Fixes #795.
  • 2012-10-08 Moritz Bunkus
  • * mkvmerge: enhancement: Dirac video code: Added four more pre-defined video types from Dirac spec v2.2.2 and two from Dirac Pro.
  • 2012-09-27 Moritz Bunkus
  • * mkvmerge, mmg: enhancement: Added options for turning off writing "CueDuration" elements ("--engage no_cue_duration") and "CueRelativePosition" elements ("--engage no_cue_relative_positions").
  • * mkvmerge: new feature: The element "CueRelativePosition" is written for all cue entries.
  • * mkvmerge: new feature: The element "CueDuration" will be written for all cue entries referring to subtitle tracks.
  • * mkvmerge: new feature: mkvmerge will write cues for subtitle tracks by default now.
  • * mkvinfo: new feature: added support for the new elements CueDuration, CueRelativePosition and TimecodeScaleDenimonator. The denominator's value is only shown so far but not taken into account when calculating any timecode.
  • * mkvpropedit, mmg, mkvmerge: removal: removed support for the deprecated element TrackTimecodeScale.
  • 2012-09-02 Moritz Bunkus



Veranderingen voor v5.7.0 - v5.8.0

  • 2012-09-02 Moritz Bunkus
  • Released v5.8.0.
  • mkvpropedit: new feature: Added support for adding, deleting and replacing attachments.
  • 2012-09-01 Moritz Bunkus
  • mmg: new feature: chapter editor: Added support for the edition flags "hidden", "default" and "ordered" as well as the chapter values "segment UID" and "segment edition UID". Implements ticket #736.
  • 2012-08-30 Moritz Bunkus
  • documentation: Added a Basque translation of mmg's guide by Xabier Aramendi (see AUTHORS).
  • all: bug fix: Fixed a buffer overflow in the Base64 decoder routine.
  • 2012-08-19 Moritz Bunkus
  • source: Various fixes for building with g++ 4.7.x and clang 3.1.
  • 2012-08-08 Moritz Bunkus
  • Build system: Boost's "bind" library is not required anymore. The C++11 features from "functional" are used instead.
  • 2012-08-07 Moritz Bunkus
  • mkvmerge: bug fix: MPEG transport streams whose timecodes wrap around/overflow are handled correctly. Fixes #777.
  • 2012-08-06 Moritz Bunkus
  • mkvmerge: bug fix: MP2/MP3 audio tracks in MPEG program streams that contained garbage at the start of the very first packet caused mkvmerge to use uninitialized/random values for certain parameters (sample rate, number of channels, and therefore also during timecode calculation).
  • 2012-08-05 Moritz Bunkus
  • mkvmerge: new feature: Added support for reading ALAC (Apple Lossless Audio Codec) from CAF (CoreAudio), MP4 and Matroska files. Implements #753.
  • 2012-08-02 Moritz Bunkus
  • mkvmerge: new feature: mkvmerge will remove stuffing bytes from MPEG-1/-2 video streams that are used to keep the bit rate above certain levels (the 0 bytes between slices and the following start code). Implements #734.
  • 2012-08-01 Moritz Bunkus
  • mkvmerge: bug fix: Fixed audio/video synchronisation when reading MPEG program streams with MPEG-1/2 video with respect to B frames. Fixes #579.
  • mkvmerge: enhancement: SRT files can have spaces in their timecode line's arrow (e.g. "-- >").
  • 2012-07-31 Moritz Bunkus
  • mkvmerge: bug fix: VC1: mkvmerge will now only mark frames as I frames if a sequence header precedes them directly. Fixes #755.
  • 2012-07-30 Moritz Bunkus
  • all: new feature: Added a Basque translation by Xabier Aramendi (see AUTHORS).
  • 2012-07-20 Moritz Bunkus
  • all: bug fix: The programs do not try to create directories with empty names anymore. This happened if the output file name for e.g. mkvmerge or mkvextract was only a file name without a directory component. With Boost v1.50.0 the call to "boost::filesystem::create_directory()" would result in an error if the name was empty (it didn't in earlier versions of Boost).
  • 2012-07-11 Moritz Bunkus
  • mmg: bug fix: Fixed mmg not reading the very last line ofmkvmerge's output. The result was that messages like "the cues are being written" did not show up in mmg and that the progress barwas not filled completely. Fixes #774.
  • 2012-07-08 Moritz Bunkus



Veranderingen voor v5.6.0 - v5.7.0

  • Released v5.7.0.
  • mmg: bug fix: mmg will no longer print false warnings about a chapter UID not being unique. Fixes #760.
  • mkvmerge, mkvpropedit, mmg: bug fix: All tools can now deal with 64bit UID values (chapter UIDs, edition UIDs etc).
  • mkvmerge: new feature: If "splitting by parts" is active and the last split part has a finite end point then mkvmerge will finish muxing after the last part has been completed. Implements #768.
  • 2012-06-29 Moritz Bunkus
  • mkvmerge: bug fix: The DTS and TrueHD packetizers were not flushed correctly. In some rare circumstances this could lead to mkvmerge aborting with an error message about the packet queue not being empty at the end of the muxing process. Fixes #772.
  • 2012-06-17 Moritz Bunkus
  • mmg, mkvinfo's GUI, all .exes: enhancement: Added new icons by Ben Humpert based on the ones by Eduard Geier (see AUTHORS).
  • 2012-06-05 Moritz Bunkus
  • mkvmerge: bug fix: Fixed handling of tracks in QuickTime/MP4 files with a constant sample size. This fixes the other reason for the "constant sample size and variable duration not supported" error. Fixes issue 764.
  • mkvmerge: bug fix: Tracks in QuickTime/MP4 files with empty chunk offset tables (STCO and CO64 atoms) are ignored. This fixes one of the reasons for the "constant sample size and variable duration not supported" error.
  • 2012-06-03 Moritz Bunkus
  • mmg: bug fix: Fixed mmg's excessive CPU usage during muxing.
  • 2012-06-01 Moritz Bunkus
  • mkvmerge: bug fix: Reading DTS from AVI files often resulted in the error message that DTS headers could not be found in the first frames. This has been fixed. Fixes issue 759.
  • 2012-05-31 Moritz Bunkus
  • Documentation: Updated the cross-compilation guide and fixed the "setup_cross_compilation_env.sh" script.
  • 2012-05-27 Moritz Bunkus



Veranderingen voor v5.5.0 - v5.6.0

  • 2012-05-27 Moritz Bunkus
  • Released v5.6.0.
  • documentation: Added Spanish translation of mmg's guide by Israel Lucas Torrijos (see AUTHORS).
  • 2012-05-20 Moritz Bunkus
  • mkvmerge: bug fix: SRT subtitle entries with colons as the decimal separator are accepted. Fix for issue 754.
  • 2012-05-13 Moritz Bunkus
  • mkvmerge: bug fix: XML tag files with tags that only contained a name and nested were wrongfully rejected as invalid. Fixes issue 752.
  • mkvmerge: enhancement: mkvmerge was optimizied to keep cluster timecodes strictly increasing in most situations.
  • 2012-04-24 Moritz Bunkus
  • all: Added a translation to Polish by Daniel (see AUTHORS).
  • 2012-04-16 Moritz Bunkus
  • mkvextract: bug fix: Extraction of AVC/h.264 was completely broken after 2012-04-09 resulting in files with a length of 0 bytes.
  • 2012-04-09 Moritz Bunkus
  • mmg: new feature: When adding a Matroska file that has either the "previous segment UID" or the "next segment UID" set then mmg will copy those two and the source file's segment UID into the corresponding controls on the "globla" tab if they haven't been set before. Implements ticket 733.
  • mkvmerge: new feature: The verbose identification mode for Matroska files will now includes the "segment UID", the "next segment UID" and "previous segment UID" elements.
  • mkvmerge: enhancement: In "--split parts:" mode mkvmerge will use the output file name as it is instead of adding a running number to it if all the ranges to be kept are to be written into a single output file. Implements ticket 743.
  • mkvextract: bug fix: mkvextract will no longer abort extracing h.264 tracks if it encounters a NAL smaller than its size field. Instead it will warn about it and drop the NAL.
  • 2012-04-08 Moritz Bunkus
  • mkvmerge: bug fix: Writing more than two parts into the same file with "--split parts:" resulted in the timecodes of the third and all following parts to be wrong. Fixes ticket 740.
  • mkvmerge: bug fix: The "--split parts:" functionality was not taking dropped ranges into account when calculating the segment duration for files that more than one range was written to. Fixes ticket 738.
  • mkvmerge: bug fix: The "--split parts:" functionality was producing a small gap between the first part's last packet's timecode and the second part's first packet's timecode if two parts are written to the same file. Fixes ticket 742.
  • 2012-04-07 Moritz Bunkus
  • mkvmerge: bug fix: The "--split parts:" functionality was writing a superfluous and empty first part if the first range starts at 00:00:00. Fixes ticket 737.
  • 2012-04-07 Moritz Bunkus
  • mmg, build system: Fixed building with wxWidgets 2.9.3.



Veranderingen voor v5.3.0 - v5.4.0

  • 2012-03-10 Moritz Bunkus
  • Released v5.4.0.
  • 2012-03-08 Moritz Bunkus
  • mkvmerge: bug fix: Fixed wrong calculation of the maximum number of ns per cluster in certain fringe cases if timecode scale was set to "auto" mode ("--timecode-scale -1"). Fix for bug 707.
  • 2012-03-07 Moritz Bunkus
  • build system: The C++ compiler must now support the C++11 keyword 'nullptr'. configure checks for it. For GCC this means at least v4.6.0.
  • mkvinfo: new feature: mkvinfo will output the track ID that mkvmerge and mkvextract would use for a track. This information is shown alongside the "track number" element in verbose mode and in the track summary in summary mode.
  • mkvmerge, mmg: enhancement: The "--default-duration" in mkvmerge and the "FPS" drop down box in mmg now accept "p" or "i" as a unit -- as in e.g. "25p" or "50i". Several commonly used values have been added to mmg's "FPS" drop down box and others removed.
  • mkvmerge: bug fix: When using an external timecode file with AVC/h.264 video the default duration will be set to the most-often used duration in the timecode file.
  • mmg: enhancement: Added the values "50", "60" and "48000/1001" to the list of commonly used values for the "FPS" input field.
  • mkvmerge: bug fix: AVC/h.264 packetizer: The value given with "--default-duration" (after internal conversion from the unit given by the user to duration in nanoseconds) is now again interpreted as the duration of a frame and not of a field.
  • mkvmerge: bug fix: SRT subtitles: timecodes can contain the minus sign before any digit, not just before the first one.
  • 2012-03-05 Moritz Bunkus
  • mkvmerge: bug fix: Sometimes non-AC3 files were mistakenly for AC3 after the re-write of the AC3 handling code on 2012-02-26. This has been rectified. Fix for bug 723.
  • 2012-03-04 Moritz Bunkus
  • mkvmerge: enhancement: mkvmerge will keep the "enabled" track header flag when muxing. mkvmerge will also output its value in verbose identification mode as "enabled_track".
  • mkvmerge: enhancement: MicroDVD text subtitles are recognized as an unsupported format instead of an unknown format.
  • mmg: The warning that no default duration/FPS has been given for AVC/h.264 tracks has been removed.
  • mkvmerge: bug fix: Complete re-write of the timecode handling code for AVC/h.264 tracks. Now handles several cases correctly: interlaced video, video with multiple or changing SPS with different timing information. The timing information is extracted from the bitstream. Therefore the user doesn't have to specify the default duration/FPS himself anymore. Fix for bugs 434 and 688.
  • 2012-02-26 Moritz Bunkus
  • build system: Boost's "rational" library is now required.
  • mkvmerge: bug fix: Complete re-write of the (E)AC3 parsing and handling code. Dependent EAC3 frames are now handled correctly. Fix for bug 704.
  • 2012-02-22 Moritz Bunkus
  • mkvmerge: bug fix: The width and height of h.264 video tracks with a pixel format other than 4:2:0 are now calculated correctly. Fix for bug 649. Patch by Nicholai Main (see AUTHORS).
  • mkvmerge: bug fix: Fixed file type recognition and frame drops for VC1 elementary streams that do not start with a sequence header but with frame or field packets instead.
  • mkvmerge: bug fix: Fixed mis-detection as unsupported DV files (happened for e.g. PGS subtitle files).
  • 2012-02-12 Moritz Bunkus
  • doc: enhancement: Updates for option file usage and supported subtitle formats.



Veranderingen voor v5.2.1 - v5.3.0

  • 2012-02-09 Moritz Bunkus
  • Released v5.3.0.
  • 2012-02-06 Moritz Bunkus
  • mkvmerge: new feature: mkvmerge will parse and apply the audio encoder delay in MP4 files that contain said information in the format that iTunes writes it. Fix for bug 715.
  • 2012-02-02 Moritz Bunkus
  • mkvmerge: new feature: Implemented support for treating several input files as if they they had been concatenated binarily into a single big input file. Snytax is "mkvmerge -o out.mkv ( in1.ts in2.ts in3.ts )". This feature has already been present since version 5.1.0 but never been mentioned in the ChangeLog. Support for this feature in mmg is still missing.
  • 2012-01-31 Moritz Bunkus
  • mkvmerge: bug fix: Blocks with "BlockAdditions" will no longer be muxed as "SimpleBlock" elements discarding the additions but instead as "BlockGroup" elements. This applies to e.g. WAVPACK4 tracks with correction files as the correction data is stored in "BlockAdditions". Fix for bug 713.
  • mkvmerge: bug fix: Fixed some more issues with (E)AC3 being misdtected as AVC elementary streams.
  • 2012-01-27 Moritz Bunkus
  • mmg: bug fix: The header editor was sometimes creating two instances of an element if an element was added to the second or one of the later tracks. Fix for bug 711.
  • mkvpropedit, mmg: bug fix: Trying to modify a file located in a path mounted with GVFS SFTP will no longer crash the programs. Instead an error message is output if an error occurs. Fix for bug 710.
  • 2012-01-25 Moritz Bunkus
  • mkvmerge: bug fix: Fixed integer underflows in the read caching code resulting in invalid memory access. Happened in broken or incomplete files only. Fix for bug 709.
  • 2012-01-23 Moritz Bunkus
  • mkvmerge: bug fix: Appending AVI, Matroska or MPEG program stream files with DTS audio tracks will not result in a warning that the appended DTS tracks might not be compatible. Fix for bug 705.
  • 2012-01-13 Moritz Bunkus
  • mkvextract: bug fix for the "timecodes_v2" mode: mkvextract will write one more timecode than there are frames in the file. The last timecode written will be the the sum of the last frame's timecode and duration with the "last frame" being the one with the highest timecode. Fix for bug 691.
  • 2012-01-12 Moritz Bunkus
  • mkvmerge: bug fix: Fixed writing into paths on which a drive is mounted on Windows. Fix for bug 701.
  • mkvmerge: enhancement: Identification output for Matroska files: Added the track number header field as "number" to the verbose identification mode.
  • 2012-01-09 Moritz Bunkus
  • mkvmerge: enhancement: Identification output for Matroska files: Added a field "content_encoding_algorithms" that contains a comma-separated list of encoding algorithm IDs used for that track. For example, "content_encoding_algorithms:3" would indicate that header removal compression is used.
  • 2012-01-07 Moritz Bunkus
  • mkvmerge: enhancement: Identification output for Matroska files: Added several fields to mkvmerge's verbose identification mode for tracks: UID, CodecID, length and content (as a hex dump) of the codec private data.
  • mkvmerge: bug fix: Fixed a segmentation fault in the DTS detection code. Fix for bug 698.
  • 2012-01-05 Moritz Bunkus
  • mkvextract: bug fix: The track IDs used in the "timecodes_v2" extraction mode are consistent again with the IDs that mkvmerge's identification reports and that mkvextract's "tracks" extraction mode uses. Fix for bugs 689 and 694.
  • 2012-01-04 Moritz Bunkus
  • mkvmerge: enhancement: Added video pixel dimensions to the output of "--identify-verbose" for Matroska files.



Veranderingen voor v5.1.0 - v5.2.0

  • 2011-12-18 Moritz Bunkus
  • Released v5.2.0.
  • mkvmerge, mmg: bug fix: Automatic MIME type recognition for TrueType fonts will result in "application/x-truetype-font" again instead of "application/x-font-ttf". Fix for bug 682.
  • 2011-12-14 Andriy Bilous'ko
  • documentation: enhancement: Added a Ukrainian translation for mkvextract's man page.
  • 2011-12-13 Moritz Bunkus
  • mkvinfo: bug fix: Various elements used to have a space between their names and their value's hex dump. In v5.1.0 that space was accentally removed. It has been added again. Fix for bug 583.
  • 2011-12-12 Moritz Bunkus
  • mkvmerge: bug fix: Turn off input file buffering for badly interleaved MP4 files.
  • 2011-12-11 Moritz Bunkus
  • mkvmerge: bug fix: Changed how mkvmerge assigns IDs to tracks in source files for Matroska and MP4 files. That way files whose headers contain the same ID for multiple tracks will work correctly. Fix for bug 681.
  • 2011-12-07 Moritz Bunkus
  • mkvmerge: enhancement: The VP8 output module will always re-derive frame types (key frame vs. non-key frame).
  • mkvmerge: bug fix: VP8 read from AVI could not be put into WebM compatible files.
  • mkvmerge: bug fix: Fixed a rare audio type mis-detection of MP2/MP3 audio tracks in MPEG program streams causing mkvmerge to abort with an error message.
  • 2011-12-04 Nils Maier
  • mkvmerge, mkvextract: enhancement: Implemented input file buffering in mkvmerge and improved/implemented output file buffering in other tools.
  • 2011-12-03 Moritz Bunkus
  • mmg, mkvinfo's GUI: enhancement: Added new icons based on the work of Alexandr Grigorcea (see AUTHORS).
  • mmg: bug fix: Fixed a memory leak in mmg's header editor that caused the "open file" function to stop working after opening a few files. Fix for bug 679.
  • 2011-11-28 Moritz Bunkus



Veranderingen voor v5.0.1 - v5.1.0

  • 2011-11-27 Moritz Bunkus
  • Released v5.1.0.
  • 2011-11-26 Moritz Bunkus
  • mkvmerge: bug fix: Fixed bogus huge timecodes sometimes occurring for AVC/h.264 video tracks read from MPEG transport streams.
  • 2011-11-24 Moritz Bunkus
  • all: enhancement: Made all EXEs declare their required access level privileges for Windows' User Access Control.
  • mmg: enhancement: Made mmg DPI-aware on Windows (tested up to 144 DPI).
  • 2011-11-09 Moritz Bunkus
  • mmg: bug fix: mmg will append ".xml" to the file name entered when saving from the chapter editor if no extension was given.
  • 2011-11-06 Moritz Bunkus
  • mkvinfo: bug fix: Improved skipping broken data on all operating systems.
  • mkvmerge, mkvextract: bug fix: Skipping broken data in Matroska file often caused the program to abort on Windows. This has been fixed so that processing continues after the broken part. Fix for bug 668.
  • 2011-11-04 Moritz Bunkus
  • examples: Added XSLT 2.0 stylesheets in the "examples/stylesheets" directory for turning Matroska chapters into cue sheet and split points for "shntool" (useful for situations in which you have e.g. a live recording from a concert including chapters and want to create one audio file per song).
  • mkvmerge: bug fix: Fixed reading VC1 video tracks from Matroska files that don't use VC1 start markers (0x00 0x00 0x01 ...).
  • 2011-10-30 Moritz Bunkus
  • mmg: enhancement: Added "ogv" to the list of known file extensions for "Ogg/OGM audio/video files". Implements bug 667.
  • mmg: bug fix: A utility function for breaking a line into multiple ones was accessing invalid memory in rare situations causing mmg to crash. Could happen e.g. when adding a job to the job queue.
  • 2011-10-24 Moritz Bunkus
  • mkvmerge: bug fix: mkvmerge will use DTS instead of PTS for VC1 video tracks read from MPEG transport streams.
  • 2011-10-23 Moritz Bunkus
  • build system: Boost's "Range" library is now required.
  • build system: Boost v1.46.0 or newer is now required. As a consequence included copies of some of Boost's libraries have been removed (foreach, property tree).
  • build system: The C++ compiler must now support several features of the C++11 standard: initializer lists, range-based 'for' loops, right angle brackets, the 'auto' keyword and lambda functions. configure checks for each of these. For GCC this means at least v4.6.0.
  • 2011-10-22 Moritz Bunkus
  • mkvmerge: bug fix: Fixed reading MPEG transport streams on big endian systems.
  • mkvmerge: enhancement: Added support for reading AAC tracks from MPEG transport streams.
  • 2011-10-17 Moritz Bunkus
  • mkvmerge: bug fix: Relaxed the compatibility checks when concatenating VP8 video tracks.
  • 2011-10-16 Moritz Bunkus
  • mkvmerge: bug fix: Fixed PCM audio in WAV sometimes being detected as DTS.
  • mkvmerge: enhancement: The verbose identification mode will add the properties "default_duration", "audio_sampling_frequency" and "audio_channels" if appropriate and if the corresponding header elements are present.
  • 2011-10-13 Moritz Bunkus
  • Packaging: In v5.0.1 mmg's guide was accidentally moved into the "mkvtoolnix" Debian/Ubuntu package. It has been moved back into "mkvtoolnix-gui" again.
  • 2011-10-11 Moritz Bunkus
  • mkvmerge: enhancement: "Castilan" has been merged with "Spanish" into "Spanish; Castillan" in the ISO 639 language list as both share the same ISO 639-2 code "spa".
  • 2011-10-09 Moritz Bunkus



Veranderingen voor v4.9.1 - v5.0.0

  • 2011-09-24 Moritz Bunkus
  • * Released v5.0.0.
  • * build system: libEBML 1.2.2 and libMatroska 1.3.0 are required for building. If external versions are not found or if they're too old then the included versions will be used as a fallback.
  • 2011-09-21 Moritz Bunkus
  • * mkvmerge: bug fix: The "writing application" element will not be localized but always be written in English.
  • 2011-09-20 Moritz Bunkus
  • * mkvmerge: new feature: MPEG TS: mkvmerge will extract the track languages from a corresponding clpi (clip info) file. That file is searched for in the same directory and in ../CLIPINF and must have the same base name but with the ".clpi" extension.
  • * mkvmerge: enhancement: Added new stereo mode options to match the current specs. The new options are "anaglyph_green_magenta" (12), "both_eyes_laced_left_first" (13) and "both_eyes_laced_right_first" (14).
  • * mkvmerge: The --stereo-mode named option "anaglyph" was renamed to "anaglyph_cyan_red" to match the specs. The numerical value (10) remains unchanged.
  • 2011-09-18 Moritz Bunkus
  • * mkvextract: bug fix: Fixed attachment number displayed during extraction. Fix for bug 663.
  • * mkvmerge: enhancement: MPEG TS: Added support for HDMV PGS subtitles.
  • * mkvmerge: enhancement: MPEG TS: Added support for DTS HD Master Audio tracks.
  • 2011-09-17 Moritz Bunkus
  • * mkvmerge: enhancement: MPEG TS: Streams that are mentioned in the PMT but do not actually contain data are neither reported during identification nor muxed.
  • 2011-09-14 Moritz Bunkus
  • * mkvmerge: new feature: MPEG TS: Added support for reading the language code.
  • 2011-09-13 Moritz Bunkus
  • * mmg: enhancement: Added MPEG transport streams to the "add file" dialog file selector.
  • * mkvmerge: new feature: MPEG TS: Added support for normal DTS tracks.
  • * mkvmerge: Tons of fixes and additions to the MPEG transport stream demuxer.
  • 2011-09-10 Moritz Bunkus
  • * build system: configure will accept external versions of libEBML and libMatroska again. Minimum required versions are libEBML 1.2.1 and libMatroska 1.1.0.
  • 2011-09-07 DenB
  • * All: Updated the French translation with a complete set by DenB (see AUTHORS).
  • 2011-09-05 Cosme Domínguez
  • * mmg: mmg respects the XDG Base Directory Specification regarding its configuration files (environment variable $XDG_CONFIG_HOME/mkvtoolnix if set, otherwise ~/.config/mkvtoolnix).
  • 2011-08-24 Moritz Bunkus
  • * all: Added an Lithuanian translation by Mindaugas Baranauskas (see AUTHORS).
  • 2011-08-14 Massimo Callegari
  • * mkvmerge: new feature: Implemented a MPEG transport stream demuxer.
  • 2011-08-02 Moritz Bunkus
  • * mkvmerge: enhancement: When looking for MPEG files with the same base name as a source file mkvmerge will be stricter what it accepts. The file name must consist of at least one char followed by "-" or "_" followed by a number. That will match VTS_01_1.VOB but not e.g. "some_series_s03e10.mpg".
  • 2011-07-31 Moritz Bunkus
  • * mkvmerge: bug fix: Opening MPEG files with numbers in their name from folders with e.g. Cyrillic names failed on Windows.
  • * mkvmerge: bug fix: Several elements are not written when creating WebM compliant files. In the segment headers: SegmentUID, SegmentFamily, ChapterTranslate, PreviousSegmentUID, NextSegmentUID. In the track headers: MinCache, MaxCache and MaxBlockAdditionID.
  • 2011-07-19 Moritz Bunkus
  • * mkvmerge: enhancement: Sped up file identification by caching read operations.
  • * mkvmerge: bug fix: Fixed identifying QuickTime/MP4 files that start with a 'skip' atom.
  • 2011-07-13 Moritz Bunkus
  • * mkvmerge: bug fix: Fixed a crash when reading AVI files with DTS audio tracks that do not contain valid headers in the first couple of packets. Fix for bug 646.



Veranderingen voor v4.9.0 - v4.9.1

  • 2011-07-11 Moritz Bunkus
  • Released v4.9.1.
  • mkvmerge: bug fix: Fixed endless loop when reading AVI files on Windows if MKVToolNix was compiled with a gcc mingw cross compiler v4.4.x. Fix for bug 642.
  • mkvmerge: bug fix: Fixed long file identification time caused by DV detection. Fix for bug 641.



Veranderingen voor v4.8.0 - v4.9.0

  • 2011-07-10 Moritz Bunkus
  • * Release v4.9.0.
  • 2011-07-09 Moritz Bunkus
  • * mkvmerge: bug fix: DV files are recognized as an unsupported container type. Fix for bug 630.
  • * mkvmerge: bug fix: Fixed handling block groups in Matroska files with a duration of 0.
  • 2011-07-08 Moritz Bunkus
  • * mmg: Various compatibility fixes for use with wxWidgets 2.9.x.
  • 2011-06-23 Moritz Bunkus
  • * mmg: bug fix: Fixed building with Sun Studio's C compiler.
  • 2011-06-03 Moritz Bunkus
  • * mkvmerge: bug fix: ISO 639-2 terminology language codes are converted to the corresponding bibliography code upon file identification (e.g. 'deu' is converted to 'ger').
  • 2011-06-02 Moritz Bunkus
  • * mkvinfo: bug fix: The timecode scale is retrieved first before applying it to the segment duration.
  • * all: Added an Italian translation by Roberto Boriotti and Matteo Angelino (see AUTHORS).
  • 2011-05-28 Moritz Bunkus
  • * mmg: bug fix: Fixed populating the 'compression' drop down box according to what mkvmerge was compiled with.
  • 2011-05-26 Moritz Bunkus
  • * mkvmerge: bug fix: When a DTS track is read from a source file that provides timecodes (e.g. Matroska files) then those timecodes will be preserved.
  • 2011-05-25 Moritz Bunkus
  • * mkvmerge: Fixed remuxing certain VC1 video tracks from Matroska files. Fix for bug 636.
  • 2011-05-23 Moritz Bunkus



Veranderingen voor v4.7.0 - v4.8.0

  • 2011-05-23 Moritz Bunkus
  • * Released v4.8.0.
  • * mmg: bug fix (Windows): mmg will no longer convert the "mkvmerge executable" from just "mkvmerge" into a full path name when writing its preferences to the registry upon existing.
  • * mkvmerge: enhancement: Added support for VobSub IDX files with negative "delay" fields.
  • 2011-05-11 Moritz Bunkus
  • * mkvmerge: bug fix: The 'doc type read version' EBML header field is only set to 2 even if a stereo mode other than 'none' is used for at least one video track. Fix for bug 625.
  • 2011-05-06 Moritz Bunkus
  • * mkvpropedit: new feature: Added support for adding, replacing and removing chapters.
  • 2011-05-03 Moritz Bunkus
  • * All: Avoided a segmentation fault in gcc by not including a pre-compiled header if FLAC or CURL support is disabled.
  • * mkvmerge: bug fix: Reading DTS files stored in 14-to-16 mode were read partially.
  • 2011-04-28 Moritz Bunkus
  • * mkvmerge: enhancement: mkvmerge will rederive frame types for VC1 video tracks stored in Matroska files instead of relying on the container information. This fixes files created by e.g. MakeMKV that mark all frames as key frames even if they aren't.
  • 2011-04-26 Moritz Bunkus
  • * mkvmerge: bug fix: Fixed detection of AAC files with ADIF headers. Fix for bug 626.
  • 2011-04-25 Moritz Bunkus
  • * mkvmerge: bug fix: The 'doc type version' and 'doc type read version' EBML header fields are only set to 3 if a stereo mode other than 'none' is used for at least one video track. Fix for bug 625.
  • * mkvmerge: enhancement: File identification for tracks read from Matroska files with a codec ID of "A_MS/ACM" will show the track's format tag field if it is unknown to mkvmerge. Implements bug 624.
  • 2011-04-22 Moritz Bunkus
  • * mkvmerge: new feature: Track, tag and attachment selection via --audio-tracks, --video-tracks etc. can have their meaning reversed by prefixing the list of IDs with "!". If it is then mkvmerge will copy all tracks/tags/attachments but the ones with the IDs given to the option (e.g. "--attachments !3,6").
  • * mkvmerge: bug fix: Fixed handling AVIs with AAC audio format tag 0x706d and bogus private data size. Fix for bug 623.
  • 2011-04-20 Moritz Bunkus



Veranderingen voor v4.6.0 - v4.7.0

  • build system: For the time being the build system will always build and link statically against the internal versions of libEBML and libMatroska.
  • mkvmerge: bug fix: Fixed appending timecode calculation for appended subtitle tracks if the subtitle tracks are read from complex containers (e.g. Matroska, MP4, AVI etc). Fix for bug 620.



Veranderingen voor v4.5.0 - v4.6.0

  • Released v4.6.0.
  • build system: Fixed building the Qt version of mkvinfo's GUI (again). Fix for bug 576.
  • mmg: bug fix: If the header editor finds 'language' elements with ISO-639-1 codes (e.g. "fra" instead of "fre" for "French") then it will map the code to the corresponding ISO-639-2 code. Fix for bug 598.
  • mmg: bug fix: Fixed one of the issues causing mmg to report that it is configured to use an unsupported version of mkvmerge when the reported version was actually empty.
  • mkvmerge: enhancement: HD-DVD subtitles are recognized as being an unsupported file format. This makes the error message presented to the user a bit clearer. Fix for bug 600.
  • build: Boost 1.36.0 or newer is required (up from 1.34.0). Also fixed building with v3 of Boost's filesystem library, e.g. with Boost 1.46.0 Beta 1 or newer.
  • mkvpropedit: new feature: Added support for adding, replacing and removing tags.
  • all: Added a translation for the programs into Turkish by ßou?ock (see AUTHORS).
  • build system: Fixed compilation if configure choses the internal versions of libebml and libmatroska while older versions are still installed in a location named with "-I..." or "-L..." in CFLAGS/CXXFLAGS/LDFLAGS or with configure's "--with-extra-includes" and "--with-extra-libs" options.



Veranderingen voor v4.4.0 - v4.5.0

  • build: Building mkvtoolnix now requires libebml v1.2.0 and libmatroska v1.1.0 or later.
  • build: enhancement: mkvtoolnix now includes libebml and libmatroska. The configure script will use them if either no installed versions of them is found or if the installed version is too old.



Veranderingen voor v4.3.0 - v4.4.0

  • 2010-10-31 Moritz Bunkus
  • * Released v4.4.0.
  • * build system: bug fix: Installation no longer fails if xsltproc is available but the DocBook stylesheets aren't. Fix for bug 575.
  • * mkvmerge: new feature: If the name of an input file starts with '=' then mkvmerge will not try to open other files with the same name (e.g. 'VTS_01_1.VOB', 'VTS_01_2.VOB', 'VTS_01_3.VOB') from the same directory. A single '=' as an argument disables this as well for the next input file. Implements bug 570.
  • * mmg: new feature: Added an option to disable extra compression when adding tracks by default.
  • * mkvmerge: bug fix: Made file type detection stricter for MP3, AC3 and AAC files. This prevents mis-detection of other file types as one of these for certain files. Fix for bug 574.
  • 2010-10-19 Moritz Bunkus
  • * mkvmerge: bug fix: Fixed the usage of iterators with the STL "deque" template class. This caused mkvmerge to abort on systems which did not use the GNU implementation of the standard template library, e.g. OpenSolaris with the SunStudio compiler. Fix for bug 567.
  • 2010-09-28 Moritz Bunkus
  • * mkvmerge: enhancement: The warning about subtitle entries that are skipped because their start time is greater than their end time now includes the subtitle number.
  • 2010-09-23 Moritz Bunkus
  • * Build system: bug fix: 'drake install' did not work if the login shell was not POSIX compatible (e.g. fish). Fix for bug 559.
  • 2010-09-19 Moritz Bunkus
  • * mkvmerge: enhancement: When appending two Matroska files which both contain chapters the chapter entries of all editions will be merged even if the edition's UIDs were different to begin with. This is done based on the order of the edition. If both files contain three editions each then the chapters from the first edition in the second file will be put into the first edition from the first file; the chapters from the second edition into the second edition and so on.
  • * all: Added a translation of the programs into French by Trinine (see AUTHORS).
  • * mkvmerge: bug fix: The MPEG ES reader was accessing uninitialized data. This could lead to crashes or source files not being read correctly.
  • * mkvmerge: bug fix: Using "--no-video" on AVI files caused the video track to be mistaken for an audio track and included anyway. Fix for bug 558.
  • 2010-09-04 Moritz Bunkus



Veranderingen voor v4.1.1 - v4.3.0

  • mkvmerge: bug fix: Appending tracks which would normally be compressed (e.g. with header removal compression) and turning off compression for those tracks with "--compression TID:none" (or the corresponsing option in mmg) was resulting in the second and all following appended tracks to be compressed all the same.



Veranderingen voor v3.4.0 - v4.0.0

  • Released v4.0.0.
  • build: Building mkvtoolnix now requires libebml v1.0.0 and libmatroska v1.0.0 or later.
  • all command line tools: bug fix: Fixed the output of eastern languages like Japanese or Chinese under cmd.exe on Windows.
  • mmg: new feature: Added the estimated remaining time to the mux and job dialogs.
  • all: Added a translation of the programs into Dutch by René Maassen (see AUTHORS).
  • mkvextract: feature removal: Removed support for extracting FLAC tracks into Ogg FLAC files. Instead they're always written into raw FLAC files. The option "--no-ogg" has been removed as well.
  • mkvmerge: feature removal: Removed support for the FLAC library older than v1.1.1.
  • mkvmerge: bug fix: Fixed support for reading FLAC tracks from Ogg files following the FLAC-in-Ogg-mapping established with FLAC v1.1.1. Fix for bug 488.
  • mmg: enhancement: The "mkvmerge executable" input in the preferences dialog is not read-only anymore. Final part of a fix for bug 490.
  • mmg: bug fix: mmg will output a warning if it is used with a mkvmerge executable whose version differs from mmg's version. Part of a fix for bug 490.
  • mmg: bug fix: If adding a file fails mkvmerge's error message will be shown in a scrollable dialog instead of a normal message box. Part of a fix for bug 490.
  • mmg: Added 'IVF' files to the list of known input file types.
  • mkvmerge: Added support for reading IVF files with VP8 video tracks.
  • mkvextract: Added support for extracting VP8 video tracks into IVF files.
  • mkvmerge, mkvinfo, mkvextract: bug fix: Fixed handling of clusters missing a cluster timecode element.
  • mkvinfo GUI: bug fix: Frames for simple blocks were shown at the wrong place in the element tree.
  • mkvmerge, mkvextract: Fixed handling of clusters with an unknown size.
  • mkvinfo: bug fix: Fixed handling clusters with an unknown size.
  • mkvinfo: new feature: Added an option ("-z" / "--size") for displaying each element's size property. Elements with an unknown/infinite size are shown as "size is unknown".
  • mmg: new feature: Added a checkbox for enabling "WebM" mode. This will also enable the same limitations that mkvmerge enables: Only VP8 and Vorbis tracks, no chapters, no tags. The output file name extension will be changed to ".webm" upon enabling the mode.
  • mkvmerge: change: mkvmerge will not write track header elements whose actual value equals their default value anymore.
  • mkvmerge: new feature: Neither chapters nor tags will be written to WebM compliant files. Warnings are issued if chapters or tags are found and not disabled.
  • mkvmerge: bug fix: Matroska files without clusters are accepted as valid input files again.
  • mmg: enhancement: Added "WebM" with the extension "webm" to the list of known file types.
  • mkvmerge: new feature: Added support for muxing VP8 video tracks.
  • mkvmerge: enhancement: mkvmerge will no longer put all clusters into a meta seek element resulting in smaller file size. The parameter "--no-clusters-in-meta-seek" has been renamed to "--clusters-in-meta-seek" and its meaning reverted.
  • mkvmerge: enhancement: WebM compatibility mode will be turned on automatically if the output file name's extension is '.webm', '.webma' or '.webmv'.
  • mkvinfo GUI: enhancement: Added "webm" to the list of known file name extensions for WebM files both for the "Open file" dialog and the drag & drop support.
  • mkvmerge: new feature: Added options "--webm"/"--web-media" that enable the WebM compatibility mode. In this mode only Vorbis audio tracks and VP8 video tracks are allowed. Neither chapters nor tracks are allowed. The DocType element is set to "webm".
  • mkvinfo GUI: bug fix: Opening more than one file without restarting mkvinfo GUI could result in wrong timecodes due to variables not being reinitialized.
  • mkvinfo: bug fix: Binary elements shorter than 10 bytes were not output correctly.
  • Build system: bug fix: The man page installation process only installed the English originals instead of the Japanese and Chinese translations.



Veranderingen voor v2.9.9 - v3.0.0

  • Released v3.0.0.
  • mmg: enhancement: Added support for showing the muxing progress for both normal muxes and the job manager in Windows 7's taskbar.



Veranderingen voor v2.6.0 - v2.7.0

  • Build requirements changed: mkvtoolnix requires Boost v1.32.0 or later.



Veranderingen voor v2.4.0 - v2.4.1

  • 2008-12-04 Moritz Bunkus
  • Released v2.4.1.
  • Build system: bug fix: Configure does not use "uname -m" for the detection of the Boost libraries anymore but configure's "$target" environment variable. This fixes the Boost detection for cross compilation builds. Fix for bug 311. Patch by Dominik Mierzejewski (see AUTHORS).
  • 2008-12-03 Moritz Bunkus
  • mkvmerge: bug fix: PCM audio tracks bigger than approximately 8 GB were cut off after approximately 8 GB.
  • 2008-12-02 Moritz Bunkus
  • mkvmerge: bug fix: mkvmerge recognizes SRT subtitle files with timecodes that contain spaces between the colons and the digits and timecodes whose numbers are not exactly two or three digits long.
  • 2008-11-28 Moritz Bunkus
  • mmg: bug fix: mmg processes window events much more often during muxing.
  • all: Updated the language code list from the offical ISO 639-2 standard.
  • 2008-11-04 Moritz Bunkus
  • mmg: bug fix: Split timecodes with more than three decimals were not allowed even though the docs say that they are. They are now, as mkvmerge supports such timecodes.
  • 2008-11-03 Moritz Bunkus
  • mkvmerge: bug fix: Changed the way mkvmerge calculates the timecodes when appending files. Should result in better audio/video synchronization.
  • mkvmerge: new feature: Added support for reading SRT and SSA/ASS subtitles from AVI files (fix for bug 64).
  • 2008-11-01 Moritz Bunkus
  • mkvmerge: bug fix: mkvmerge's LZO compressor would segfault if mkvmerge was compiled against v2 of the LZO library and the v1 LZO headers were not present.
  • 2008-10-29 Moritz Bunkus
  • mkvmerge: bug fix: SRT subtitle files are also handled correctly if the timecode lines do not have spaces around the arrow between the start and end timecodes.
  • 2008-10-13 Moritz Bunkus
  • mkvextract: bug fix: Matroska elements with binary data were output as garbage in XML files.
  • 2008-10-11 Moritz Bunkus



<<Terug naar software beschrijving