Intent to Implement: New VP9 codec string and Profile 2 query support

70 views
Skip to first unread message

Husain Bengali

unread,
Apr 4, 2017, 5:10:52 PM4/4/17
to blink-dev, chcunn...@chromium.org

Contact emails

hben...@chromium.org, chcunn...@chromium.org


Specs


Spec for new VP9 codec string:

http://www.webmproject.org/vp9/mp4/#codecs-parameter-string


Tag review is not applicable.


Summary

VP9 is an open and royalty-free video codec that has been supported in Chromium since 2013. This update adds a new string format for describing the encoding properties, such as the profile, level, etc. Such properties are common in video codecs but are not exposed in the current VP9 string format. In addition, this update includes using the new format to advertise support for VP9 Profile 2. The string format is accepted by media-related APIs, including MediaSource.isTypeSupported(), HTMLMediaElement.canPlayType(), and EME’s requestMediaKeySystemAccess().


For example, the codec string parameter for VP9 Profile 2 could be vp09.02.10.10.01.09.16.09.01. Details on how the codec string is constructed can be found in the VP9 media file format binding spec linked to above.


Motivation

Currently, the APIs for checking media type support can only handle the most common VP9 bitstream (Profile 0) and does not support more detailed querying for support of color space, bit depth or EOTF. VP9 Profile 2 is needed to enable higher bit-depth video and the new binding allows higher granularity in the query for specific features of the VP9 bitstream.


Is this feature supported on all six Blink platforms (Windows, Mac, Linux, Chrome OS, Android, and Android WebView)?

Yes


Interoperability and Compatibility Risk

The change was discussed with Netflix, YouTube and Microsoft. Therefore, we expect the interoperability/compatibility risks to be very low with the discussion being mostly around the format of the string.


Edge: Positive

Firefox: No signals

Safari: No signals

Web developers: Positive


Launch tracking bug

https://crbug.com/672240


Entry on the feature dashboard

https://www.chromestatus.com/feature/6230726177456128

Reply all
Reply to author
Forward
0 new messages