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 38.0.0
  • Release Date: Oct 7, 2019
  • Download(s):
  • # Version 38.0.0 "The Silent Type" 2019-10-06

    ## New features and enhancements

    * mkvextract: chapters, tags & cue sheets will now be written to standard
      output if no file name is given, same as if `-` is given as the file name.
    * MKVToolNix GUI: job queue: added a new setting in the preferences' "job
      queue & job status" section that, when enabled, will cause the GUI to remove
      all output files created by jobs that are either aborted by the user or that
      end in an error. Implements #2614.

    ## Bug fixes

    * all programs: macOS: fixed file access if the file name (including all path
      components) contains any Unicode character where NFC (Normalization Form
      Canonical Composed) and NFD (Normalization Form Canonical Decomposed)
      differ, e.g. German Umlauts. Fixes #2620.
    * mkvmerge: when splitting by chapters the user can now split by chapters
      coming from one of the appended files, too. Fixes #2625.
    * mkvmerge: AAC reader: fixed reading codec parameters (channels, sample rate)
      if a file starts with garbage that includes valid-but-bogus AAC
      headers. Fixes #2622.
    * MKVToolNix GUI: Hebrew was added to the list of often-used languages so that
      it can be selected by default again. Fixes #2610.
    * MKVToolNix GUI: when updating the GUI's settings from v37.0.0 or older, the
      GUI checks if the list of often-used languages equals the built-in list from
      v36.0.0. If it does, it will be updated to the built-in list changed in
      v37.0.0. Fixes #2611.

    ## Build system changes

    * Boost's Operators header library is now required.
Version 37.0.0
  • Release Date: Aug 24, 2019
  • Download(s):
  • # Version 37.0.0 "Leave It" 2019-08-24

    ## New features and enhancements

    * MKVToolNix GUI: the list of often used languages now contains those from
      Wikipedia's "List of languages by native speakers" by default. Also by
      default only those languages will be shown in the language drop-down boxes.

    ## Bug fixes

    * MKVToolNix GUI: multiplexer: fixed a bug in the "make destination file names
      unique" logic that caused an existing number-in-parenthesis at the end of
      the file base name to be removed in certain situations (e.g. when the first
      added file was named `m (3).mkv` and both `m (3) (1).mkv` and `m (3)
      (2).mkv` existed already, the GUI was suddenly use `m.mkv` instead of `m (3)
      (3).mkv`).
    * MKVToolNix GUI: on Windows the GUI is built with a slightly older version of
      the Qt library again (5.12.4). The Qt version used in release v36.0.0,
      v5.13.0, lead to crashes when doing certain things such as selecting
      multiple tracks in the multiplexer. Fixes #2605 and #26008.
Version 36.0.0
  • Release Date: Aug 11, 2019
  • Download(s):
  • # Version 36.0.0 "Is That Jazz?" 2019-08-10

    ## New features and enhancements

    * mkvmerge: mkvmerge now allows appending AV1, VP8, VP9, H.264/AVC and
      H.265/HEVC tracks whose pixel dimensions differ. Implements #2582.

    ## Bug fixes

    * source code: fixed building with Boost 1.71.0. Fixes #2599.
    * all: fixed the spelling of the H.264 & H.265 codec names.
    * mkvmerge: Blu-ray MPLS handling: mkvmerge will now find corresponding M2TS
      files even if the `clip_codec_identifier` playlist item field is not set to
      `M2TS` in the MPLS file. Fixes #2601.
    * mkvmerge: fixed handling of text files that use both DOS-style and
      Unix-style line endings resulting in problems such as text subtitle files
      not being parsed correctly. Fixes #2594.
Version 35.0.0
  • Release Date: Jun 22, 2019
  • Download(s):
  • # Version 35.0.0 "All The Love In The World" 2019-06-22

    ## New features and enhancements

    * mkvmerge: JSON identification: the "codec name" track property will be
      output as `codec_name`. The JSON schema has been bumped to v12 for this
      change.
    * MKVToolNix GUI: job queue: added a new type of action to execute after job
      completion: deleting source files for of multiplexer jobs. As this is a
      destructive operation, the action is disabled by default. Implements #869
      and #2570.

    ## Bug fixes

    * mkvmerge: the "codec name" track property wasn't copied from Matroska
      files. Fixes #2566.
    * MKVToolNix GUI: multiplexer: Windows: clearing the destination file name
      will reset the tab name to "\<No destination file\>" again. Fixes #2571.
    * MKVToolNix GUI: multiplexer: the file types were not re-translated if the UI
      language was changed. Fixes #2572.
