Chrome Version: 65.0.3325.181
OS: Linux
What steps will reproduce the problem?
(1) https://shaka-player-demo.appspot.com/demo/#asset=https://storage.googleapis.com/wvtemp/kqyang/aac/out.mpd
What is the expected result?
Content plays successfully.
What happens instead?
Shaka Error MEDIA.VIDEO_ERROR (4,,CHUNK_DEMUXER_ERROR_APPEND_FAILED: Append: stream parsing failed. Data size=775 append_window_start=0 append_window_end=54.12)
The content works with SRC. It works on Firefox as well.
It is not working in MSE because right now Chrome does not parse program_config_element():
Here is Chromium's current code:
https://cs.chromium.org/chromium/src/media/formats/mp4/aac.cc?rcl=697a2e68c91d94318128f5409d78209bd883f215&l=240
bool AAC::SkipGASpecificConfig(BitReader* bit_reader) const {
uint8_t extension_flag = 0;
uint8_t depends_on_core_coder;
uint16_t dummy;
RCHECK(bit_reader->ReadBits(1, &dummy)); // frameLengthFlag
RCHECK(bit_reader->ReadBits(1, &depends_on_core_coder));
if (depends_on_core_coder == 1)
RCHECK(bit_reader->ReadBits(14, &dummy)); // coreCoderDelay
RCHECK(bit_reader->ReadBits(1, &extension_flag));
RCHECK(channel_config_ != 0);
Here is the spec definition:
GASpecificConfig (samplingFrequencyIndex,
channelConfiguration,
audioObjectType)
{
frameLengthFlag; 1 bslbf
dependsOnCoreCoder; 1 bslbf
if (dependsOnCoreCoder) {
coreCoderDelay; 14 uimsbf
}
extensionFlag; 1 bslbf
if (! channelConfiguration) {
program_config_element ();
}
Comment 1 by chcunningham@chromium.org
, Apr 30 2018Owner: chcunningham@chromium.org
Status: Duplicate (was: Untriaged)