./multimedia/mkvtoolnix, Set of tools to create, alter and inspect Matroska files

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]


Branch: CURRENT, Version: 22.0.0nb1, Package name: mkvtoolnix-22.0.0nb1, Maintainer: pkgsrc-users

MKVtoolnix is a set of tools to create, alter and inspect Matroska files.

With these tools one can get information about (mkvinfo) Matroska files,
extract tracks/data from (mkvextract) Matroska files and create (mkvmerge)
Matroska files from other media files.


Required to run:
[multimedia/libmatroska] [multimedia/libogg] [archivers/lzo] [audio/flac] [audio/libvorbis] [devel/boost-libs] [devel/libebml] [textproc/cmark]

Required to build:
[textproc/po4a] [textproc/docbook-xsl] [devel/boost-headers] [pkgtools/cwrappers] [lang/ruby24-base]

Master sites:

SHA1: 36719c113c5667de0bef4ee4aafd4060bf19ff4c
RMD160: e0c6f0855356956b92622d2e1ac499606b2d52d3
Filesize: 4604.211 KB

Version history: (Expand)


CVS history: (Expand)


   2018-04-14 09:34:46 by Adam Ciarcinski | Files touched by this commit (681) | Package updated
Log message:
revbump after icu update
   2018-04-02 21:39:50 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
mkvtoolnix: updated to 22.0.0

Version 22.0.0 "At The End Of The World"

New features and enhancements
* mkvmerge, MKVToolNix GUI multiplexer: AC-3, DTS, TrueHD: added an option for
  removing/minimizing the dialog normalization gain for all supported types of
  the mentioned codecs.
* mkvmerge: AV1: added support for reading AV1 video from IVF, WebM and
  Matroska files.
* mkvmerge: FLAC: mkvmerge can now ignore ID3 tags in FLAC files which would
  otherwise prevent mkvmerge from detecting the file type.
* mkvinfo: the size and positions of frames within "SimpleBlock" and
  "BlockGroup" elements are now shown the same way they're shown for other
  elements (by adding the `-v -v` and `-z` options).
* MKVToolNix GUI: multiplexer: added options for deriving the track languages
  from the file name by searching for ISO 639-1/639-2 language codes or
  language names enclosed in non-word, non-space characters (e.g. \ 
"…[ger]…"
  for German or "…+en+…" for English).
* MKVToolNix GUI: info tool: implemented reading all elements in the file
  after the first cluster. Only top-level elements are shown; child elements
  are only loaded on demand.
* MKVToolNix GUI: info tool: added a context menu with the option to show a
  hex dump of the element with the bytes making up the EBML ID and the size
  portion highlighted in different colors. In-depth highlighting is done for
  the data in `SimpleBlock` and `Block` elements.
* MKVToolNix GUI: chapter editor: added an option to remove all end timestamps
  to the "additional modifications" dialog.

Bug fixes
* mkvmerge: MP4 reader: fixed reading the ESDS audio header atom if it is
  located inside a "wave" atom inside the "stsd" atom.
* mkvmerge: MP4 reader: AAC audio tracks signalling eight channels in the
  track headers but only seven in the codec-specific configuration will be
  treated as having eight channels.
* mkvmerge: MPEG TS reader: fixed wrong handling of the continuity counter for
  TS packets that signal that TS payload is present but where the adaptation
  field spans the whole TS packet.
