w3c / media-capabilities

Media Capabilities API
https://w3c.github.io/media-capabilities/
Other
78 stars 33 forks source link

*Configuration needs to be subclassed into *DecodingConfiguration #146

Open vi-dot-cpp opened 4 years ago

vi-dot-cpp commented 4 years ago

Due to additions to AudioConfiguration and VideoConfiguration that only apply to decodingInfo, these classes need to be subclassed into AudioDecodingConfiguration and VideoDecodingConfiguration, respectively.

cc: @chcunningham @gregwhitworth

chcunningham commented 4 years ago

Sounds good. Lets make a list on what to move out.

Audio: this one's obvious

For video its less clear. We recently added these

Most of these aren't really decode specific. I'm not aware of any econding pipeline in Chrome that would produce HDR, but maybe one day.

hasAlphaChannel is weird for encoding. Its weird grammatically, but I also can't think of a practical use. Its easy to imagine an encoding with an alpha channel, but to be useful you'd need to say a lot more about how the alpha channel is constructed (e.g. are you removing the background behind a talking head from a camera stream)? I'd be happy to move this one to decode-only.

vi-dot-cpp commented 4 years ago

Thanks for enumerating the items to move out. I think the list makes a lot of sense. Unless anyone objects, I will prepare the change in the upcoming weeks.

markafoltz commented 1 day ago

The only properties that are obvious to move to inherited dictionaries are AudioConfiguration.spatialRendering and VideoConfiguration.hasAlphaChannel. The HDR related properties may have future use cases for encoding?

I am wondering if it is worth complicating the IDL (and code that relies on it) for two properties.