Update audio video decoder hfps - #768
Conversation
There was a problem hiding this comment.
Pull request overview
Updates the AudioDecoder and VideoDecoder HAL Feature Profile (HFP) YAMLs to express richer codec capability information intended to support W3C Media Capabilities, including per-codec profile limits and (for video) dynamic range per codec.
Changes:
- Restructured
videodecoder/current/hfp-videodecoder.yamlto usecodecCapabilitieswith per-profile limits and per-codecdynamicRange. - Replaced the simple
supportedCodecslist inaudiodecoder/current/hfp-audiodecoder.yamlwith detailed per-codec/per-profile constraints (bitrate/channels/sample rate/bit depth). - Adjusted top-level keys/resource layout in both HFPs (e.g., introducing
Capabilitiesblocks).
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 3 comments.
| File | Description |
|---|---|
| videodecoder/current/hfp-videodecoder.yaml | Refactors video decoder HFP to a per-codec/per-profile capability structure and adds per-codec dynamic range declarations. |
| audiodecoder/current/hfp-audiodecoder.yaml | Expands audio decoder HFP from a codec list into detailed codec/profile constraint declarations. |
Suppressed comments (1)
videodecoder/current/hfp-videodecoder.yaml:260
- Same as above: the resource no longer declares
supportedDynamicRanges, but Capabilities.aidl still exposes that field and older HFP versions provided it. Consider retainingsupportedDynamicRangesas the union of all codecdynamicRangeentries for this resource.
supportedColorimetries:
- BT601_525
- BT601_625
- BT709
supportsSecure: true
| supportedColorimetries: | ||
| - BT601_525 | ||
| - BT601_625 | ||
| - BT709 | ||
| - BT2020 | ||
| supportsSecure: true |
| Capabilities: # Resource list | ||
| - 0: # Resource object begins (high-tier decoder) | ||
| codecCapabilities: |
| audiodecoder: # Component object begins | ||
| interfaceVersion: current | ||
| Capabilities: | ||
| - 0: | ||
| codecCapabilities: | ||
| - PCM: |
|
Thanks for picking this up — the direction is right, and splitting codec/profile with per-profile limits is what we need for W3C Media Capabilities alignment. A few things to resolve before this can land. Blocking: the audio HFP doesn't parse into the intended structureThe two files use different indentation conventions and the audio one nests incorrectly. Video is correct — - MPEG2_VIDEO:
profiles:
- MPEG2_SIMPLE:
maxLevel: MPEG2_LEVEL_HIGHparses to Audio is not — - PCM:
profiles:
- BASE:
maxBitrateInBps: 1536000parses to The codec name and the profile name both become null-valued siblings rather than parents. This affects every codec and every profile in Same issue on the resource index, in both files. On Worth adding an HFP parse/schema check to CI so this class of error can't merge.
|
Update audio video decoder hfps to support w3c media capabilities
Existing attributes in hfp are not modified unless it is needed for new schema to support media capabilities
Task: #767