* mkvmerge: the 'document type version' and 'document type read version'
  header fields are now set depending on which elements are actually written,
  not on which features are active (e.g. if a `SimpleBlock` is never written,
  then the 'read version' won't be set to 2 anymore).
* mkvmerge: the 'document type version' header field is now set to 4 correctly
  if any of the version 4 Matroska elements is written.
* mkvinfo: summary mode: the file positions reported for frames in
  `BlockGroup` elements did not take the bytes used for information such as
  timestamp, track number flags or lace sizes into account. They were
  therefore too low.
* mkvpropedit, MKVToolNix GUI header editor: the 'document type version' and
  'document type read version' header fields are now updated if elements
  written by the changes require higher version numbers.
* mkvpropedit, MKVToolNix GUI header editor: mandatory elements can now be
  deleted if there's a default value for them in the specifications.
* source code: fixed a compilation error on FreeBSD with clang++ 5.0.

Build system changes
* A compilation database (in the form of a file `compile_commands.json`) can
  be built automatically if the variable `BUILD_COMPILATION_DATABASE` is set
  to `yes` (e.g. as `rake BUILD_COMPILATION_DATABASE=yes`).
   2018-03-12 12:18:01 by Thomas Klausner | Files touched by this commit (2155)
Log message:
Recursive bumps for fontconfig and libzip dependency changes.
   2018-02-26 10:52:03 by Adam Ciarcinski | Files touched by this commit (3) | Package updated
Log message:
mkvtoolnix: updated to 21.0.0

Version 21.0.0 "Tardigrades Will Inherit The Earth"

New features and enhancements
* mkvmerge: track statistics tags: the TagDefault element will not be
  written anymore as it was always set to the default value 1
  anyway. Implements 2202.
* mkvmerge, MKVToolNix GUI: JSON files can now contain C++-style line comments
  outside of strings (e.g. something like this: // this is ignored). Such
  comments, even though not part of the official JSON specifications, are now
  ignored when reading JSON files.
* MKVToolNix GUI: chapter editor: opening a Matroska file without chapters in
  it will now open the file in an empty chapter editor instead of showing an
  error message. Implements 2218.
* MKVToolNix GUI: an "info" tool has been added, replacing the \ 
functionality
  of mkvinfo's GUI. The functionality is not on par yet but will be for
  release v22. Implements most of the functionality of 2104.

Bug fixes
* build system: configure was treating --disable-ubsan and
  --disable-addrsan the same as --enable-ubsan and
  --enable-addrsan.
* build system: an error message is output if a command to execute is not
  found instead of silently failing.
* build system: in addition to looking for the gettext C function and
  library, configure now also verifies the presence of the msgfmt program
  instead of simply relying on it.
* mkvmerge: appending files with additional parts at the same time was broken
  if more than one additional part was appended (e.g. when appending files
  from DVDs with something like '(' VTS_01_1.VOB VTS_01_2.VOB ')' + '('
  VTS_02_1.VOB VTS_02_2.VOB ')'). In such a situation the content from files
  VTS_02_1.VOB and VTS_02_2.VOB where laid out in parallel to the content
  from the earlier files.
* mkvmerge: FLV reader: a single invalid AAC frame was written for AAC audio
  tracks with codec initialization data longer than five bytes.
* mkvmerge: FLV reader: timestamps will be normalized down to 0.
* mkvmerge: MP4 reader: if an AAC track doesn't contain an AAC-specific
  decoder configuration in the ESDS portion, then a default decoder
  configuration will be generated based on the track's header data instead of
  skipping the track.
* mkvmerge: MP4 reader: fixed reading HEVC/h.265 video tracks if they're
  stored as Annex B byte streams inside MP4.
* mkvmerge: Ogg Opus reader: mkvmerge will now emit a warning instead of
  aborting when it encounters an Ogg Opus page with no data in the
  packet.
* mkvmerge, mkvextract: Matroska parser: fixed a segmentation fault that
  occurred whenever the first level 1 element after resyncing after an error
  in the file structure isn't a cluster.
* mkvmerge, MKVToolNix GUI multiplexer & header editor: fixed a crash during
  --enable-addrsan.
* build system: an error message is output if a command to execute is not
* build system: an error message is output if a command to execute is not
  found instead of silently failing.
* build system: in addition to looking for the gettext C function and
  library, configure now also verifies the presence of the msgfmt program
  instead of simply relying on it.
* mkvmerge: appending files with additional parts at the same time was broken
  if more than one additional part was appended (e.g. when appending files
  from DVDs with something like '(' VTS_01_1.VOB VTS_01_2.VOB ')' + '('
  VTS_02_1.VOB VTS_02_2.VOB ')'). In such a situation the content from files
  VTS_02_1.VOB and VTS_02_2.VOB where laid out in parallel to the content
  from the earlier files.
* mkvmerge: FLV reader: a single invalid AAC frame was written for AAC audio
  tracks with codec initialization data longer than five bytes.
* mkvmerge: FLV reader: timestamps will be normalized down to 0.
* mkvmerge: MP4 reader: if an AAC track doesn't contain an AAC-specific
  decoder configuration in the ESDS portion, then a default decoder
  configuration will be generated based on the track's header data instead of
  skipping the track.
* mkvmerge: MP4 reader: fixed reading HEVC/h.265 video tracks if they're
  stored as Annex B byte streams inside MP4.
* mkvmerge: Ogg Opus reader: mkvmerge will now emit a warning instead of
  aborting when it encounters an Ogg Opus page with no data in the
  packet.
* mkvmerge, mkvextract: Matroska parser: fixed a segmentation fault that
  occurred whenever the first level 1 element after resyncing after an error
  in the file structure isn't a cluster.
* mkvmerge, MKVToolNix GUI multiplexer & header editor: fixed a crash during
  file type detection for attachments if MKVToolNix is installed in a path
  with non-ASCII characters (e.g. German Umlauts).
* mkvinfo: the --hex-positions parameter did nothing in summary mode.
* mkvinfo: Windows: line endings will be written as \r\n (carriage return &
  line feed) again instead of just \n (line feed).
* mkvpropedit: adding track statistics tags: for tracks with content encoding
  (compression) mkvpropedit is now accounting the uncompressed number of
  bytes, not the encoded (compressed) number of bytes.
* MKVToolNix GUI: multiplexer: the subtitle character set can now be set for
  appended subtitle files, too.
* MKVToolNix GUI: multiplexer: when appending, all tracks appended to disabled
  tracks will start out disabled, too.

Build system changes
* mkvinfo: the GUI portion has been removed. mkvinfo is now a pure
  command-line program again.
   2018-02-02 11:04:40 by Jonathan Perkin | Files touched by this commit (2)
Log message:
mkvtoolnix: Leave pkgsrc to handle security features.
   2018-01-28 21:11:10 by Thomas Klausner | Files touched by this commit (462) | Package updated
Log message:
Bump PKGREVISION for gdbm shlib major bump
   2018-01-18 18:14:41 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
mkvtoolnix: updated to 20.0.0

Version 20.0.0 "I Am The Sun":

Important notes

* Feature removal: several deprecated features have been removed:
  * mkvmerge: the deprecated options --identify-verbose (and its counterpart
    -I), --identify-for-gui, --identify-for-mmg and
    --identification-format verbose-text
  * all command line tools: support for the deprecated, old, proprietary format
    used for option files
  * all command line tools: support for passing command line options via the
    deprecated environment variables MKVTOOLNIX_OPTIONS, MKVEXTRACT_OPTIONS,
    MKVINFO_OPTIONS, MKVMERGE_OPTIONS and MKVPROPEDIT_OPTIONS

* mkvinfo: most of its code was re-written in order to lay the groundwork for
  including its functionality in MKVToolNix GUI but with more features than
  the existing mkvinfo GUI. The result is that a lot of its output has been
  changed slightly while keeping the basic layout. Changes include but aren't
  limited to:

  * Several element names are a bit clearer (e.g. Maximum cache instead of
    MaxCache).
  * All timestamps and durations are now output as nanoseconds in formatted
    form (e.g. 01:23:45.67890123). All additional formats (e.g. floating
    point numbers output in seconds or milliseconds) were removed.
  * Element names for chapters and tags are now translated if a translation is
    available.
  * Elements located in wrong positions within the Matroska document are
    handled better.

  While mkvinfo's output is mostly kept very stable, it is not designed to be
  parsed by other utilities. Even though I've tried hard to cram all changes
  and cleanups into this version, additional changes may be made in the next
  couple of releases depending on user feedback and bug reports.

New features and enhancements

* mkvmerge: AVC/h.264 packetizer (framed): access unit delimiter NALUs will
  now be removed.

Bug fixes

* mkvmerge: AVC/h.264 parser: when fixing the bitstream timing information
  mkvmerge will now use exact representations of the desired field duration if
  possible. For example, when indicating 50 fields/second num_units_in_tick
  is set to 1 and time_scale to 50 instead of 5368709 and 268435456.
* mkvmerge: AVC/h.264 parser: mkvmerge no longer assumes that encountering
  sequence parameter set or picture parameter set NALUs signal the start of a
  new frame.
* mkvmerge: AVC/h.264 packetizer (framed): when mkvmerge is told to fix the
  bitstream timing information, it will now update all SPS NALUs, not just the
  ones in the AVCC.
* mkvmerge: MPEG TS reader: TS packet payloads will only be treated as PES
  packets if the payload actually starts with a PES start code. The prior
  behavior led to wrong timestamps and potentially broken frame data.
* mkvmerge: MPEG TS reader: mkvmerge will now drop incomplete PES packets as
  soon as an error is detected in the transport stream instead of passing the
  incomplete frame to the packetizer. An error is assumed either if the
  transport_error_indicator flag is set or if the value of the
  continuity_counter header field doesn't match the expected value.
* mkvmerge: Opus: when re-muxing Opus from Matroska mkvmerge will now write
  "block duration" elements for all block groups where a "discard \ 
padding" is
  set, too.
* mkvmerge: SRT reader: mkvmerge can now handle SRT files with timestamps
  without decimal places (e.g. 00:01:15 instead of 00:01:15.000).
* mkvmerge: read buffer I/O class: the class could get out of sync regarding
  the file position of the underlying file I/O class causing wrong data to be
  returned on subsequent read operations. One result was that trying to
  identifying MPLS files that refer to very short M2TS files caused mkvmerge
  to segfault.
* mkvmerge: multiplexer core: if there's a gap in audio timestamps, a new
  block group/lace will be started for the first frame after each gap. Before
  the fix the frame after the gap was often stored in the previous block group
  causing the gap to be in the wrong place: at the end of that block
  group.
* mkvextract: AVC/h.264: if two consecutive IDR frames with the same
  idr_pic_id parameter and no access unit delimiters are found between them,
  mkvextract will insert an access unit delimiter in order to signal the start
  of a new access unit.
* MKVToolNix GUI: update check dialog: Markdown links will now be converted to
  clickable links.
* build system: fixed a race condition when creating new directories if rake
  is run with -jN in newer versions of Ruby/rake.

Build system changes
* [cmark](https://github.com/commonmark/cmark), the CommonMark parsing and
  rendering library in C, is now required when building the GUIs.
   2018-01-01 22:18:57 by Adam Ciarcinski | Files touched by this commit (629) | Package updated
Log message:
Revbump after boost update