Tag Archives: MKVToolNix

MKVToolNix v47.0.0 relesaed

Well hello, gentle people.

Surprisingly it’s still May, even though it feels much longer since… well everything, really. Anyway, roughly four weeks since the previous release means it’s a good time for another MKVToolNix release.

v47 contains a couple of new enhancements and few bug fixes. However, under the hood big chunks of the source code was changed in an ongoing effort of switching from using Boost libraries to the C++ standard library. For end users this replacement doesn’t mean much — apart from the usual danger of accidentally introducing bugs. Hopefully not too many.

For package maintainers the situation is different. There were several changes, not only due to this migration. Please read the news below carefully. Thanks.

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: 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
    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.

Have fun!

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 :)