Digital Digest -> Software -> MKVToolnix -> History & Old Downloads

MKVToolnix -> Version History

This is the version history page for MKVToolnix, showing the last 20 software updates. You can return to the main page for this software by clicking here.

Index:


Version 56.1.0
  • Release Date: Apr 10, 2021
  • Download(s):
  • # Version 56.1.0 "My Friend" 2021-04-09

    ## New features and enhancements

    * mkvmerge: AAC: added support for LOAS/LATM files with channel configuration
      indexes 9–21 (e.g. channel count 22.2 for index 13) according to Rec. ITU-R
      BS.1196-7 & ISO/IEC 23008-3:2019. Fixes #3081.

    ## Bug fixes

    * mkvmerge: HEVC/H.265 parser: fixed invalid memory access that could happen
      when reading certain types of HEVC data (e.g. with changing parameter sets
      mid-stream) from certain containers (e.g. Matroska). This bug was introduced
      in release 56.0.0. Fixes #3083.
    * mkvextract: AAC: mkvextract will now abort with an useful error message when
      the user tries to extract a track whose 'audio-specific config' element in
      `CodecPrivate` signals a number of channels of 7 or greater than 8 as that
      isn't supported by the ADTS format.

    ## Build system changes

    * configure: the `--enable-ubsan` option hasn't actually enabled anything
      since release 39.0.0.

