QuickTime/MP4 audio tracks can contain two instances of certain header
fields (channel count, bits/sample & channel, sample rate) in the STSD
atom: one instance in the version 0 header and one in the version 2
header parts. So far mkvmerge has used those from the version 0 header
only and ignored the ones from the version 2 header.
This has been changed to match the behavior of other players and MP4
readers like ffmpeg. If the STSD atom contains a version 2 structure
then the fields from it will be used. Otherwise the fields from the
version 0 part will be used.
Fixes#1633.
Normally configure uses pkg-config for detecting Qt and setting
QT_CFLAGS and QT_LIBS. With this option configure won't use pkg-config
and rely on the user having set both variables before running
configure. This enables using Qt on systems where no pkg-config files
are generated (e.g. Qt 5.6.0 on MacOS with frameworks enabled).
See https://github.com/Homebrew/homebrew/pull/50234
The behavior has been reversed: the GUI will be launched by default
unless the option »--no-gui« (or »-G«) has been given. This is due to
the fact that on both OS users often use portable versions respectively
disk images and launch the executable directly and not via start menu
entries. In those situations adding command line options for launching
the GUI is unnecessarily difficult.
The sample file in question contains many teletext packets that show the
same content. The old code would convert those to separate Matroska
frames.
Additionally each frame's duration was calculated from the wrong
timestamp. A teletext page can be drawn over the space of several
packets with different timestamps. Therefore the timestamp of the first
packet rendering a line of a teletext page must be used as the start
timestamp, and the timestamp of the first packet rendering a line of the
following teletext page as its end.
The old code was using a wrong packet for the end, though: the timestamp
of packet containing the end-of-page block.
Fixes#1623.