New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 596683 link

Starred by 1 user

Issue metadata

Status: Duplicate
Merged: issue 534301
Owner:
Last visit > 30 days ago
Closed: Mar 2016
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Android
Pri: 2
Type: Bug



Sign in to add a comment

MediaCodecBridge: account for channel count changes when OUTPUT_FORMAT_CHANGED returned

Project Member Reported by tsunghung@chromium.org, Mar 21 2016

Issue description

In some cases, the audio track's actual channel count may differ from what was read via DemuxerConfigs.

Please see  issue 443012  or b/24139023 for more context.

 
Cc: chcunningham@chromium.org
CC+=chcunningham@ who is working on some similar paths in desktop.

Comment 2 by qin...@chromium.org, Mar 21 2016

wolenetz@, chcunningham@, is this a chunk demuxer issue?

I would expect a ConfigChanged access unit from the chunk demuxer when channel count changes
I'd guess this is due to SBR signalling implicit changes. chcunningham@ knows more.
Dale is right, this is likely SBR implicit signaling. In addition to channel config, you may also see sample rate change (perhaps addressed in  issue 443012 ). Let me know if you need help finding sample content to easily demonstrate this.

Looks like we used to have a method to reconfigureAudioTrack [0], but that was removed [1] in favor of a less disruptive patch for changing sample rates. I'm not familiar with AudioTrack, but it seems like we can at least re-create it like we used to in [0]. Perhaps you already have a more surgical plan ;)

[0] https://codereview.chromium.org/813643002/patch/20001/30001
[1] https://codereview.chromium.org/805273007/patch/180001/190003
Cc: tsunghung@chromium.org
Owner: chcunningham@chromium.org
I tried to provide a quick fix here: https://bugs.chromium.org/p/chromium/issues/detail?id=596683#c3
It is not a good fix, since we may lost pre-existing audio data when recreating a new AudioTrack.

Could you please provide a right fix at chunk_demuxer level? Thanks.
Cc: ti...@chromium.org xhw...@chromium.org
Unfortunately this can't be done in ChunkDemuxer because the signal requires decoded the AAC packet. It is something that decoders must handle. As we switch to the unified media pipeline this will be handled by the bug chris is already working on. This is ultimately  issue 534301 .

For EME in the future, we'll want timav@'s MediaCodecAudioDecoder to support implicit changes.
FYI: this is the change for unified media pipeline. 
https://codereview.chromium.org/1805013003/
Owner: tsunghung@chromium.org
Andy will make a faster fix for cast. My change to fix spitzer go out in m51.
Mergedinto: 534301
Status: Duplicate (was: Assigned)
Cast team will have a local patch for this issue until we switch to unified media pipeline.

Sign in to add a comment