Version 34.0.0 Version 33.1.0
  • Release Date: Apr 15, 2019
  • Download(s):
  • # Version 33.1.0 "Primrose" 2019-04-15

    ## Bug fixes

    * MKVToolNix GUI: multiplexer: Windows: using UNC paths
      (e.g. `\\server\Videos`) when the option "automatically set the destination
      file name" was set in the preferences, the GUI would create a destination
      file name with forward slashes (e.g. `//server/Videos/outputfile.mkv`), a
      syntax not supported by `mkvmerge`. Fixes #2533 & #2534.
    * build system: the programs were accidentally built without stack protection
      (`-fstack-protector-strong`) on recent versions of gcc and clang.
Version 33.0.0
  • Release Date: Apr 13, 2019
  • Download(s):
  • # Version 33.0.0 "A Little Bit of Madness" 2019-04-12

    ## Bug fixes

    * mkvinfo: when using the `--size` option, mkvinfo will now report the
      correctly if an element has an unknown size. Part of the fix of #2530.
    * MKVToolNix GUI: info tool: clusters with an unknown size will now be read
      and displayed correctly. Part of the fix of #2530.
    * MKVToolNix GUI: multiplexer: Windows: trying to open Blu-ray index or
      playlist files failed when the path to the files contained symbolic links
      (e.g. when mounting a drive in a sub-folder via Windows' disk management
      utility). Fixes #2522.
    * MKVToolNix GUI: multiplexer: if a destination file names ends with a number
      in parenthesis (e.g. a year such as "(2017)"), that number will not be
      stripped anymore during the process of ensuring the destination file name is
      unique. Only those suffixes added automatically in prior attempts to make
      the file name unique will be removed. Fixes #2521.
    * MKVToolNix GUI: multiplexer: Windows: the GUI will let the user change the
      drive letter part of the destination file name freely again and only verify
      its validity right before starting to mux/adding to the job queue. Before it
      tried to force that into something valid, often resulting in unintentional
      paths (such as "C:\users\…\DC\files\…"). Fixes #2527.
