Subject: [Cellar] MKVToolNix v15.0.0 released

From: Moritz Bunkus <[email-masked]>
Date: Sat, 19 Aug 2017 10:19:41 +0200

Hey,

Here's the brand new version 15.0.0 of MKVToolNix. A lot of work has gone
into improving support for new track header elements important for video
archival purposes. A couple of bugs have been fixed, too, as usual.

Changes for package maintainers: libEBML v1.3.5 is now required. An option
has been added to 'configure' for compiling without the code that checks
online for new releases. See below for details.

**Deprecation warning**

This is a reminder that certain features having been deprecated since
v9.7.0. They're scheduled to be removed in the first release of
2018. These features are:

* mkvmerge: the options "--identify-verbose", "--identify-for-gui",
  "--identify-for-mmg" and "--identification-format verbose" (use
  "--identification-format json --identify" or its short form "-J"
  instead)
* all command line tools: the old, proprietary format used for
  option files (use JSON option files instead)

Here are the usual links:

…to the source code: https://mkvtoolnix.download/source.html
…to the binaries: https://mkvtoolnix.download/downloads.html

The Windows and macOS binaries have already been built and
uploaded. Linux binaries are still being built and will be available
shortly.

Here are the NEWS since the previous release:

------------------------------------------------------------
# Version 15.0.0 "Duel with the Devil" 2017-08-19

## Important notes

* mkvmerge, mkvpropedit, GUI's header and chapter editors: the programs will
  no longer add most missing Matroska elements that are mandatory but have a
  default value in the Matroska specification (e.g. the `TagLanguage` element
  with a value of `und` if it isn't present in its `SimpleTag` parent). Due to
  this change libEBML v1.3.5 is now required.

## New features and enhancements

* MKVToolNix GUI: multiplex tool: added a new entry to the "source files"
  context menu labeled "Set destination file name from selected file's
  name". It will force the GUI to consider the selected file to be the
  reference for automatically setting the file name, no matter which file was
  originally added as the first file. It will also force setting the
  destination file name once if automatic destination file name generation is
  turned off in the preferences. Implements part of #2058.
* MKVToolNix GUI: multiplex tool: added an option in the preferences on
  "Multiplexer" → "Output" labeled "Only use the first source file that
  contains a video track". If enabled, only source files containing video
  tracks will be used for setting the destination file name. Other files that
  are added are ignore. Implements the rest of #2058.
* MKVToolNix GUI: header editor: added support for editing the video colour
  attributes. Implements the second half of #2038.
* MKVToolNix GUI: header editor: added support for the "video projection"
  track header attributes. Part of the implementation of #2064.
* MKVToolNix GUI: job queue: selected jobs can now be move up and down by
  pressing the `Ctrl+Up` and `Ctrl+Down` keys. Additionally, push buttons to
  move them up & down are shown if the corresponding option is enabled in the
  preferences. Implements #2060.
* mkvmerge: added support for the "video projection" track header
  attributes. Part of the implementation of #2064.
* mkvinfo: added support for the "video projection" track header
  attributes. Part of the implementation of #2064.
* mkvpropedit: added support for editing the video colour
  attributes. Implements one half of #2038.
* mkvpropedit: added support for the "video projection" track header
  attributes. Part of the implementation of #2064.

## Bug fixes

* all: selecting the program's language (e.g. via the `--ui-language`
  command-line option or via the GUI's preferences) did not work on Linux &
  Unix if the `LANGUAGE` environment variable was set and didn't include the
  desired language. Fixes #2070.
* MKVToolNix GUI: removed the keyboard shortcuts for switching between the
  different tools (e.g. `Ctrl+Alt+1` for the multiplexer). They overlapped
  with basic functionality on keyboards that use an `AltGr` key, e.g. German
  ones, where `AltGr+7` emits `{`. As `AltGr+key` is implemented as
  `Ctrl+Alt+key` under the hood, this means that `AltGr+7` is really
  `Ctrl+Alt+7` which the GUI now took to mean "switch to the job queue"
  instead of "insert `{`". Fixes #2056.
* MKVToolNix GUI: header editor: after saving the file the GUI wasn't updating
  its internal file modification timestamp. That lead to the GUI wrongfully
  claiming that the file had been modified externally when the user wanted to
  save the file once more, requiring a reload of the file losing all
  modifications made since saving the first time.
* mkvmerge: DTS handling: some source files provide timestamps for audio
  tracks only once every `n` audio frames. In such situations mkvmerge was
  buffering too much data resulting in a single gap in the timestamps of one
  frame duration after frame number `n - 1` (the second audio timestamp read
  from the source file was used one output frame too early). Fixes #2071.
* mkvinfo: fixed a null pointer dereference if an `EbmlBinary` element's data
  pointer is a null pointer. Fixes #2072.

## Build system changes

* configure: added option `--disable-update-check`. If given, the code
  checking online for available updates will be disabled. The update check is
  enabled and included in the GUI by default.
* libEBML v1.3.5 is now required.

## Other changes

* mkvmerge: the option `--colour-matrix` has been renamed to
  `--colour-matrix-coefficients` in order to match the specification more
  closely. The old option name will continue to be recognized as well.
------------------------------------------------------------

Have fun :)

Kind regards,
mosu