Path to this page:
Subject: CVS commit: pkgsrc/multimedia/mkvtoolnix
From: Adam Ciarcinski
Date: 2020-09-08 15:49:05
Message id: 20200908134905.49F29FB28@cvs.NetBSD.org
Log Message:
mkvtoolnix: updated to 50.0.0
Version 50.0.0 "Awakenings"
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.
* 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.
* 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.
* 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.
* 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.
* 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.
* 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.
* MKVToolNix GUI: multiplexer: added full support for IETF BCP 47/RFC 5646
language tags for both track and chapter languages.
* MKVToolNix GUI: chapter: added full support for IETF BCP 47/RFC 5646
language tags for chapter languages.
* 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.
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.
* MKVToolNix GUI: multiplexer: the file selection dialogs now include the
extension `.dtsma` for DTS files.
* mkvmerge: MP4 reader: sped up parsing MP4 DASH files with a lot of segments
(`trun` atoms) quite a bit.
* 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.
* all programs: Windows: all programs now support long file names on Windows
10 release 1604 if they're turned on in the registry.
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.
* 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.
* mkvmerge: mkvmerge will now read-buffer file I/O when probing text file
formats which increases its speed significantly on Windows.
* mkvmerge: MP4 reader: fixed handling of `tkhd` atoms of version 1.
Build system changes
* The PCRE2 library (the 8-bit variant) is now required.
Files: