Contact emails:
Explainer:
Explainer: Codec support updates for MediaRecorder
TAG review:
N/A, small incremental change
Summary:
Support for HEVC platform encoding was added in WebCodecs in Chromium M130. As a follow-up, support has been added to the MediaRecorder API in Chromium. The API now supports both MP4 and Matroska muxer types with different HEVC and H.264 mime type specifications. HEVC encoding is only supported if the user's device and operating system provide the necessary capabilities.
Link to “Intent to Prototype”
N/A, small incremental change and going directly for shipping.
Risks
Interoperability and Compatibility
Gecko: Firefox 136 recently added support for decoding HEVC videos, see https://bugzilla.mozilla.org/show_bug.cgi?id=1924066. Standards position request link: https://github.com/mozilla/standards-positions/issues/1174
WebKit: No official signal but note that MacBooks/iPhones have >95% HW encode/decode support of H265 and that Safari has added support for this codec in adjacent web APIs such as WebRTC. Standards position request link: https://github.com/WebKit/standards-positions/issues/460
Web developers: Positive. Support implemented by ByteDance & Intel.
Will this feature be supported on all six Blink platforms (Windows, Mac, Linux, Chrome OS, Android, and Android WebView)?
The support is currently limited to Windows, macOS and Android hosts. ChromeOS and Linux support may follow in the future when/if their platform codec availability allows.
Is this feature fully tested by web-platform-tests?
Yes, the existing test suite was extended with cases for the new codec strings.
Tracking bug
Link to entry on the Chrome Platform Status
https://chromestatus.com/feature/6375884229181440
Could you please request the various security, privacy,
enterprise, etc. bits in your chromestatus entry?
--
You received this message because you are subscribed to the Google Groups "blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+...@chromium.org.
To view this discussion visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/edc31811-00da-4410-bfc7-b224bb825e4fn%40chromium.org.
To view this discussion visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/cb683232-ef5e-47f4-93fa-3e8809a0d2b5%40chromium.org.
> Could you please request the various security, privacy, enterprise, etc. bits in your chromestatus entry?
Done!
Is decoding HEVC in plain <video> supported? I tried `document.createElement('video').canPlayType('video/mp4; codecs=hvc1')` which returns "probably" in Safari, but the empty string in Chrome. I can't tell from https://caniuse.com/hevc if I should expect it to be supported or not.
And how about in MSE?
Are there contexts where HEVC is not yet supported that aren't covered by this intent? WebRTC comes to mind, but are there any others?
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+unsubscribe@chromium.org.
To view this discussion visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/edc31811-00da-4410-bfc7-b224bb825e4fn%40chromium.org.
--
You received this message because you are subscribed to the Google Groups "blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+unsubscribe@chromium.org.
To view this discussion visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/cb683232-ef5e-47f4-93fa-3e8809a0d2b5%40chromium.org.
--
You received this message because you are subscribed to the Google Groups "blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+unsubscribe@chromium.org.
--
You received this message because you are subscribed to the Google Groups "blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+unsubscribe@chromium.org.
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+...@chromium.org.
To view this discussion visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/edc31811-00da-4410-bfc7-b224bb825e4fn%40chromium.org.
--
You received this message because you are subscribed to the Google Groups "blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+...@chromium.org.
To view this discussion visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/cb683232-ef5e-47f4-93fa-3e8809a0d2b5%40chromium.org.
--
You received this message because you are subscribed to the Google Groups "blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+...@chromium.org.
--
You received this message because you are subscribed to the Google Groups "blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+...@chromium.org.
Given your example, it seems like `video/mp4;codecs="hev1.1.6.L120.90"` is supported by Chrome but not Safari, while the opposite is true for `video/mp4;codecs="hvc1"`.
For MediaRecorder.isTypeSupported(), will we have the same situation? Are these strings clearly defined by specs and tested in WPT?
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+unsubscribe@chromium.org.