Version 56.0.0
  • Release Date: Apr 5, 2021
  • Download(s):
  • # Version 56.0.0 "Strasbourg / St. Denis" 2021-04-05

    ## New features and enhancements

    * mkvmerge, mkvpropedit: tags: the programs will no longer write tag elements
      that are mandatory and set to their default value (e.g. "tag language" set
      to `und` = undetermined).
    * mkvmerge, mkvpropedit, MKVToolNix GUI chapter editor: chapters: the programs
      will no longer write chapter elements that are mandatory and set to their
      default value (e.g. "chapter language" set to `eng` = English or "Chapter
      flag enabled" = 1).
    * mkvextract: chapters: mkvextract will no longer add a `ChapterLanguage`
      element set to `eng` to the generated XML content if the source file doesn't
      contain such an element.
    * MKVToolNix GUI: multiplexer: when using the "tab widget below the files &
      tracks" layout option for the track properties the elements in the "general
      options" tab will use six rows à four columns instead of twelve rows à two
      columns, greatly reducing the required height. Implements #3062.

    ## Bug fixes

    * mkvmerge: AAC reader: fixed mkvmerge aborting to read AAC files bigger than
      2 GB with a message about not being able to allocate memory. Fixes #3059.
    * mkvmerge: chapters: `ChapLanguageIETF` elements were still created when the
      option `--disable-language-ietf` was given after an option leading to the
      creation of chapters. Now the position doesn't matter anymore. Part of the
      fix of #3069.
    * mkvmerge: chapters: when the option `--disable-language-ietf` is used,
      `ChapLanguageIETF` elements won't be written even when sources are read
      (Matroska files or XML chapters files) that do contain those elements. Part
      of the fix of #3069.
    * mkvmerge: tags: when the option `--disable-language-ietf` is used,
      `TagLanguageIETF` elements won't be written. Fixes #3070.
    * mkvmerge: tags: mkvmerge will no longer write language elements for the
      track statistics tags it creates, making the effective language
      "undetermined" due to `und` being the default value for the legacy tag
      language element. Fixes #3073.
    * mkvmerge: tags: the XML tag parser will now validate all `<Simple>` children
      of `<Tag>` elements, not just the first for each `<Tag>`. Part of the fix of
      #3071.
    * mkvmerge: tags: the XML tag parser now uses the spec-compliant `und`
      ("undetermined") as the default language for `<Simple>` tags instead of
      `eng`. Part of the fix of #3071.
    * mkvmerge, mkvpropedit: tags: mkvmerge will no longer set the "target type"
      for track statistics tags (earlier it used `MOVIE`). The "target type value"
      will still be set to `50`. Fixes #3074.
    * mkvmerge, mkvextract: HEVC/H.265: both programs will now normalize the
      placement of VPS, SPS and PPS NALUs. Each key frame is prefixed with exactly
      one copy of the currently active parameter sets. This fixes certain classes
      of bugs related to splitting/appending. Fixes #3034.
    * mkvinfo: when compiled with newer versions of the `fmt` library, certain
      numbers were not output correctly (e.g. a track's audio sampling frequency
      of 48000 might be output as 48).
    * MKVToolNix GUI: multiplexer: deriving the track language from the file name
      will match languages case insensitively again (like versions prior to
      v55). Fixes #3068.
    * MKVToolNix GUI: multiplexer: under certain circumstances keyboard shortcuts
      such as `Ctrl+W` for closing the active tab or `Ctrl+R` for starting to
      multiplex ceased to work until the user did certain other things (such as
      switching to a different tool & back to the multiplexer or opening the
      multiplexer menu). This started with v54. Fixes #3051.
    * MKVToolNix GUI: chapter editor: the editor will no longer create empty
      `ChapterCountry` elements when adding a chapter name with no default country
      selected in the preferences. Fixes #3072.

    ## Build system changes

    * The bundled `fmt` library was updated to v7.1.3.
Version 55.0.0
  • Release Date: Mar 7, 2021
  • Download(s):
  • # Version 55.0.0 "Waiting For Space" 2021-03-06

    ## Bug fixes

    * all programs, only on Windows: fixed checking existence of & creating
      directories with UNC paths such as `\\server\share\folder\file.mkv`. Fixes
      #3041.
    * all programs, only on Windows: implemented several workarounds for bugs in
      `std::filesystem` wrt. UNC paths. The effect of those bugs was that Blu-rays
      and DVDs couldn't be added from UNC paths. Fixes #3037.
    * mkvmerge, only on Windows: fixed non-ASCII characters getting mangled in the
      destination file name when splitting is active.
    * MKVToolNix GUI, only on Windows: fixed the GUI hanging when trying to browse
      for files on drives that don't actually exist. Fixes #3046.
    * MKVToolNix GUI, only on Windows: the GUI did not remember UNC paths as the
      "most recently used source directory" properly.
    * MKVToolNix GUI: only on Windows: when dragging & dropping files from other
      applications to MKVToolNix GUI the GUI will force the drop action to be a
      copy action, no matter which keys were pressed by the users. This prevents
      Windows Explorer from deleting the dragged file when the user presses shift
      while dropping the file onto MKVToolNix GUI.
    * MKVToolNix GUI, only on Windows: when using the file dialog for selecting a
      file name to save to (e.g. when browsing for the destination file name in
      the multiplexer or saving an attachment in the header editor) non-ASCII
      characters in the default file name were mangled. Fixes #3049.
    * MKVToolNix GUI: multiplexer: the user can now configure what to do when
      using the "Add source files" button independently of the setting for what
      happens when files are dragged & dropped onto the GUI. The same options are
      available, but they're distinct settings, allowing for different use
      cases. Fixes #3035.
    * MKVToolNix GUI: multiplexer: deriving the track language from file names
      doesn't use one big regular expression of all enabled languages
      anymore. Instead, the file name is split into parts on a list of characters
      (such as `.` or `(` and `)`; configurable in the preferences). This prevents
      the regular expression becoming too big for the regular expression library
      to handle when many languages are enabled. Fixes #3048.
    * MKVToolNix GUI: preferences: the language lists for "deriving track
      languages" and "enabling items by language" always included all the ISO
      639-3 languages, even if those weren't enabled in the "often-used languages"
      pane. Fixes #3047.

    ## Other changes

    * mkvmerge, MKVToolNix GUI multiplexer: the functionality for changing the
      length of the NALU "size" field for AVC/H.264 and HEVC/H.265 tracks has been
      removed. The corresponding command-line option will continue to be
      recognized by mkvmerge as not to break existing third-party applications,
      but it won't actually do anything.
Version 54.0.0
  • Release Date: Feb 27, 2021
  • Download(s):
  • # Version 54.0.0 "F Maj Pixie" 2021-02-26

    ## New features and enhancements

    * mkvmerge: added support for using ISO 639-3 language codes in IETF BF47
      language tags. Part of the implementation of #3007.
    * mkvmerge: AC-3 parser: added support for byte-swapped AC-3 data. Implements
      #3022.
    * mkvmerge: Matroska reader: for audio tracks that have the bit depth track
      header set mkvmerge will now keep that header even for codecs that don't
      require it for decoding. Implements #3009.
    * mkvmerge: MPEG transport stream reader, PCM audio tracks: mkvmerge will now
      re-order the channels for 5.1, 7.0 and 7.1 channel tracks from the Blu-ray
      layout to the WAVEFORMATEXTENSIBLE layout expected in Matroska. Patch by Tom
      Yan. Implements #2988.
    * mkvmerge, mkvinfo, mkvpropedit, MKVToolNix GUI: added support for the
      following new track header elements: "hearing impaired" flag, "visual
      impaired" flag, "text descriptions" flag, "original" flag, "commentary"
      flag. Implements #3011.
    * MKVToolNix GUI: added support for using ISO 639-3 language codes in IETF
      BF47 language tags. As there are several thousand of them, they're
      deactivated by default and must be activated in the preferences ("GUI" →
      "Often used selections" → "Languages"). Part of the implementation of #3007.
    * MKVToolNix GUI: multiplexer: when adding Blu-rays the user can select
      multiple playlists to add simultaneously in the "select playlist to add"
      dialog. Implements #2961.
    * MKVToolNix GUI: multiplexer: the file name extensions "eb3" and "ec3" were
      added for Dolby Digital Plus & "mpl" for Dolby TrueHD in the file
      dialogs. Part of the implementation of #3027.
    * MKVToolNix GUI: multiplexer: when adding multiple files the dialog asking
      the user what to do with them has gained a new checkbox. If enabled, all
      files containing at least one video track will always be placed in newly
      created multiplex setting. Implements #2966.
    * MKVToolNix GUI: multiplexer: added a menu entry in the "Multiplexer" for
      adding all files that are currently in the clipboard. Implements #3006.

    ## Bug fixes

    * all: Windows: fixed compatibility with gettext 0.21 and newer on mingw.
    * all: Windows: fixed several of the programs having problems with certain
      Unicode characters (primarily emojis) in file names (e.g. mkvextract
      wrongfully complaining about an "invalid mode" or the GUI not being able to
      find parts of Blu-ray file structures).
    * mkvextract: AAC: fixed wrong channel mask field in the ADTS headers for 7.1
      channel layouts. Fix by Tom Yan. Fixes #2636.
    * mkvextract: h.265/HEVC extraction: if the first frame starts with the
      parameter sets (SPS, PPS & VPS), the ones from CodecPrivate aren't written
      and the ones from the first frame are kept. Fixes #3031.
    * mkvmerge: fixed the calculation of chapter timestamps read from NTSC
      DVDs. Fix by Tom Yan.
    * MKVToolNix GUI: IETF BCP 47 language widget: the language combo box will now
      always contain the language code the user enters in the free-form field,
      even if it isn't in the list of often-used languages the user configured in
      the preferences.
    * MKVToolNix GUI: multiplexer: when browsing for the destination file name the
      default directory is now chosen according to the preferences regarding how
      the destination file name should be formed. For example, if the policy is
      set to "fixed output directory" then that output directory will be the one
      initially set when the directory selection dialog is opened. Fixes #3021.
    * MKVToolNix GUI: multiplexer: fixed the removal of appended source files if
      the "delete source files" end-of-job action is enabled. Fixes #3029.
    * MKVToolNix GUI: chapter editor: when importing chapters from DVDs the IETF
      BCP 47 language elements will be set, too, not just the legacy language
      elements.

    ## Build system changes

    * libEBML v1.4.2 and libMatroska v1.6.3 are now required. The optional,
      bundled copies of both libraries have been updated to those versions. This
      bump in requirements fixes several heap overflow bugs in libEBML.
    * MKVToolNix is now using the C++17 library feature "file system library"
      instead of Boost's "file system" and "system" libraries. For the GNU
      Compiler Collection (gcc) libstdc++ this means v8 or newer is required; for
      clang's libc++ it means v7 or newer. For macOS this means that provided disk
      image will only run on 10.15 "Catalina" or newer.
Version 53.0.0
  • Release Date: Jan 31, 2021
  • Download(s):
  • # Version 53.0.0 "Fool's Gold" 2021-01-30

    ## New features and enhancements

    * mkvmerge: AVI reader: added support for reading the video aspect ratio from
      the video properties header (`vprp` chunk) if present and setting the
      display dimensions accordingly. Implements #2993.
    * mkvmerge: MP4 reader: for h.264/AVC tracks that don't have an
      `AVCConfigurationBox` (`avcC` atom) in their sample description (`stsd`)
      atom or whose `avcC` atom contains no content `mkvmerge` will now re-derive
      the `AVCConfigurationBox` from the bitstream. Implements #2995.
    * mkvextract: mkvextract will now check if any of the destination file names
      is the same as the source file name and abort with an error if that's the
      case. Implements #3001.
    * MKVToolNix GUI: when querying the user for a file name for saving things
      (e.g. multiplexer settings or an attachment in the header editor), the
      automatically suggested file name will now be based on the
      situation-specific file names (e.g. the destination file name for
      multiplexer settings or the attachment's name when saving an attachment in
      the header editor) instead of the directory's name. Implements #3012.
    * MKVToolNix GUI: multiplexer: when deriving track languages from file names
      the GUI will now select the right-most match instead of the left-most
      one. For example, "La.vie.en.rose.(fr).srt" will now be detected as French
      (fr) instead of English (en). Implements #3013.
    * MKVToolNix GUI: preferences: the items in the "pre-defined …" lists can now
      be renamed by double-clicking with the mouse or pressing the F2 key.
    * Windows installer: the `bluray_dump` command-line utility will be installed
      into the `tools` sub-directory. `bluray_dump` can read & dump certain file
      types used on Blu-rays: `.mpls` playlists, `.clpi` clip information
      databases, `.bdmv` index files, `bdmt_….xml` disc library databases and
      `tnmt_….xml` track & chapter name databases.

    ## Bug fixes

    * mkvmerge: stretching chapter timestamps with `--chapter-sync` now works
      correctly with floating point values including fractions of floating point
      numbers (e.g. `12.3/45.67`). The tooltips in the GUI have been adjusted
      accordingly. Fixes #3002.
    * mkvmerge: MPEG 1/2 video handling: the "default duration" header field was
      often half the value it actually should be, resulting in all video frames
      having an explicit block duration with the correct value. This has been
      fixed with a patch by Tom Yan.
    * mkvmerge: MPEG 1/2 video handling: the data stored in `Codec private` and
      `Codec state` doesn't contain extensions other than sequence & sequence
      display extensions anymore. Fix by Tom Yan.
    * mkvmerge: tag handling: when remuxing a Matroska file with the
      `--no-track-tags`, existing `SOURCE_ID` track tags are now skipped, too.
    * MKVToolNix GUI: multiplexer: the drop-down boxes with pre-defined track
      names now follow the order set in the preferences instead of sorting the
      entries alphabetically. Fixes #2999.
Version 52.0.0
  • Release Date: Jan 5, 2021
  • Download(s):
  • # Version 52.0.0 "Secret For The Mad" 2021-01-04

    ## New features and enhancements

    * MKVToolNix GUI: job queue: the maximum number of jobs to run concurrently
      can now be increased in the preferences. The default remains
      at 1. Implements #2984.
    * MKVToolNix GUI: the GUI will now add a context-specific default extension to
      file names selected for saving on platforms that don't add one itself
      (e.g. GNOME). For example, when saving multiplexer settings the extension
      `.mtxcfg` will be added. Implements #2983.
    * MKVToolNix GUI: added an option to the preferences for the window to stay on
      top of other windows. Implements #2967.

    ## Bug fixes

    * mkvextract: h.265/HEVC extraction: the code for skipping extraction of
      prefix SEI NALUs in the first frame was skipping two bytes too few,
      resulting in broken processing of all following bytes. Patch by Mike Chen.
    * libEBML: the optional, bundled version of libEBML was updated to v1.4.1.

    ## Build system changes

    * libEBML v1.4.1 is now required due to a bug in libEBML that caused pointers
      to just-freed memory being returned to the caller under certain invalid data
      constellations, causing use-after-free errors in all of MKVToolNix's
      programs. Fixes #2989.
Version 51.0.0
  • Release Date: Oct 5, 2020
  • Download(s):
  • # Version 51.0.0 "I Wish" 2020-10-04

    ## New features and enhancements

    * mkvmerge, mkvpropedit, MKVToolNix GUI: IETF BCP 47 language tags: added
      missing support for UN M.49 regions for which there are no corresponding ISO
      3166 alpha codes. This enables language tags such as `es-419` = Spanish in
      Latin America and the Caribbean. Implements #2919.
    * MKVToolNix GUI: IETF BCP 47 language tags: the text in the widget displaying
      the current language & the corresponding edit button is now displayed like a
      link (depending on the theme: different color & underlined), making it
      clearer that not just the edit button can be clicked but the text, too.

    ## Bug fixes

    * mkvmerge: AV1 parser: fixed mkvmerge crashing after uncaught exceptions due
      to certain data conditions. Found by fuzzying.
    * mkvmerge: AV1 packetizer: the duration of frames wasn't set properly. When
      appending AV1 IVF or OBU files this meant that the last frame of the Nth
      file and the first frame of file N+1 had the same timestamp. Fixes #2937.
    * mkvmerge: DTS reader: fixed handling of buffers with an odd length when
      byte-swapped DTS is detected so that mkvmerge doesn't abort with a failed
      assertion. Found by fuzzying.
    * mkvmerge: h.264/AVC and h.265/HEVC elementary stream readers: mkvmerge will
      no longer claim to recognize data that looks like AVC or HEVC but with
      invalid video width/height values as that lead to failed assertions in
      libEBML later. Found by fuzzying.
    * mkvmerge: h.265/HEVC parser: fixed mkvmerge aborting after uncaught
      exceptions due to certain data constellations found by fuzzying.
    * mkvmerge: IVF reader: fixed mkvmerge crashing with a "division by zero"
      error due to certain data conditions. Found by fuzzying.
    * mkvmerge: fixed mkvmerge aborting with a "division by zero" error due to the
      timestamp scaling factor being 0 after handling certain data constellations
      found by fuzzying.
    * mkvmerge: track statistics: fixed a "division by zero" error when the
      content's shorter than 1ms. Found by fuzzying.
    * mkvmerge, mkvinfo, mkvextract, mkvpropedit: Matroska access class: fixed an
      invalid memory access under certain data conditions. Found by fuzzying.
    * MKVToolNix GIU: IETF BCP 47/RFC 5646 language tags: the GUI will no longer
      open the language dialog when clicking on a disabled language display
      widget.
    * MKVToolNix GUI: IETF BCP 47 language tags: the "variants" combo-boxes were
      not populated even when the language tag was valid and contained at a
      variant. Fixes #2923.
    * MKVToolNix GUI: IETF BCP 47 language tags: when no language is selected, at
      least one of the other components (extended subtags, region, or variants)
      has something selected and "private use" is not empty, the GUI would claim
      this to be a valid tag, which it isn't. Fixes #2924.
    * MKVToolNix GUI: multiplexer: when the tracks/chapters/tags selection changes
      from "at least one entry selected" to "no entry selected", the input
      controls will be reset to their default state and not just disabled. Fixes
      #2927.

    ## Build system changes

    * `configure` now checks for the presence of the a system-wide installed copy
      of the JPCRE2 C++ wrapper library for the PCRE2 library and uses that if
      it's new enough (at least v10.32.1). If not, the bundled version will be
      used as a fallback. Implements #2929.

Version 50.0.0
  • Release Date: Sep 7, 2020
  • Download(s):
  • # Version 50.0.0 "Awakenings" 2020-09-06

    ## New feature: IETF BCP 47 language tags

    * I've written up a [nice FAQ
      entry](https://gitlab.com/mbunkus/mkvtoolnix/-/wikis/Languages-in-Matroska-and-MKVToolNix)
      about the switch to using IETF BCP 47 language tags, how they interact with
      legacy language elements, how the programs actually behave and how to
      disable their use if necessary.
    * mkvmerge: IETF BCP 47/RFC 5646 language tags: mkvmerge will now accept full
      BCP 47 language tags for all options taking a language. mkvmerge will always
      write "LanguageIETF" track header elements. If the language tag contains a
      valid ISO 639-2 language code it will also set the legacy "Language" track
      header element to the included ISO 639-2 code. Part of the implementation of
      #2419.
    * mkvmerge: IETF BCP 47/RFC 5646 language tags: if present the "LanguageIETF"
      track header element will be reported as the `language_ietf` property in
      JSON identification mode. Part of the implementation of #2419.
    * mkvmerge: IETF BCP 47/RFC 5646 language tags in chapters: mkvmerge will now
      write "ChapLanguageIETF" elements when creating chapter atoms, either when
      reading the simple chapter format or when generating chapters due to the
      `--generate-chapters` command line option. Part of the implementation of
      #2419.
    * mkvmerge: IETF BCP 47/RFC 5646 language tags in tags: mkvmerge will now
      write "TagLanguageIETF" elements when creating "simple tag" elements, either
      when reading tag XML files or when generating them. Part of the
      implementation of #2419.
    * mkvmerge: IETF BCP 47/RFC 5646 language tags: added an option
      `--disable-language-ietf` that causes mkvmerge to only write the legacy
      language elements.
    * mkvmerge, mkvpropedit, MKVToolNix GUI's chapter editor: IETF BCP 47/RFC 5646
      language tags in chapters: when reading XML chapter files the programs will
      now add "ChapLanguageIETF" elements for atoms that don't contain them. The
      values are derived from existing "ChapterLanguage" elements. Part of the
      implementation of #2419.
    * mkvpropedit: IETF BCP 47/RFC 5646 language tags: setting/deleting the track
      language now acts on both the old language element as well as the
      "LanguageIETF" track header element. Part of the implementation of #2419.
    * mkvpropedit: IETF BCP 47/RFC 5646 language tags: added an option
      `--disable-language-ietf` that causes mkvpropedit to apply changes to the
      `language` track header property only to the legacy language track header
      element.
    * mkvinfo: IETF BCP 47/RFC 5646 language tags: added support for the
      "LanguageIETF" track header element. Part of the implementation of #2419.
    * MKVToolNix GUI: multiplexer: added full support for IETF BCP 47/RFC 5646
      language tags for both track and chapter languages. Part of the
      implementation of #2419.
    * MKVToolNix GUI: chapter: added full support for IETF BCP 47/RFC 5646
      language tags for chapter languages. Part of the implementation of #2419.
    * MKVToolNix GUI: header editor: added full support for IETF BCP 47/RFC 5646
      language tags for track header languages. The header editor allows editing
      of the legacy language elements and the IETF BCP 47 language elements
      independent of each other. Part of the implementation of #2419.

    ## Other new features and enhancements

    * mkvmerge: the chapter generation mode `when-appending` now also works with
      the splitting modes `parts:` & `parts-frames:` when using the `…,+…` syntax
      for appending other sections of the source file to the same destination
      file. Implements #2898.
    * MKVToolNix GUI: multiplexer: the file selection dialogs now include the
      extension `.dtsma` for DTS files. Implements #2901.
    * mkvmerge: MP4 reader: sped up parsing MP4 DASH files with a lot of segments
      (`trun` atoms) quite a bit. Part of the fix of #2900.
    * The PCRE2 regular expression library is now used instead of `std::regex` for
      big performance improvements in all places where regular expressions are
      used for parsing big chunks of text, e.g. in the subtitle parsers. Part of
      the fix of #2899.
    * all programs: Windows: all programs now support long file names on Windows
      10 release 1604 if they're turned on in the registry. Implements #2916.

    ## Bug fixes

    * MKVToolNix GUI: preferences: under certain conditions changing the selected
      entry in the page tree on the left did not cause the page shown on the right
      to be updated. Fixes #2895.
    * mkvmerge: splitting text by a fixed string (e.g. `,`) is now done by using
      `std::string.find()` instead of using a regular-expression-based text
      splitting function, greatly improving its performance. Part of the fix of
      #2899.
    * mkvmerge: mkvmerge will now read-buffer file I/O when probing text file
      formats which increases its speed significantly on Windows. Part of the fix
      of #2899.
    * mkvmerge: MP4 reader: fixed handling of `tkhd` atoms of version 1. Fixes
      #2900.

    ## Build system changes

    * The PCRE2 library (the 8-bit variant) is now required.

Version 49.0.0
  • Release Date: Aug 3, 2020
  • Download(s):
  • # Version 49.0.0 "Sick Of Losing Soulmates" 2020-08-02

    ## New features and enhancements

    * mkvmerge: added support for copying the new track header elements
      `BlockAddIDName`, `BlockAddIDType`, `BlockAddIDValue` and
      `BlockAddIDExtraData` from Matroska files if they exist. Part of the
      implementation of #2887.
    * mkvinfo: added support for the new track header elements
      `BlockAdditionMapping`, `BlockAddIDName`, BlockAddIDType`, `BlockAddIDValue`
      and `BlockAddIDExtraData`. Part of the implementation of #2887.
    * MKVToolNix GUI: multiplexer: the list of recent directories can now be
      edited in the preferences → "Multiplexer" → "Destination file
      name". Implements #2861.
    * MKVToolNix GUI: preferences: the values in the various "predefined values"
      lists can now be re-ordered freely by dragging & dropping.

    ## Bug fixes

    * mkvmerge: Matroska reader: when reading tracks (e.g. a subtitle track) from
      Matroska files with their `default track` flag set to `yes`, and when
      overwriting those via the command line to `no`, `mkvmerge` would not promote
      additional tracks of the same type from other files (e.g. another subtitle
      track from an SRT file). Fixes #2863.
    * mkvmerge: SRT reader: empty lines inside entries were doubled. Fixes #2888.
    * mkvmerge: subtitles: when calculating the rounded duration of each entry the
      error from rounding the corresponding timestamp will be taken into
      account. Fixes #2890.
    * mkvextract: SSA/ASS extraction: mkvextract is no longer inserting empty
      lines before the `Dialogue:` lines. Fixes #2876.
    * mkvextract: USF subtitles: start & end timestamps were too high by a factor
      of 1.000.000. Fixes #2875.
    * MKVToolNix: info tool: when saving to a text file the checkbox "Save as
      default for saving output to text files" did nothing. Fixes #2869.
    * MKVToolNix: info tool: when saving to a text file in "all elements in a
      tree-like structure" mode, the GUI always stopped at the first cluster
      regardless of the setting of the "verbosity" option.
    * MKVToolNix GUI: preferences: when tooltips were disabled the dialogs for
      adding new entries to the various "predefined values" lists were missing
      their texts.
    * Windows installer: the images are shown again. Fixes #2868.
    * configure: fixed detection of QtDBus. Fixes #2886.

    ## Build system changes

    * libMatroska v1.6.1 is now required. The bundled version has been updated to
      that version.
Version 48.0.0
  • Release Date: Jun 29, 2020
  • Download(s):
  • # Version 48.0.0 "Sick Of Losing Soulmates" 2020-06-27

    ## New features and enhancements

    * mkvmerge: AC-3: file identification will report AC-3 tracks encoded in Dolby
      Surround EX as codec "AC-3 Dolby Surround EX". Implements #2740.
    * MKVToolNix GUI: multiplexer: on new installations the GUI will now recognize
      all known ISO 639-2 language codes in file names by default instead of only
      the top 100 of languages by native speakers.
    * MKVToolNix GUI: multiplexer: on new installations the list of "often used
      languages" will by default only contain certain agnostic ones ("multiple
      languages", "no linguistic content", "reserved for local use", "uncoded
      languages"), "English" and the default user interface language. The "list of
      spoken languages by native speaks" isn't used anymore. Also implements #2716.
    * MKVToolNix GUI: header editor: added an option to remove all attachments to
      the tree context menu. Implements #2835.
    * MKVToolNix GUI: while the GUI is running it will remember the last page that
      was selected when the preferences dialog is closed. Upon re-opening the
      preferences that page will be selected by default. Implements #2852.

    ## Bug fixes

    * mkvmerge: fixed a segmentation fault when exiting prematurely due to write
      errors such as the destination having run out of space. Fixes #2843.
    * mkvmerge: DTS: fixed wrong channel count for DTS tracks with XCh
      extensions. Fixes #2715.
    * mkvmerge: MPEG TS reader: fixed detecting h.264/AVC and h.265/HEVC tracks
      that consist of only a single frame. Part of the fix of #2849.
    * mkvmerge: MPEG TS reader: fixed handling of unbounded PES sizes for tracks
      that consist of only a single PES packet. Part of the fix of #2849.
    * mkvmerge: MPEG TS reader: PGS subtitle tracks are now exempt from the
      "detect bogus subtitle timestamps" heuristic which could lead to some PGS
      subtitles not being timestamped correctly. Symptoms were that they were
      shown at the wrong time or that they were shown indefinitely. Fixes #2736
      and partially fixes #2824.
    * mkvmerge: MPEG TS reader: when reading MPLS playlists the start timestamps
      of a play items were handled wrong: all the timestamps of packets read were
      compared to that start timestamp, dropping those packets whose timestamps
      were smaller than the play item's start timestamp. The correct behavior is
      to accept all packets as soon as the first one with a timestamp equal to or
      larger than the play item's start timestamp is encountered. This could
      result in PGS subtitle entries located right at the start of the play item
      being garbled/lost as they consist of multiple PES packets for which some
      timestamps are often slightly smaller. Part of the fix of #2824.
    * mkvmerge: MPEG TS reader: when reading MPLS playlists mkvmerge will no
      longer read the whole M2TS files they reference, processing only the packets
      lying inside the timestamp range given by the playlists's play item's start
      & end timestamps. Instead mkvmerge will use the index information present in
      corresponding clip information (CLPI) files in order to seek to the nearest
      file position of the play item's start timestamp. Additionally mkvmerge will
      simply stop processing a file once the end timestamp is seen. This change
      greatly speeds up processing files from which only small portions must be
      read. Part of the fix of #2824.
    * mkvmerge: WavPack: fixed support for files created by v5 of the
      program. Checksums, DSD audio data and non-standard sampling rates are
      handled correctly. Patch by David Bryant.
    * MKVToolNix GUI: multiplexer: fixed the cursor being positioned wrong after
      entering or pasting characters that aren't allowed in file names into the
      "destination file" control. Fixes #2855.

    ## Build system changes

    * libEBML v1.4.0 and libMatroska v1.6.0 are now required.

    ## Other changes

    * The source code repository's main development branch was renamed to `main`.
Version 47.0.0
  • Release Date: May 31, 2020
  • Download(s):
  • # Version 47.0.0 "Black Flag" 2020-05-30

    ## New features and enhancements

    * mkvmerge: chapters: mkvmerge can now read chapters from DVDs if the user
      specifies the path to a DVD folder structure via the `--chapters …`
      parameter. By default chapters from the first title will be imported. This
      can be changed by append `:<title number>` to the file/directory name in the
      `--chapters …` argument, e.g. `--chapters /srv/dvds/BigBuckBunny/VIDEO_TS:3`
      This feature requires mkvmerge to have been built with the `libdvdread`
      library.  Part of the implementation of #2808.
    * mkvmerge: added `--engage append_and_split_flac` that enables mkvmerge to
      append and split FLAC tracks, restoring pre-v45 behavior.  The resulting
      tracks will be broken: the official FLAC tools will not be able to decode
      them and seeking will not work as expected.
    * MKVToolNix GUI: multiplexer: added support for mkvmerge's new support for
      reading chapters from DVDs if both have been built with the `libdvdread`
      library. Part of the implementation of #2808.
    * MKVToolNix GUI: multiplexer: when deriving languages from file names the GUI
      will now look for simplified language names instead of the full ones
      (e.g. instead of looking for "Greek, Modern (1453-)" it would simply look
      for "Greek").
    * MKVToolNix GUI: multiplexer: the options in the "additional command-line
      options" dialog are now sorted alphabetically. Additionally the
      `--append-mode` option has been added as one of the only missing global
      options.
    * MKVToolNix GUI: chapter editor: the chapter editor can now read chapters
      from DVDs if MKVToolNix has been build with the `libdvdread` library. Part
      of the implementation of #2808.
    * MKVToolNix GUI: header editor: added an option in the preferences for
      displaying all date & time values in UTC instead of the local time
      zone. Implements #2814.

    ## Bug fixes

    * all: fixed a crash when using the `MTX_LOGGER=file` syntax for logging debug
      messages without specifying a file name to log to. It will now log to a file
      called `mkvtoolnix-debug.log` in the system's default temporary directory,
      as initially intended.

    ## Build system changes

    * The [`libdvdread`](https://www.videolan.org/developers/libdvdnav.html)
      library will be used if found via `pkg-config`. If it is found, support for
      reading chapters from DVDs will be enabled in `mkvmerge` and the MKVToolNix
      GUI. Part of the implementation of #2808.
    * Boost's Date/Time, Lexical Cast, Range, Range Adaptors, Tri-Bool, Variant
      libraries are not used anymore.
    * MKVToolNix now requires a C++ compiler & standard library that support the
      following features of the C++17 standard: "`std::variant`", "`std::gcd`".
      For the GNU Compiler Collection (gcc) this means v7 or newer; for clang it
      means v4 or newer — the same versions required by earlier MKVToolNix
      versions.
    * MKVToolNix now requires version 6.1.0 of fmtlib or later for the
      `fmt::to_string` function and bugfixes to the formatting of floating point
      numbers. If a system-wide version is installed that's older, the bundled
      copy will be used.
    * The bundled version of fmtlib has been updated to release 6.2.1.
Version 46.0.0
  • Release Date: May 1, 2020
  • Download(s):
  • # Version 46.0.0 "No Deeper Escape" 2020-05-01

    ## New features and enhancements

    * mkvmerge: when splitting, the placeholder `%c` can be used in the
      destination file name. It'll be replaced by the name of the first chapter in
      the file. Implements #2791.
    * mkvmerge: when reading MPLS playlists mkvmerge will include a tag named
      `SOURCE_ID` in the track's statistics tags that conveys the fact that the
      source was a Blu-ray and what the track's ID was in the source
      container. When reading Matroska file existing `SOURCE_ID` tags will be
      kept. The format used is the same format MakeMKV uses. Implements #2774.
    * mkvmerge: for audio-only files mkvmerge will now write a cue entry every
      500ms instead of every 2s.
    * MKVToolNix GUI: job actions: split up the option "execute when the job
      finishes successfully or with warnings" into two separate options: "…when
      finishes successfully" and "…when exits with warnings". Implements #2798.

    ## Bug fixes

    * mkvmerge: Matroska reader: when regenerating UIDs for chapters mkvmerge will
      now fix referencing tag chapter UID targets to have the same values. Fixes
      #2804.
    * mkvmerge: MP4 reader: fixed a crash that could potentially happen while
      trying to identify H.265/HEVC tracks.
    * mkvmerge: MP4 reader: when reading H.265/HEVC tracks without a frame offset
      table (`ctts` atom) present, mkvmerge did not parse the `hevcC` structure
      correctly in certain cases, causing no video frames to be output at all or
      the output not being playable. This fixes #2782, a bug introduced in v45.
    * mkvmerge: MPLS handling/MPEG TS reader: timestamp restrictions as given in
      an MPLS file were only honored for the first play item, not for subsequent
      play items. For those play items the whole referenced file was always
      copied. Part of the fix of #2789.
    * mkvmerge: MPLS handling/MPEG TS reader: under certain circumstances mkvmerge
      copied one frame too many before switching to the next play item. Part of
      the fix of #2789.
    * mkvmerge: for audio-only files cues will only be created for I frames
      (important for e.g. TrueHD where decoding can only start on a sync
      frame). Fixes #2790.
    * MKVToolNix GUI: fixed a crash that happened when closing the preferences
      after having closed at least one multiplexer tab. Fixes #2785.
    * MKVToolNix GUI: macOS: changed the default of the "elide tab header labels"
      feature introduced in v45 from "no" to "yes" to mirror how versions before
      v45 behaved on macOS.
Version 45.0.0
  • Release Date: Apr 5, 2020
  • Download(s):
  • # Version 45.0.0 "Heaven in Pennies" 2020-04-04

    ## New features and enhancements

    * mkvmerge: mkvmerge has never supported appending & splitting FLAC audio
      tracks. mkvmerge will now emit error messages when the user attempts either
      instead of continuing and creating invalid FLAC tracks.
    * MKVToolNix GUI: added an option in the preferences to turn on eliding text
      on tab headers. If enabled, tab names will be shortened so that all tab
      headers fit into the window's width. Implements #2768.
    * MKVToolNix GUI: added an option in the preferences to disable all tooltips.
    * MKVToolNix GUI: Windows: debug output sent via Qt's to Windows' debugging
      facility will use a more verbose message format including the application
      name, making it easier to filter for in SysInternal's "Debug View" utility.
    * MKVToolNix GUI: multiplexer: if the file identification fails due to a JSON
      parser error, the output generated by `mkvmerge` will be output via Qt's
      debugging facility (viewable with SysInternal's "Debug View" utility on
      Windows; on other systems it's output on `STDERR`) allowing insight into
      what's gone wrong.
    * MKVToolNix GUI: multiplexer: if an error occurs during file identification,
      the name of the processed file will be mentioned in the error message.
    * MKVToolNix GUI: multiplexer: if an error occurs during identification of
      multiple files, the GUI will ask the user whether to continue or abort the
      identification process. Implements #2778.
    * MKVToolNix GUI: job queue: added an option in the preferences for removing
      completed jobs when exiting the program depending on their status.
      Implements #2769.

    ## Bug fixes

    * mkvmerge: H.265/HEVC packetizer: fixed changing the NALU size length, it was
      using the wrong offset into the `hevcC` structure.
    * mkvmerge: MP4 reader: fixed calculating the duration of video tracks that
      only contain a single frame. Fixes #2747.
    * mkvmerge: MP4 reader: if there's no frame offset table (`ctts` atom) present
      for H.265/HEVC video tracks, mkvmerge will determine the timestamp order
      itself instead of relying on the timestamps in the MP4 being in the
      presentation order required by Matroska. Fixes #2777.
    * mkvpropedit: Windows: mkvpropedit wasn't caching when reading the file to
      modify, slowing down operations such as adding track statistics tags
      considerably. Fixes #2761.
    * MKVToolNix GUI: multiplexer: when using the title as part of the destination
      file name (both automatically as well as using the "copy title to
      destination file name" function) all characters that aren't valid in a file
      name are replaced by hyphens.
    * MKVToolNix GUI: multiplexer: the "copy title to destination file name"
      function was broken when the "make file name unique" option in the
      preferences was disabled. In that case the file base name was removed
      regardless of what the title was set to at the time.
    * MKVToolNix GUI: multiplexer: when using the "show command line" menu option
      on Windows the path to the `mkvmerge` executable was shown with forward
      slashes instead of backslashes. This is a purely cosmetic fix as Windows
      supports both forward and backward slashes.
    * MKVToolNix GUI: multiplexer: when adding Blu-ray playlists the GUI used to
      only look for the English version of the disc library information (title &
      cover images). Now the GUI will present all disc library entries in the
      "select playlist to add" dialog & let the user chose which one to use (if
      any). Fixes #2765.
    * MKVToolNix GUI: multiplexer, info tool: fixed the "warn before overwriting"
      check wrt. jobs creating the same file. Fixes #2758.
Version 44.0.0 Version 43.0.0
  • Release Date: Jan 27, 2020
  • Download(s):
  • # Version 43.0.0 "The Quartermaster" 2020-01-26

    ## New features and enhancements

    * MKVToolNix GUI: using one of the command line options `--info`,
      `--edit-headers` or `--edit-chapters` will make the GUI select the
      corresponding tool on startup even if no further file name is
      given. Implements #2723.
    * MKVToolNix GUI: multiplexer: added a setting in the preferences for changing
      the location of the MediaInfo executable for when the user accidentally
      selected the wrong one.

    ## Bug fixes

    * mkvmerge: AVC/h.264 parser: the order of the NALUs before each key frame was
      sometimes wrong: mkvmerge wrote SPS & PPS after SEI NALUs. Now SPS & PPS
      NALUs are always written before the other NALUs. Patch by Torsten
      Hauska. Part of the implementation of #2709 and part of the fix of #2250.
    * mkvmerge: AVC/h.264 parser: when additional SPS or PPS NALUs (with IDs that
      haven't been seen so far) are found mid-stream, mkvmerge will prepend all
      following key frames with all current valid SPS & PPS NALUs (just like when
      SPS & PPS NALUs are overwritten mid-stream). Part of the fix of #2250.
    * mkvmerge: MPEG TS reader: fixed detection of MPEG-1/2 video tracks
      consisting of very few frames. Fixes #2732.
    * mkvmerge: Ogg Opus reader: fixed the handling of Ogg Opus streams that
      contain a just one Ogg page (`mkvmerge` aborted with an exception). Fixes
      #2722.
    * MKVToolNix GUI: multiplexer: dragging & dropping XML files with chapters or
      tags to the GUI's window was broken in v42. Instead of adding the file names
      to the appropriate input boxes the GUI was running mkvmerge for file
      identification purposes which then failed. Fixes #2718.
Version 42.0.0
  • Release Date: Jan 3, 2020
  • Download(s):
  • # Version 42.0.0 "Overtime" 2020-01-02

    ## New features and enhancements

    * mkvmerge: added an option for creating byte-identical files:
      `--deterministic <seed>`. Part of the implementation of #2698.
    * mkvmerge: Matroska reader: mkvmerge will remove the `icpf` atom headers if
      they're present in frames read from Matroska files. Implements #2692.
    * mkvmerge: MP4 reader: ALAC tracks: the number of channels, sampling
      frequency and bit depth are now taken from the bitstream in order to fix
      bogus values on the container level. Implements #2714.
    * mkvpropedit: when changing track UIDs the referring elements in existing
      chapters & tags will be updated automatically, too. Part of the
      implementation of #2700.
    * mkvinfo: when the option `-p`/`--hex-positions` is used, element positions
      will be output regardless of the verbosity level. Part of the implementation
      of #2713.
    * mkvinfo: added the option `-P`/`--positions` for showing the position of
      each element in decimal regardless of the verbosity level used. Part of the
      implementation of #2713.
    * mkvinfo: added the option `-o`/`--continue` for continuing processing when
      the first cluster is encountered regardless of the verbosity level
      used. Part of the implementation of #2713.
    * mkvinfo: added the option `-a`/`--all` for outputting all sub-elements (even
      cues & seek head entries) and not stopping at the first cluster regardless
      of the verbosity level used. Part of the implementation of #2713.
    * MKVToolNix GUI: multiplexer: added an option in the preferences for
      disabling adding cover images from Blu-ray discs. Implements #2693.
    * MKVToolNix GUI: multiplexer: added mkvmerge's new `--deterministic` option
      in the "additional command-line options" dialog. Part of the implementation
      of #2698.
    * MKVToolNix GUI: header editor:: when changing track UIDs the referring
      elements in existing chapters & tags will be updated automatically,
      too. Part of the implementation of #2700.

    ## Bug fixes

    * mkvmerge: HEVC ES parser: fixed a bug in the slice parser calculating the
      size of a field which in turn could have led to the slice's type being read
      wrong. Patch by Torsten Hauska. Fixes #2710.
    * mkvmerge: Matroska reader: fixed a segmentation fault when trying to read a
      file that uses header removal compression but no removed bytes are present
      in the track headers. Fixes #2687.
    * mkvmerge: MPEG elementary stream parser: fixed an invalid memory access and
      use of uninitialized memory that could happen under certain
      circumstances. Fixes #2690.
    * mkvmerge: RealMedia reader: fixed a division by zero when all audio
      timestamps were zero. Fixes #2689.
    * mkvmerge: RealMedia reader: fixed an invalid memory access in the video
      frame assembly code triggered by invalid data in the file. Fixes #2691.

    ## Build system changes

    * `std::optional` (C++17 feature) is now used instead of `boost::optional`.
    * `std::regex` is now used instead of `boost::regex`.

    ## Other changes

    * New man page translations into French, Italian, Russian and Chinese
      Traditional have been added.

Version 41.0.0
  • Release Date: Dec 7, 2019
  • Download(s):
  • # Version 41.0.0 "Smarra" 2019-12-06

    ## New features and enhancements

    * mkvmerge: Matroska reader: Vorbis tracks: stream comments (aka Vorbis
      comments) will be converted to Matroska attachments (for cover arts) and
      Matroska track tags (for other comments). Additionally the stream comments
      will be removed from Vorbis headers.
    * mkvmerge: MP4 reader: added support for reading Opus audio from MP4
      files. Part of the implementation of #2673.
    * mkvmerge: MP4 reader: added support for reading VP9 video from MP4
      files. Part of the implementation of #2673.
    * mkvmerge: Ogg reader: Vorbis, Opus & VP8 streams: stream comments (aka
      Vorbis comments) will be converted to Matroska attachments (for cover arts)
      and Matroska track tags (for other comments). Additionally the stream
      comments will be removed from Vorbis headers.
    * mkvmerge: WAV reader: added support for reading RF64 files.
    * MKVToolNix GUI: multiplexer: the list of predefined track names is now split
      up into three lists, one for each track type (audio, video &
      subtitles). Part of the implementation of #2654.
    * MKVToolNix GUI: multiplexer: when trying to add thumbnails for a Blu-ray the
      GUI will determine the thumbnail's pixel size from the thumbnail files if
      the XML file doesn't contain that information. This works for JPEG and PNG
      files. Implements #2674.
    * MKVToolNix GUI: general: line edits & combo boxes will now have a "clear
      text" button appear whenever they're not empty. Part of the implementation
      of #2654.
    * MKVToolNix GUI: update check: the dialog showing the latest news & version
      information states explicitly where the links take the user (the MKVToolNix
      `NEWS.md` file and YouTube respectively).

    ## Bug fixes

    * mkvmerge: Matroska reader: mkvmerge did not copy the codec's private data
      when reading WavPack from Matroska files. Fixes #2685.
    * mkvmerge: MPLS handling: re-added caching when using MPLS playlists as input
      files. Fixes #2666.
    * mkvmerge: MPEG TS reader: when reading an MPLS playlist, the calculation of
      the minimum timestamp to use for shifting all output timestamps to zero was
      wrong. It was wrongfully considering timestamps from packets it would not
      copy due to the MPLS's timestamp restrictions. This could lead to the first
      timestamps in the output file being quite large, e.g. more than a couple of
      minutes, causing sync problems when multiplexing together with other
      files. Fixes #2670.
    * MKVToolNix GUI: multiplexer: the automatic switch between aspect ratio &
      display width/height wasn't reflected in the configuration generated for
      `mkvmerge`. The user had to change between the two settings manually. Fixes
      #2660.
    * MKVToolNix GUI: multiplexer: the progress dialog shown when scanning a
      Blu-ray wasn't closed properly in certain situations. Fixes #2678.
    * MKVToolNix GUI: general: the configured font was not applied to a lot of
      controls (e.g. the file & track lists or the menu entries) on application
      startup. Instead the user had to open & close the preferences in order for
      the font to be applied to all controls. Fixes #2671.
Version 40.0.0
  • Release Date: Nov 10, 2019
  • Download(s):
  • # Version 40.0.0 "Old Town Road + Pony" 2019-11-09

    ## New features and enhancements

    * mkvmerge: MP4 reader: added support for BMP covert art images.
    * MKVToolNix GUI: multiplexer: added an option to disable deriving the
      destination file name from the file title. Implements #2648.
    * MKVToolNix GUI: multiplexer: the content of the "stereoscopy" combo box has
      been simplified making the box's minimum width much smaller, allowing the
      user to resize the GUI's whole window to a much smaller width.
    * MKVToolNix GUI: multiplexer: whenever the user changes the "aspect ratio" or
      "display dimensions" controls, the corresponding radio button will be
      activated automatically. Implements #2651.
    * MKVToolNix GUI: Windows: added a setting in the preferences to disable the
      GUI's dark color mode even if Windows's app color mode is set to
      dark. Implements #2646.
    * MKVToolNix GUI: Windows: replaced the dark mode introduced in v39 with
      another dark mode that's less wasteful with space between widgets.

    ## Bug fixes

    * mkvmerge: MP4 reader: mkvmerge was reading eight bytes too many for cover
      art images. This could cause file identification to fail when the cover art
      was located at the end of the MP4 file. Even if it succeeded, this meant too
      much data present in the attachment. Fixes #2650.
    * mkvmerge: MP4 reader: covert art images with unknown image types will be
      skipped instead of treated as JPEG images.

    ## Build system changes

    * Qt 5.9.0 or newer is now required for building MKVToolNix GUI.
Version 40.0.0
  • Release Date: Nov 10, 2019
  • # Version 40.0.0 "Old Town Road + Pony" 2019-11-09

    ## New features and enhancements

    * mkvmerge: MP4 reader: added support for BMP covert art images.
    * MKVToolNix GUI: multiplexer: added an option to disable deriving the
      destination file name from the file title. Implements #2648.
    * MKVToolNix GUI: multiplexer: the content of the "stereoscopy" combo box has
      been simplified making the box's minimum width much smaller, allowing the
      user to resize the GUI's whole window to a much smaller width.
    * MKVToolNix GUI: multiplexer: whenever the user changes the "aspect ratio" or
      "display dimensions" controls, the corresponding radio button will be
      activated automatically. Implements #2651.
    * MKVToolNix GUI: Windows: added a setting in the preferences to disable the
      GUI's dark color mode even if Windows's app color mode is set to
      dark. Implements #2646.
    * MKVToolNix GUI: Windows: replaced the dark mode introduced in v39 with
      another dark mode that's less wasteful with space between widgets.

    ## Bug fixes

    * mkvmerge: MP4 reader: mkvmerge was reading eight bytes too many for cover
      art images. This could cause file identification to fail when the cover art
      was located at the end of the MP4 file. Even if it succeeded, this meant too
      much data present in the attachment. Fixes #2650.
    * mkvmerge: MP4 reader: covert art images with unknown image types will be
      skipped instead of treated as JPEG images.

    ## Build system changes

    * Qt 5.9.0 or newer is now required for building MKVToolNix GUI.
Version 39.0.0
  • Release Date: Nov 5, 2019
  • Download(s):
  • # Version 39.0.0 "In The Waiting Line" 2019-11-04

    ## New features and enhancements

    * mkvmerge: Blu-ray: when reading an MPLS playlist mkvmerge will look up and
      use chapter names from the Blu-ray's "track/chapter names" meta data if it
      exists. Part of the implementation of 2486.
    * mkvmerge: MP4 reader: if present, cover art images (the
      `meta.udta.ilist.covr` atom) will be converted into attachments.
    * MKVToolNix GUI: multiplexer: when adding a playlist from a Blu-ray disc, the
      disc library meta data will be parsed, and the biggest thumbnail, if
      present, will be added as a new attachment with name `cover.jpg` (extension
      depends on thumbnail's extension). Implements #2644.
    * MKVToolNix GUI: multiplexer: when adding a playlist from a Blu-ray disc, the
      title from the disc library meta data will be set as the new file title if
      the disc library meta data contains one & no title has been set yet.
    * MKVToolNix GUI: multiplexer: the automatically generated destination file
      name will now be based on the file title if one is set at that point. This
      works in conjunction with the title being said from the Blu-ray disc library
      meta data.
    * MKVToolNix GUI: chapter editor: when reading chapters from an MPLS playlist
      the GUI will look up and use chapter names from the Blu-ray's "track/chapter
      names" meta data if it exists. Part of the implementation of 2486.
    * MKVToolNix GUI: Windows: added a dark mode that's enabled when Windows 10's
      dark mode is turned on.
    * translations: added a Bulgarian translation of the programs & the man pages
      by Симеон Цветков (see `AUTHORS`).

    ## Bug fixes

    * mkvmerge: attachments without a file name won't be ignored anymore. Part of
      the fix of #2642.
    * MKVToolNix GUI: header editor: attachments with an empty name element will
      be shown as `<unnamed>` as originally intended. Part of the fix of #2642.
    * Linux AppImage: the AppImage will no longer change directories before
      running the desired executable allow the use of relative file names. Fixes
      #2632.

    ## Build system changes

    * MKVToolNix now requires a C++ compiler that supports the following features
      of the C++17 standard: "`[[maybe_unused]]` attribute", "nested namespace
      definition", "structured bindings". For the GNU Compiler Collection (gcc)
      this means v7 or newer; for clang it means v4 or newer.
    * Boost 1.60.0 or newer is now required.

Rate this software:

Your Rating:
You have not voted yet!

Average: 4.23
Total Ratings: 109

 



Software Submissions