Category Archives: Matroska

MKVToolNix v46.0.0 released

Hey everyone!

It’s May. It’s time. Time for another MKVToolNix release.

In v45 I accidentally introduced two bugs that users stumbled across almost immediately, and I nearly released a bug fix release only a few days after the v45 release, but ultimately decided against it. Therefore I suggest you upgrade to v46 now, especially if you’re dealing with H.265/HEVC video in MP4 files.

Nothing’s changed for package managers.

You can download the source code or one of the binaries. The Windows and macOS binaries as well as the Linux AppImage are available already. The other Linux binaries are stil being built and will be available over the course of the next couple of hours.

Here are the NEWS since the previous release:

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.

Have fun!

MKVToolNix v45.0.0 released

Hello dear people,

I sincerely hope you’re all healthy or at least on the way there. I’m fine, and having some more time on my hands I was able to get more done wrt. MKVToolNix. So this release is a bit bigger than the previous ones.

Nothing’s changed for package managers.

You can download the source code or one of the binaries. The Windows and macOS binaries as well as the Linux AppImage are available already. The other Linux binaries are stil being built and will be available over the course of the next couple of hours.

Here are the NEWS since the previous release:

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.

So try to have some fun, especially in these trying times.

MKVToolNix v44.0.0 released

Well hello everyon!

The last couple of weeks have been pretty slow wrt. MKVToolNix development (usually due to everything else being really hectic). Nevertheless I think it’s time for a small maintenance
release.

Nothing’s changed for package managers.

You can download the source code or one of the binaries. The Windows and macOS binaries as well as the Linux AppImage are available already. The other Linux binaries are stil being built and will be available over the course of the next couple of hours.

Here are the NEWS since the previous release:

New features and enhancements

  • MKVToolNix GUI: header editor: the attachments can now be reordered via drag
    & drop. Implements #2753.

Bug fixes

  • mkvmerge: Matroska reader: when encountering certain errors in the track
    headers such as the codec ID not being present mkvmerge will simply skip
    those tracks instead of exiting with an error. Fixes #2737.
  • MKVToolNix GUI: multiplexer: the "ask before overwriting" functionality did
    not look for the correct file names when splitting was active. Fixes #2741.

Have fun :)

MKVToolNix v43.0.0 released

Hey y’all,

let’s do a second release in January, fixing a couple of annoyances that crept in lately. Just a smaller maintenance release; nothing earth shattering. But see for yourself down below.

Nothing’s changed for package managers.

You can download the source code or one of the binaries. The Windows and macOS binaries as well as the Linux AppImage are available already. The other Linux binaries are stil being built and will be available over the course of the next couple of hours.

Here are the NEWS since the previous release:

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.

Have fun :)