这是indexloc提供的服务,不要输入任何密码
Skip to content

DTS:X TV reporting ACTION_HDMI_AUDIO_PLUG.EXTRA_MAX_CHANNEL_COUNT as 8 instead of 10 #396

@cedricxperi

Description

@cedricxperi

Media3 Version

Media3 1.0.1

Devices that reproduce the issue

Xiaomi TV V435H

Devices that do not reproduce the issue

No response

Reproducible in the demo app?

Yes

Reproduction steps

  1. Get the code from this commit 0391434 from pull request

  2. Add https://secured.streamdts.com/dtsx/dtsx/dash/callout/index.mpd to media.exolist.json

  3. Comment out the following around line 231 of Audiocapabilities.java
    /* if (format.sampleMimeType == MimeTypes.AUDIO_DTS_X) {
    if (channelCount > 10) {
    return null;
    }
    } else */

  4. Connect Xiaomi V435H to a Audio Video Receiver

  5. Enable tunnel mode in Exoplayer

  6. Playback the following DASH stream https://secured.streamdts.com/dtsx/dtsx/dash/callout/index.mpd

Expected result

Media should playback properly.

Actual result

Playback will fail at maxChannelCount check in AudioCapabilities.getEncodingAndChannelConfigForPassthrough(). Because the number of channels encoded in the stream is 10, while the TV (through ACTION_HDMI_AUDIO_PLUG.EXTRA_MAX_CHANNEL_COUNT) reported that the connected audio sink only supports up to 8 channels. The TV is actually capable of playing back the stream but is blocked by this check on Exoplayer side.

NOTE: This issue is related to the following pull request: #335 A temporary fix has been added in this pull request which has not been merged. As it is a device issue, once the device reports the maxChannelCount correctly, we can remove the fix in AudioCapabilities.getEncodingAndChannelConfigForPassthrough(). cc @tianyif

Media

https://secured.streamdts.com/dtsx/dtsx/dash/callout/index.mpd

Bug Report

Metadata

Metadata

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions