summaryrefslogtreecommitdiffstats
path: root/demux
diff options
context:
space:
mode:
authorwm4 <wm4@nowhere>2015-05-19 21:35:43 +0200
committerwm4 <wm4@nowhere>2015-05-19 21:35:43 +0200
commit1919f1e05be38d7c28c9430efaee7edf15fc21b3 (patch)
tree2390216cc322474761436ce3bd649d7bc1a98390 /demux
parenta6d3a6919abdf5526b7adaf07a3318d86be09a27 (diff)
downloadmpv-1919f1e05be38d7c28c9430efaee7edf15fc21b3.tar.bz2
mpv-1919f1e05be38d7c28c9430efaee7edf15fc21b3.tar.xz
ad_spdif: use DTS-HD passthrough only if the audio is really DTS-HD
Apparently some A/V receivers do not behave well if "normal" DTS is passed through using the high bitrate spdif format normally used for DTS-HD (other receivers are fine with it). Parse the first packet passed to ad_spdif by decoding it with libavcodec in order to get the profile. Ignore the --ad-spdif-dtshd if it's not DTS-HD. (If the codec profile changes midstream, the user is out of luck. But this is probably an insignificant corner case.) I thought about parsing the bitstream, but let's not. While it probably wouldn't be that much effort, we are trying to keep it down on codec details here - otherwise we could just do our own spdif framing instead of using libavformat's spdif pseudo-muxer. Another possibility, using the codec parameters signalled by libavformat, is disregarded. Our builtin Matroska decoder doesn't do this, and also we do not want on the demuxer having to decode some packets in order to retrieve codec params (as libavformat does). Fixes #1949.
Diffstat (limited to 'demux')
0 files changed, 0 insertions, 0 deletions