dca: consider a stream with XXCh/X96 in ExSS as DTS-HD HRA

DTS-HD HRA streams do not always have an XBR extension in the extension
substream. Instead they can have only XXCh and X96 extensions in
there and still be considered DTS-HD HRA.

This is also confirmed with Onkyo TX-SR607 receiver which recognizes
such a stream as HiRes Audio.

Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit 8f4a5d225c)
This commit is contained in:
Anssi Hannula 2011-01-21 20:00:40 +00:00 committed by Michael Niedermayer
parent b6125545da
commit cf9cb1f99a

View File

@ -1501,12 +1501,9 @@ static int dca_exss_parse_asset_header(DCAContext *s)
if (extensions_mask & DCA_EXT_EXSS_XLL)
s->profile = FF_PROFILE_DTS_HD_MA;
else if (extensions_mask & DCA_EXT_EXSS_XBR)
else if (extensions_mask & (DCA_EXT_EXSS_XBR | DCA_EXT_EXSS_X96 |
DCA_EXT_EXSS_XXCH))
s->profile = FF_PROFILE_DTS_HD_HRA;
else if (extensions_mask & DCA_EXT_EXSS_X96)
s->profile = FF_PROFILE_DTS_96_24;
else if (extensions_mask & DCA_EXT_EXSS_XXCH)
s->profile = FFMAX(s->profile, FF_PROFILE_DTS_ES);
if (!(extensions_mask & DCA_EXT_CORE))
av_log(s->avctx, AV_LOG_WARNING, "DTS core detection mismatch.\n");