Version 32.0.0
  • Release Date: Mar 13, 2019
  • Download(s):
  • # Version 32.0.0 "Astral Progressions" 2019-03-12

    ## New features and enhancements

    * mkvinfo: when sizes are output the size of the element's data portion is
      output in addition to the element's total size.
    * MKVToolNix GUI: info tool: the element's data portion is
      shown as an extra column.
    * MKVToolNix GUI: multiplexer: added column "Delay" to the track list
      containing the additional delay to apply during multiplexing. Implements
      #2506.

    ## Bug fixes

    * all: fixed handling of Unicode code points > U+FFFF. Fixes #2516.
    * mkvmerge: Windows: mkvmerge was crashing with an exception when trying to
      identify certain files that can be used on Blu-rays (such as MPEG transport
      streams of MPLS play list files) and when the file name was given as a UNC
      path (e.g. `\\servername\sharename\path\to\file.m2ts`). The GUI emitted
      errors such as "the JSON output could not be parsed" in that case. Fixes
      #2507.
    * MKVToolNix GUI: the portable mode wasn't detected correctly when the current
      working directory the GUI was started from wasn't the directory the GUI's
      executable file was located it. Examples for when this is the case are
      Windows' "send to" or "open with" functions. Fixes #2501.
    * MKVToolNix GUI: multiplexer: using button to change the current destination
      directory to one of the recently used ones did not update the file name
      according to the "make file name unique" setting. Part of the fix of #2519.
    * MKVToolNix GUI: multiplexer: the function "set destination file name from
      selected file's name" will now only change the destination file's name but
      not its path. Part of the fix of #2519.

    ## Build system changes

    * libEBML v1.3.7 and libMatroska 1.5.0 are now required as they fix their
      handling of Unicode code points > U+FFFF (see #2516).
Version 31.0.0
  • Release Date: Feb 10, 2019
  • Download(s):
  • # Version 31.0.0 "Dolores In A Shoestand" 2019-02-09

    ## New features and enhancements

    * all programs: added a new option `--abort-on-warnings` that will cause the
      program to abort after it has emitted the first warning, similar to how it
      aborts after the first error. Implements #2493.
    * mkvmerge, mkvextract: when closing files that were opened for writing,
      cached data will not be flushed to storage automatically anymore. This
      reverts the workaround implemented for #2469. A new option was added to both
      programs (`--flush-on-close`) that re-enables flushing for people who are
      affected by data loss such as described in #2469.

      The reason is that automatic flushing causes long delays in processing
      queues when the output by mkvmerge/mkvextract isn't the final product but
      just an intermediate result to be processed further.

      Implements #2480.
    * MKVToolNix GUI: multiplexer: the dialog previewing different character sets
      for text subtitles will now keep the position of the displayed text when
      switching between character sets. Implements #2489.

    ## Bug fixes

    * mkvmerge: AVI reader: using DV type 1 AVIs will now result in an unsupported
      file type being reported (as the underlying AVI library doesn't support
      them) instead of crashing mkvmerge. Fixes #2491.
    * mkvmerge: HEVC: the height of interlaced streams will now be set correctly
      to the height of the full frame instead of the height of a single interlaced
      field. Fixes #2446.
    * mkvmerge: MP4 reader: edit lists consisting solely of elements that mkvmerge
      doesn't support (such as dwells) are simply ignored. Before no data was read
      for such tracks at all. Fixes #2487.
    * mkvmerge: text subtitles: entries with an explicit duration of 0ms will now
      be handled correctly: the 0ms duration will be stored in Matroska instead of
      the difference between the current and the following entry. Fixes #2490.
    * MKVToolNix GUI: multiplexer, chapter editor: fixed drag & drop handling with
      Qt 5.12.0 and newer. Fixes #2472.
    * MKVToolNix GUI: multiplexer: the GUI did not clean up temporary files
      created when running `mkvmerge`. Fixes #2499.

    ## Build system changes

    * Qt 5.4.0 or newer has required (up from 5.3.0) since version 30.0.0; I just
      forgot to include this entry.
Version 30.1.0
  • Release Date: Jan 6, 2019
  • Download(s):
  • # Version 30.1.0 "Forever And More" 2019-01-05

    ## Bug fixes

    * build system: fixed building on non-UTF-8 locales. Fixes #2474.
    * MKVToolNix GUI: multiplexer: implemented a workaround for drag & drop not
      working on macOS with Qt 5.12 due to a bug in Qt 5.12. Fixes #2472.
    * MKVToolNix GUI: chapter editor: when opening a Matroska/WebM file that
      doesn't contain chapters and later saving chapters back to them, the editor
      was truncating the file down to a couple of KB in size. This was a
      regression introduced with the implementation of #2439 in v30.0.0 Fixes
      #2476.
Version 30.0.0
  • Release Date: Jan 5, 2019
  • Download(s):
  • # Version 30.0.0 "Interstellar" 2019-01-04

    ## New features and enhancements

    * mkvextract: WAV extractor: mkvextract will now write W64 files instead of
      WAV files if the file name extension is `.w64` or if the final file size is
      bigger than 4 GB, the file size limit for WAV files. Implements #2458.
    * MKVToolNix GUI: multiplexer: a new button was added next to the "destination
      file" controls. Clicking it shows a menu with the ten most recently used
      output directories. Selecting one of them will change the destination file
      to the selected directory keeping the file name. Implements #2468.
    * MKVToolNix GUI: multiplexer (preferences): the ten most recently used values
      for the "relative output directory" and "fixed output directory" settings
      are now saved. The corresponding settings have been changed into combo boxes
      allowing quick access to those recent values.
    * MKVToolNix GUI: multiplexer (preferences): the predefined split sizes and
      durations can now be customized in the preferences.
    * MKVToolNix GUI: chapter editor: added an option in the "Chapter editor" menu
      for appending chapters from an existing file to the currently open editor
      tab. Part of the implementation of #2439.
    * MKVToolNix GUI: chapter editor: added an action in the context menu for
      copying the selected entry and all of its children to another open editor
      tab. Part of the implementation of #2439.

    ## Bug fixes

    * mkvmerge: all files opened for writing will now be flushed once before
      they're closed. This ensures the operating system actually writes all cached
      data to disk preventing data loss in certain situations such as power
      outages or buggy drivers in combination with suspending the computer. Fixes
      #2469.
    * mkvmerge: AAC: under certain conditions 8 channel audio files were taken for
      7 channel ones.
    * MKVToolNix GUI: multiplexer: removing a file added as an "additional part"
      will no longer cause a crash. Fixes #2461.
    * source code: fixed compilation with Boost 1.69.0 after API-breaking change
      to the `boost::tribool` class. Fixes #2460.

Version 29.0.0
  • Release Date: Dec 1, 2018
  • Download(s):
  • # Version 29.0.0 "Like It Or Not" 2018-12-01

    ## Important notes

    * The string formatting library used was switched from `boost::format` to [`fmt`](http://fmtlib.net/). See the section "Build system changes" for details.

    ## New features and enhancements

    * MKVToolNix GUI: added an option in the preferences for disabling automatic scaling for high DPI displays. Implements #2415.
    * MKVToolNix GUI: the GUI will now prevent the system from going to sleep while the job queue is running. This feature is implemented for macOS, Windows and Linux/Unix systems where the `org.freedesktop.login1.Manager` D-Bus interface is available. Implements #2411.

    ## Bug fixes

    * mkvmerge: chapter generation: the start timestamps of chapters generated in intervals was wrong for files whose smallest video timestamp was bigger than 0. Fixes #2432.
    * mkvmerge: MP4 reader: fixed handling of atoms whose size exceeds the parent atom's size. Fixes #2431.
    * mkvmerge, MKVToolNix GUI's chapter editor: the chapter name template will now also be used when reading Ogg-style chapter files with empty chapter names. Fixes #2441.
    * mkvextract: AAC: mkvextract will now write the program config element (PCE) before the first AAC raw data packet if the PCE is present in the `AudioSpecificConfig` structure in the `Codec Private` Matroska element. The PCE carries vital information about the number of channels and is required in certain cases. Fixes #2205 and #2433.
    * mkvpropedit, MKVToolNix GUI's header editor: in situations when a one-byte space must be covered by a new EBML void element the following element must be moved up instead. If that moved element is a cluster, the corresponding cue entries will now be updated to reflect the cluster's new position. Fixes #2408.
    * MKVToolNix GUI: Windows: the application manifest is now included properly so that Windows actually recognizes it. See #2415.

    ## Build system changes

    * Qt's D-Bus implementation is now required for building on systems other than macOS and Windows,
    * The `boost::format` library is not used anymore.
    * The [`fmt` library](http://fmtlib.net/) is now required. Versions 3 and newer are supported. As not all Linux distributions include packages for the library, its release 5.2.1 comes bundled with MKVToolNix. The `configure` script will check for a system version of the library and use it if present and recent enough. Otherwise it will fall back to the bundled version and link that statically.
Version 28.2.0 Version 28.1.0
  • Release Date: Oct 24, 2018
  • Download(s):
  • # Version 28.1.0 "Morning Child" 2018-10-23

    ## Bug fixes

    * mkvmerge: AV1 parser: fixed an error in the sequence header parser if
      neither the `reduced_still_picture_header` nor the
      `frame_id_numbers_present_flag` is set. Part of the fix for #2410.
    * mkvmerge: AV1 parser: when creating the `av1C` structure for the Codec
      Private element the sequence header OBU wasn't copied completely: its common
      data (type field & OBU size among others) was missing. Part of the fix for
      #2410.
    * mkvmerge: Matroska reader, AV1: mkvmerge will try to re-create the `av1C`
      data stored in Codec Private when reading AV1 from Matroska or WebM files
      created by mkvmerge v28.0.0. Part of the fix for #2410.
    * MKVToolNix GUI: info tool: the tool will no longer stop scanning elements
      when an EBML Void element is found after the first Cluster element. Fixes
      #2413.
Version 28.0.0
  • Release Date: Oct 21, 2018
  • Download(s):
  • # Version 28.0.0 "Voice In My Head" 2018-10-20

    ## New features and enhancements

    * mkvmerge: AV1 parser: updated the code for the finalized AV1 bitstream
      specification. Part of the implementation of #2261.
    * mkvmerge: AV1 packetizer: updated the code for the finalized AV1-in-Matroska
      & WebM mapping specification. Part of the implementation of #2261.
    * mkvmerge: AV1 support: the `--engage enable_av1` option has been removed
      again. Part of the implementation of #2261.
    * mkvmerge: MP4 reader: added support for AV1. Part of the implementation of
      #2261.
    * mkvmerge: DTS: implemented dialog normalization gain removal for extension
      substreams. Implements #2377.
    * mkvmerge, mkvextract: simple text subtitles: added a workaround for simple
      text subtitle tracks that don't contain a duration. Implements #2397.
    * mkvextract: added support for extracting AV1 to IVF. Part of the
      implementation of #2261.
    * mkvextract: IVF extractor (AV1, VP8, VP9): precise values will be used for
      the frame rate numerator & denominator header fields for certain well-known
      values of the track's default duration.
    * mkvmerge: VP9: mkvmerge will now create codec private data according to the
      VP9 codec mapping described in the WebM specifications. Implements #2379.
    * MKVToolNix GUI: automatic scaling for high DPI displays is activated if the
      GUI is compiled with Qt ≥ 5.6.0. Fixes #1996 and #2383.
    * MKVToolNix GUI: added a menu item ("Help" → "System information") for
      displaying information about the system MKVToolNix is running on in order to
      make debugging easier.
    * MKVToolNix GUI: multiplexer, header editor: the user can enter a list of
      predefined track names in the preferences. She can later select from them in
      "track name" combo box. Implements #2230.


    ## Bug fixes

    * mkvmerge: JSON identification: fixed a bug when removing invalid UTF-8 data
      from strings before they're output as JSON. Fixes #2398.
    * mkvmerge: MP4/QuickTime reader: fixed handling of PCM audio with FourCC
      `in24`. Fixes #2391.
    * mkvmerge: MPEG transport stream reader, teletext subtitles: the decision
      whether or not to keep frames around in order to potentially merge them with
      the following frame is made sooner. That avoids problems if there are large
      gaps between teletext subtitle frames which could lead to frames being
      interleaved too late. Fixes #2393.
    * mkvextract: IVF extractor (AV1, VP8, VP8): the frame rate header fields
      weren't clamped to 16 bits properly causing wrong frame rates to be written
      in certain situations.
    * mkvpropedit, MKVToolNix GUI's header editor: fixed file corruption when a
      one-byte space must be covered with a new EBML void element but all
      surrounding elements have a "size length" field that's eight bytes long
      already. Fixes #2406.

Version 27.0.0
  • Release Date: Sep 27, 2018
  • Download(s):
  • # Version 27.0.0 "Metropolis" 2018-09-26

    ## New features and enhancements

    * mkvmerge: chapters: the timestamps of chapters read from containers or from
      chapter files can be adjusted (multiplication and addition) with the new
      `--chapter-sync` option or using the special track ID `-2` for the existing
      `--sync` option. Part of the implementation of #2358.
    * MKVToolNix GUI: multiplexer: adjusted & added controls for mkvmerge's new
      feature of being able to adjust chapter timestamps. Part of the
      implementation of #2358.
    * MKVToolNix GUI: multiplexer: the GUI can now ask for confirmation when the
      user is about to create a file that won't contain audio tracks. It does this
      by default if at least one source file contains an audio track. Implements
      #2380.

    ## Bug fixes

    * mkvmerge: AC-3: dialog normalization gain removal was corrupting E-AC-3
      frames irreversibly by writing checksums in places where they didn't
      belong. Additionally only the first E-AC-3 frame in a Matroska was processed
      but not additional dependent frames in the same block. Fixes #2386.
    * MKVToolNix GUI: fixed a leak of Windows font resources leading to a general
      slowdown and subsequent crash. Fixes #2372.
Version 26.0.0
  • Release Date: Aug 27, 2018
  • Download(s):
  • # Version 26.0.0 "In The Game" 2018-08-26

    ## New features and enhancements

    * mkvmerge: chapter generation: if the name template given by
      `--generate-chapters-name-template` is empty, no names (`ChapterDisplay`
      master elements with `ChapterString`/`ChapterLanguage` children) will be
      generated for the chapter atoms. Part of the implementation of #2275.
    * mkvmerge: chapters: chapter names generated from MPLS files will now use the
      name template if one is set via `--generate-chapters-name-template`. Part of
      the implementation of #2275.
    * mkvmerge: mkvmerge will no longer abort with an error message if no audio,
      video and subtitle tracks should be multiplexed. This allows copying of
      chapters from non-chapter source files (e.g. Matroska or MP4 files).
    * MKVToolNix GUI: the font size in the tool selector on the left will scale
      with the font size the user selects in the preferences.
    * MKVToolNix GUI: the GUI will no longer automatically resize the columns in
      tree and list views to match the content size. Instead it remembers and
      restores the widths set by the user. Implements #2353.
    * MKVToolNix GUI: multiplexer: the chapter name template will now be set
      automatically to the name template in the preferences' "chapter editor"
      section. Additionally the option `--generate-chapters-name-template …` will
      be passed to mkvmerge in situations when mkvmerge will generate chapters
      (either because automatic generation is enabled or if chapters are generated
      for MPLS playlists). Part of the implementation of #2275.
    * MKVToolNix GUI: chapter editor: if the chapter name template is empty,
      chapters will be generated without names. Part of the implementation of
      #2275.
    * MKVToolNix GUI: chapter editor: added an option to remove all chapter names
      to the "additional modifications" dialog. Part of the implementation of
      #2275.

    ## Bug fixes

    * mkvmerge: Matroska reader: fixed wrong timestamps when appending Matroska
      files where the second Matroska file's first timestamp is bigger
      than 0. Fixes #2345.
    * mkvmerge: MP4 reader: fixed division by zero errors during file
      identification if the timescale is 0 in the `MVHD` atom.
    * mkvmerge: Windows Television DVR files are now recognized as an unsupported
      file type. This prevents mis-detection as MPEG-2 with an accompanying flood
      of error messages. Fixes #2347.
    * MKVToolNix GUI: info tool: under certain circumstances "cues" were shown at
      the wrong level (inside the previous master element instead of on level
      1). Fixes #2361.
    * MKVToolNix GUI: job queue: fixed invalid memory handling and consequent
      crashes when using the "edit in corresponding tool & remove from job queue"
      option if one of the files in that job contained attached files. Fixes
      #2368.

    ## Build system changes

    * An AppStream metadata file will be installed in `$prefix/share/metainfo`.
Version 25.0.0
  • Release Date: Jul 13, 2018
  • Download(s):
  • # Version 25.0.0 "Prog Noir" 2018-07-12

    ## New features and enhancements

    * mkvmerge: SRT/ASS/SSA text subtitles: for files for which no encoding has
      been specified, mkvmerge will try UTF-8 first before falling back to the
      system's default encoding. Part of the implementation of #2246.
    * mkvmerge: SRT/ASS/SSA/WebVTT text subtitles: a warning is now emitted if
      invalid 8-bit characters are encountered outside valid multi-byte UTF-8
      sequences. Part of the implementation of #2246.
    * mkvmerge: Matroska & MPEG transport stream readers: the encoding of text
      subtitles read from Matroska files can now be changed with the
      `--sub-charset` parameter.
    * Linux: starting with release 25 an AppImage will be provided which should
      run on any Linux distribution released around the time of CentOS 7/Ubuntu
      14.04 or later.
    * macOS: translations: updated the `build.sh` script to build `libiconv` and a
      complete `gettext`. Together with an additional fix to how translation files
      are located, MKVToolNix can now use all interface languages on macOS,
      too. Fixes #2110, #2307, #2323.

    ## Bug fixes

    * mkvmerge: AVC/h.264: fixed file identification failing for certain
      elementary streams due to internal buffers not being cleared properly. Fixes
      #2325.
    * mkvmerge: HEVC/h.265: fixed file identification failing for certain
      elementary streams due to internal buffers not being cleared properly. This
      is the HEVC analog to what was fixed for AVC in #2325.
    * mkvmerge: MLP code: fixed various issues preventing MLP from being parsed
      correctly. Fixes #2326.
    * mkvmerge: TrueHD/MLP packetizer; dialog volume normalization removal isn't
      attempted if the track is an MLP track as the operation is only supported
      for TrueHD, not MLP.
    * mkvmerge: MPEG TS reader: when reading MPLS mkvmerge will now compare the
      MPLS's start and end timestamps against the transport stream's PTS instead
      of its DTS. Otherwise the first key frame of a video track might be dropped
      if it isn't the first in presentation order. Fixes #2321.
    * mkvmerge: JSON identification: mkvmerge will ensure that all strings passed
      to the JSON output modules are valid UTF-8 encoded strings by replacing
      invalid bytes with placeholder characters. This avoids the JSON library
      throwing an exception and mkvmerge aborting on such data. Fixes #2327.
    * mkvmerge: audio packetizers: mkvmerge will now keep discard padding values
      if they're present for packets read from Matroska files. Fixes #2296.
    * mkvmerge: Ogg Opus reader: packet timestamps aren't calculated by summing up
      the duration of all packets starting with timestamp 0 anymore. Instead the
      algorithm is based on the Ogg page's granule position and which packet
      number is currently timestamped (special handling for the first and last
      packets in the stream).

      * This fixes the first timestamp if the first Ogg packet's granule position
        is larger than the number of samples in the first packet (= if the first
        sample's timestamp is bigger than 0). mkvmerge will keep those offsets now
        and inserts "discard padding" only where it's actually needed.
      * It also improves handling of invalid files where the first Ogg packet's
        granule position is smaller than the number of samples in the first packet
        (= the first sample's timestamp is smaller than 0). mkvmerge will now
        shift all timestamps up to 0 in such a case instead of inserting "discard
        padding" elements all over the place.
      * mkvmerge will no longer insert "discard padding" elements if the
        difference between a) the calculated number of samples in the packet
        according to the granule position and b) the actual number of samples as
        calculated from the bitstream is one sample or less and if the packet
        isn't the last one in the stream. This circumvents certain rounding
        errors.
      * The timestamp of the first packet after a gap in the middle of the stream
        is now calculated based on the Ogg page the packet belongs to, and not
        based on the timestamps before the gap.

      Fixes #2280.
    * mkvmerge: complete rewrite of the progress handling. It's now based upon the
      total size of all source files and the current position within them instead
      of the number of frames/blocks to be processed. This simplifies calculation
      when appending files and fixes rare cases of when progress report was
      obvious wrong (e.g. stuck at 0% right until the end). Fixes #2150 and #2330.
    * MKVToolNix GUI: header editor: non-mandatory elements couldn't be removed
      anymore due to a regression while fixing #2320. They can now be removed
      again. Fixes #2322.

Version 24.0.0
  • Release Date: Jun 10, 2018
  • Download(s):
  • # Version 24.0.0 "Beyond The Pale" 2018-06-10

    ## New features and enhancements

    * mkvmerge: MP4 reader: improved the detection of edit lists consisting of two
      identical entries, each spanning the file's duration as given in the movie
      header atom. The second entry is ignored in such cases. See #2306.
    * mkvmerge: JSON identification: the "display unit" video track property is
      now reported as `display_unit`. The JSON schema has been bumped to v11 for
      this change.
    * mkvmerge, mkvextract: AVC/h.264: empty NALUs will now be removed.
    * mkvextract: VobSub extraction: empty SPU packets will now be dropped during
      extraction as other tools such as MP4Box cannot handle them
      correctly. Implements #2293.

    ## Bug fixes

    * mkvmerge: E-AC-3 parser: fixed determining the number of channels for
      streams that contain an AC-3 core with dependent E-AC-3 frames. Fixes #2283.
    * mkvmerge: Matroska reader: fixed mkvmerge buffering the whole file if a
      video track is multiplexed that consists of only one or a few frames. Fixes
      #2304.
    * mkvmerge: the "display unit" video track property will now be kept if it is
      set in the source file. Fixes #2317.
    * MKVToolNix GUI: multiplexer: when scanning playlists, all playlists were
      offered for selection regardless of the value of the "minimum playlist
      duration" setting. Fixes #2299.
    * MKVToolNix GUI: multiplexer: deriving track languages from file names: the
      regular sub-expressions for ISO 639-1 codes could match on empty strings,
      too, causing matches in wrong places and hence no language being recognized
      in certain situations. Fixes #2298.
    * MKVToolNix GUI: header editor: fixed a crash when saving the file fails
      (e.g. because it isn't writable). Fixes #2319.
    * MKVToolNix GUI: header editor: the editor was wrongfully claiming that
      mandatory elements with default values cannot be removed in the "status"
      text. Fixes #2320.
    * MKVToolNix GUI: preferences: on macOS & Linux the setting "enable copying
      tracks by their type" wasn't restored on program start. Fixes #2297.

    ## Other changes

    * Niels Lohmann's JSON library: the bundled version has been updated from
      v1.1.0 (git revision 54d3cab) to v3.1.1 (git revision g183390c1).
    * pugixml library: the bundled version has been updated from v1.8 to v1.9 (git
      revision e584ea3).
Version 23.0.0
  • Release Date: May 3, 2018
  • Download(s):
  • # Version 23.0.0 "The Bride Said No" 2018-05-02

    ## New features and enhancements

    * mkvmerge: input: format detection uses file-extension to improve performance and to give preference when several formats match.
    * mkvmerge: AV1: added support for reading AV1 video from Open Bitstream Unit files.
    * mkvmerge: AV1: adjusted the code for the AV1 bitstream format changes made up to 2018-05-02 (git revision d14e878).
    * mkvmerge: MP4 reader: if a track has an edit list with two identical entries, each spanning the file's duration as given in the movie header atom, then the second entry will now be ignored. Improves the handling of files with bogus data; see #2196 and #2270.
    * MKVToolNix GUI: multiplexer: added options to only enable tracks of certain types by default. Implements #2271.
    * MKVToolNix GUI: multiplexer: added an option to enable dialog normalization gain removal by default for all audio tracks for which the operation is supported. Implements #2272.
    * MKVToolNix GUI: multiplexer: when deriving track languages from the file names is active and the file name contains the usual season/episode pattern (e.g. "S02E14"), then only the part after the season/episode pattern will be used for detecting the language. Part of the improvements for #2267.
    * MKVToolNix GUI: multiplexer: the regular expression used for deriving track languages from the file names can now be customized in the preferences. Part of the improvements for #2267.
    * MKVToolNix GUI: multiplexer: the user can now customize the list of track languages the GUI recognizes in file names. This list defaults to a handful of common languages instead of the full list of supported languages. Part of the improvements for #2267.

    ## Bug fixes

    * mkvmerge: MP3 packetizer: removed a memory leak growing linearly with the track's size.
    * mkvmerge: VobSub packetizer: whenever a VobSub packet doesn't contain a duration on the container level, mkvmerge will now set it from the duration in the SPU packets. Before it was accidentally setting the SPU-level duration to 0 instead. Fixes #2260.
    * mkvmerge: track statistics tags: if writing the `Date` element is deactivated via `--no-date`, the `_STATISTICS_WRITING_DATE_UTC` isn't written either anymore. Fixes #2286.
    * mkvmerge, mkvextract, mkvpropedit: removed several small, constant-size memory leaks.
    * mkvextract: fixed a crash when mkvextract with a non-Matroska file as the source file. Fixes #2281.
    * MKVToolNix GUI: the central area is now scrollable, allowing the GUI to be resized to almost arbitrary sizes. Fixes #2265.
    * MKVToolNix GUI: multiplexer: the "copy file title to destination file name" functionality will now replace everything in the destination file name up to the last period instead of only up to the first period. Fixes #2276.

    ## Build system changes

    * build system: MKVToolNix now requires a compiler that supports the following features of the C++14 standard: "user-defined literals for `std::string`". For the GNU Compiler Collection (gcc) this means v5.x or newer; for clang it means v3.4 or newer.
    * Windows: linking against and installing shared version of the libraries with MXE is now supported by setting `configure`'s `host` triplet accordingly, e.g. `--host=x86_64-w64-mingw32.shared`.

    ## Other changes

    * mkvmerge: AV1: support for AV1 must be activated manually by adding `--engage enable_av1` as the AV1 bitstream specification hasn't been finalized yet.

Rate this software:

Your Rating:
You have not voted yet!

Average: 4.21
Total Ratings: 102

 



Software Submissions