Clarification needed for handling raw AAC bitstreams without description
Nobody has claimed this yet.
- Dominant language
- HTML
- Stars
- 1.3k
- Forks
- 194
- Avg merge
- 1d 13h
- Merged PRs (30d)
- 3
Description
According to the AAC registration in WebCodecs, when the description is not present in AudioDecoderConfig, the bitstream is assumed to be in ADTS format. Otherwise, it's assumed to be in AAC. However, there's a case (https://webvideo-js.pages.dev/) where raw AAC data is provided to the audio decoder without supplying description data in configure beforehand (#826 seems a similar issue for opus).
Currently, Chrome can decode this raw AAC data, and Firefox has patches to support this behavior as well (by generating a AudioSpecificConfig).
This issue can be easily reproduced by adding a test case in audioDecoder-codec-specific.https.any.js WPT that replicates the properties of MP4_AAC_DATA but omits the description. I would like to ask if this behavior should be officially mentioned or detailed in the WebCodecs spec. If this use case is something that should be supported, it might be worthwhile to include a corresponding WPT for this scenario.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the AAC registration's description section and audioDecoder-codec-specific.https.any.js, including MP4_AAC_DATA; compare the no-description case with the related #826 issue and existing WebCodecs behavior. Done means deciding whether this behavior belongs in the specification and, if supported, documenting the expected behavior in a corresponding WPT.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript
- Domain
- api, documentation, testing
- Issue type
- Documentation
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 38/100