-
Notifications
You must be signed in to change notification settings - Fork 32
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
VP9 codec string and backward compatibility #85
Comments
This was an intentional decision on my part. I wanted media capabilities answers of support=true/false to be 100% correct. "vp9" is an umbrella string for every profile, color space etc. With that ambiguity, I can't tell for certain whether the support is really there, nor what decoding paths will be used (smooth/powerEfficient). fbeaufort@ raised similar concerns and some backward compatibility ideas in https://bugs.chromium.org/p/chromium/issues/detail?id=783153#c9, but I've so far held the line ;). |
So it sounds like it was intentional, and that applications that deal with ambiguous "vp9" content will have to make an assumption and translate that string to a more detailed one. Is that accurate? Is there any advice you can give on what that assumed string should be? |
If you only have "vp9", and no other signals about HDR, profile, etc... I would guess it as "vp09.00.10.08" (profile 0, level 1, bitdepth 8) - this is the most common case. This is exactly what fbeaufort@ suggested we default to in the crbug above, but with the distinction that the API doesn't make the guess - the caller does. Without this, it is unlikely that callers would realize that a guess is even being made. |
Fair enough. That's what we'll do, then. |
Sounds good! Thanks for spinning up the shaka issue. |
The Shaka Player demo has lots of content with
codecs="vp9"
in it.isTypeSupported()
understands this string, but MC in Chrome reports that it is not supported.Is it intended that MC not support
codecs="vp9"
, but only strings likecodecs="vp09.00.10.08"
? I could always re-package my own content with these new, more detailed strings, but it seems like there is a bigger issue with compatibility. IfMediaSource.isTypeSupported('video/webm; codecs="vp9"')
returnstrue
, why would it be okay for MC say the same type is not supported?Is this an implementation bug in Chrome, or an intended feature of MC? Are applications expected to translate "vp9" into something else? How should that be done?
The text was updated successfully, but these errors were encountered: