Currently the set of CDM supported codecs that can be decoded by the CDM is provided in the manifest.json file associated with the CDM. However, the list is rather limited in what is specified:
"x-cdm-codecs": "vp8,vp9.0,avc1"
From this list, it is impossible to tell if the CDM supports 10-bit H264, for example. It also does not differentiate between audio and video codecs.
This list should be improved to indicate the profile and level (and possibly color space). That way requests from requestMediaKeySystemAccess() can better matched to what the CDM actually supports.
There doesn't appear to be any code in Chromium that supports a set of codecs. One way to do this would be to treat each substring as a regular expression. Another way might be to have a list of "codec.profile.level", but that list might become long. However, profiles often have names (e.g. H264 Baseline, Main, Extended, etc.) and levels aren't simple numbers (e.g. H264 1, 1b, 1.1, etc.)
H264 profiles and levels: https://en.wikipedia.org/wiki/H.264/MPEG-4_AVC#Profiles
Comment 1 by xhw...@chromium.org
, Oct 8Status: WontFix (was: Available)