Description
ExoPlayer Version
2.17.1
Devices that reproduce the issue
Nvidia Shield TV Pro
Devices that do not reproduce the issue
None
Reproducible in the demo app?
Yes
Reproduction steps
Playback a DASH DTS Digital Surround audio stream on Nvidia Shield TV Pro (connected to an AVR via HDMI) running v2.17.1 Exoplayer demo app.
The DTS bitstream should be passthrough to the AVR for decoding. This works in earlier versions of Exoplayer, E.g. v2.11.8. In v2.17.1 the playback stops with a warning message, "Media includes audio tracks, but none are playable by this device".
Solution: To fix this issue, add the following to DashManifestParser.parseAudioChannelConfiguration()
case "urn:dts:dash:audio_channel_configuration:2012":
case "tag:dts.com,2014:dash:audio_channel_configuration:2012":
case "tag:dts.com,2018:uhd:audio_channel_configuration":
audioChannels = parseDtsChannelConfiguration(xpp);
break;
These are defined in DASH-IF guidelines: https://dashif.org/docs/Audio%20Amendment%20to%20DASH%20IOP%204.3.pdf
Expected result
The DTS bitstream should be passthrough to the AVR for decoding.
Actual result
Playback stops with a warning message, "Media includes audio tracks, but none are playable by this device"
Media
Test media and code for parseDtsChannelConfiguration(xpp) will be emailed to dev.exoplayer@gmail.com
Bug Report
- You will email the zip file produced by
adb bugreport
to dev.exoplayer@gmail.com after filing this issue.