[Matroska-devel] DTS-MA: number of channels
moritz at bunkus.org
Thu Jun 7 09:17:00 CEST 2012
due to a recent bug report for mkvmerge I stumbled across this...
undefined part in our specs. DTS-MA (Master Audio) can actually have
two different number of encoded channels. For those that don't know
how the -MA part works: DTS knows a core and optional extensions. Any
decoder not capable of decoding those extensions can simply drop them
(as can any muxer) and just work on the core. Therefore DTS-MA is a
real extension of DTS and not just a modification.
Now the problem is that it is possible that the core part only
contains six channels while extensions carry two additional surround
channels (often enough they only carry the information required to
decode the existing channels in the core losslessly). This leaves us
in the situation that there are actually two different numbers of
channels. Which of those do we put into the track headers?
MediaInfo's GUI reports both values (something like "6 core channels,
8 total"). ffmpeg's ffprobe only reports 5.1.
The closest thing we have at the moment is the AAC SBR situation. For
those we kept the nominal sampling rate (e.g. 24000) in the
SamplingFrequency track header field and put the output sampling
frequency (e.g. 48000) into a newly introduced element called
OutputSamplingFrequency. We could do something similar for the number
of channels, e.g. introduce "TotalChannels" or something similar that
doesn't sound too DTS-centric.
However, that still leaves the question which value to put into the
existing "Channels" element. I think the number of core channels would
be the correct value because those are the minimum number of channels
that will be output by each and every decoder out there, whether or
not they support the DTS extensions.
More information about the Matroska-devel