Support encrypted VP9 with profile 1/2/3 |
||||||||||||
Issue descriptionCurrently encrypted VP9 profile 1/2/3 is not supported. This bug tracks all the work needs to be done to provide support: - Update CDM interface to support more video pixel format - Update the CDM to support VP9 profile 1/2/3 - Update Chrome to support VP9 profile 1/2/3
,
May 9 2017
kqyang@ will help generate encrypted vp9 profile 2 files (in webm and in mp4) for testing. Thanks!
,
May 9 2017
Assign to hmchen@ to generate the test contents as haoming already has vpxenc installed. Haoming, you can follow the below steps: (1) Generate vp9 profile 2 webm content bear-320x240-vp9_profile2.webm from bear-320x240.webm or bear-vp9.webm (using ffmpeg and vpxenc) (2) Generate a subsample encrypted vp9 profile 2 webm bear-320x240-v-vp9_profile2_subsample_enc-v.webm using shaka packager from bear-320x240-vp9_profile2.webm: --enable_fixed_key_encryption --key_id 30313233343536373839303132333435 --key ebdd62f16814d27b68ef122afce4ae3c --clear_lead 0 (3) Generate an encrypted vp9 profile 2 mp4 using shaka packager: https://cs.chromium.org/chromium/src/media/test/data/README?rcl=d654ee5a83218d46fb8198d1787100f515014932&l=69 Thanks.
,
May 11 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/443ea5e342701a3b20212c655c7816cbd28b53c8 commit 443ea5e342701a3b20212c655c7816cbd28b53c8 Author: xhwang <xhwang@chromium.org> Date: Thu May 11 05:42:17 2017 media: Set ColorSpace on decoded frames in DecryptingVideoDecoder If ColorSpace is not set in the decoded VideoFrame, and if the VideoDecoderConfig has a valid ColorSpace, use the ColorSpace in the config to set the ColorSpace of the VideoFrame. BUG= 707128 Review-Url: https://codereview.chromium.org/2872223002 Cr-Commit-Position: refs/heads/master@{#470826} [modify] https://crrev.com/443ea5e342701a3b20212c655c7816cbd28b53c8/media/base/test_helpers.cc [modify] https://crrev.com/443ea5e342701a3b20212c655c7816cbd28b53c8/media/filters/decrypting_video_decoder.cc [modify] https://crrev.com/443ea5e342701a3b20212c655c7816cbd28b53c8/media/filters/decrypting_video_decoder_unittest.cc
,
May 16 2017
,
May 16 2017
Not sure what you'll need to unblock, but just FYI on how to query libvpx for profile 2 support. https://codereview.chromium.org/2803823003/ Not planning to land that, but something similar will land eventually (following MediaCapapbilities design discussions we've had recently).
,
May 16 2017
Today "Maybe" will be translated to "Not Supported" in EME. We need to update the implementation to return "Supported" to enable it for encrypted pipeline. That's why I mark issue 604566 as blocking. Note that before we enable it for EME, we need to update the CDM and Chrome to support it. That's tracked in this issue.
,
May 17 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/75d512cf05fd123c31d73ff55bc782e3cde766d6 commit 75d512cf05fd123c31d73ff55bc782e3cde766d6 Author: xhwang <xhwang@chromium.org> Date: Wed May 17 02:28:49 2017 media: Add test to ensure encrypted VP9 profile 1/2/3 are not supported The support in Chromium is still under development. Adding test to make sure we don't accidentally enable them before we can actually handle them. BUG= 707128 TEST=This CL addes more test cases. Review-Url: https://codereview.chromium.org/2889653003 Cr-Commit-Position: refs/heads/master@{#472289} [modify] https://crrev.com/75d512cf05fd123c31d73ff55bc782e3cde766d6/chrome/browser/media/encrypted_media_supported_types_browsertest.cc
,
May 18 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/dc43ab1dbfab38936813c7ed60d5fa6f35876a7a commit dc43ab1dbfab38936813c7ed60d5fa6f35876a7a Author: hmchen <hmchen@chromium.org> Date: Thu May 18 03:47:37 2017 Add encrypted VP9 profile 2 video. - Add one clear VP9 profile 2 video and two encrypted versions, in webm and mp4 containers, generated with shaka packager. BUG= 707128 Review-Url: https://codereview.chromium.org/2885733002 Cr-Commit-Position: refs/heads/master@{#472649} [modify] https://crrev.com/dc43ab1dbfab38936813c7ed60d5fa6f35876a7a/media/test/data/README [add] https://crrev.com/dc43ab1dbfab38936813c7ed60d5fa6f35876a7a/media/test/data/bear-320x240-v-vp9_profile2_subsample_cenc-v.mp4 [add] https://crrev.com/dc43ab1dbfab38936813c7ed60d5fa6f35876a7a/media/test/data/bear-320x240-v-vp9_profile2_subsample_cenc-v.webm [add] https://crrev.com/dc43ab1dbfab38936813c7ed60d5fa6f35876a7a/media/test/data/bear-320x240-vp9_profile2.webm
,
Jun 2 2017
Issue 728459 has been merged into this issue.
,
Jun 2 2017
,
Jun 2 2017
,
Jun 20 2017
,
Mar 20 2018
,
Aug 1
,
Aug 10
,
Sep 20
,
Oct 3
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/0a9bf07fe2f2e3b523bde46e45efcd03d3a8f5e2 commit 0a9bf07fe2f2e3b523bde46e45efcd03d3a8f5e2 Author: Xiaohan Wang <xhwang@chromium.org> Date: Wed Oct 03 21:04:21 2018 media: Call MediaBrowserTest::SetUpCommandLine() in subclasses When overridding SetUpCommandLine(), subclasses of MediaBrowserTest should always call MediaBrowserTest::SetUpCommandLine(). This also helps remove duplicate code in setting autoplay policy in these tests. Bug: 707128 Test: Clean up only. No functionality change. Change-Id: Ic06ba4b48e20cf342db7f60a32565766f5d1a1d5 Reviewed-on: https://chromium-review.googlesource.com/c/1257599 Reviewed-by: Dale Curtis <dalecurtis@chromium.org> Commit-Queue: Xiaohan Wang <xhwang@chromium.org> Cr-Commit-Position: refs/heads/master@{#596358} [modify] https://crrev.com/0a9bf07fe2f2e3b523bde46e45efcd03d3a8f5e2/chrome/browser/media/encrypted_media_browsertest.cc [modify] https://crrev.com/0a9bf07fe2f2e3b523bde46e45efcd03d3a8f5e2/chrome/browser/media/media_browsertest.cc [modify] https://crrev.com/0a9bf07fe2f2e3b523bde46e45efcd03d3a8f5e2/chrome/browser/media/media_browsertest.h [modify] https://crrev.com/0a9bf07fe2f2e3b523bde46e45efcd03d3a8f5e2/content/browser/media/encrypted_media_browsertest.cc [modify] https://crrev.com/0a9bf07fe2f2e3b523bde46e45efcd03d3a8f5e2/content/browser/media/media_source_browsertest.cc [modify] https://crrev.com/0a9bf07fe2f2e3b523bde46e45efcd03d3a8f5e2/content/browser/media/media_suspend_browsertest.cc
,
Oct 5
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/164391c524af32c9fdc4f218a8d94097e3e89044 commit 164391c524af32c9fdc4f218a8d94097e3e89044 Author: Xiaohan Wang <xhwang@chromium.org> Date: Fri Oct 05 22:28:12 2018 media: Move library CDM type converters to a central file Adds cdm_type_converters.{h,cc} which collects all type converters between cdm:: and media:: types. Some conversion functions are renamed for consistency. Bug: 707128 Test: No functionality change. Change-Id: I0ac755f8820d4cf719f3b2c6c6885ec21f45f129 Reviewed-on: https://chromium-review.googlesource.com/c/1260488 Commit-Queue: Xiaohan Wang <xhwang@chromium.org> Reviewed-by: John Rummell <jrummell@chromium.org> Cr-Commit-Position: refs/heads/master@{#597347} [modify] https://crrev.com/164391c524af32c9fdc4f218a8d94097e3e89044/media/cdm/BUILD.gn [modify] https://crrev.com/164391c524af32c9fdc4f218a8d94097e3e89044/media/cdm/cdm_adapter.cc [add] https://crrev.com/164391c524af32c9fdc4f218a8d94097e3e89044/media/cdm/cdm_type_conversion.cc [add] https://crrev.com/164391c524af32c9fdc4f218a8d94097e3e89044/media/cdm/cdm_type_conversion.h [modify] https://crrev.com/164391c524af32c9fdc4f218a8d94097e3e89044/media/cdm/library_cdm/clear_key_cdm/cdm_video_decoder.cc [modify] https://crrev.com/164391c524af32c9fdc4f218a8d94097e3e89044/media/cdm/library_cdm/clear_key_cdm/clear_key_cdm.cc [modify] https://crrev.com/164391c524af32c9fdc4f218a8d94097e3e89044/media/mojo/services/mojo_cdm_allocator.cc
,
Oct 8
,
Oct 8
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/9a301b003c3c9e8019ba379ff084cfb785fa89bd commit 9a301b003c3c9e8019ba379ff084cfb785fa89bd Author: Xiaohan Wang <xhwang@chromium.org> Date: Mon Oct 08 21:40:23 2018 media: Skip Widevine VP9 profile 2 browser tests Currently Widevine CDM doesn't support VP9 profile 2 yet. So skip these tests for now. Bug: 707128 ,893114 Test: Fix failing tests Change-Id: Ibdedfda02d1e47831569b44c03a6cdd2caa53730 Reviewed-on: https://chromium-review.googlesource.com/c/1268961 Commit-Queue: Xiaohan Wang <xhwang@chromium.org> Reviewed-by: John Rummell <jrummell@chromium.org> Cr-Commit-Position: refs/heads/master@{#597688} [modify] https://crrev.com/9a301b003c3c9e8019ba379ff084cfb785fa89bd/chrome/browser/media/encrypted_media_browsertest.cc
,
Oct 9
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/153df6b0dc8843062add4bec9b44b4bc58e16df1 commit 153df6b0dc8843062add4bec9b44b4bc58e16df1 Author: Xiaohan Wang <xhwang@chromium.org> Date: Tue Oct 09 17:23:18 2018 media: Split SplitCodecsToVector() into two functions Currently this function takes a boolean parameter "strip" which when true will also strip the codecs. However, since it's a boolean, every time I see SplitCodecsToVector(..., false) or SplitCodecsToVector(..., true), I have to think twice what it means. This CL splits this function into two functions: SplitCodecs() and StripCodecs() to make it clear. This also make it easier to override a codec string after split but before strip, which may be useful in some special cases, e.g. treat "vp09.00.10.08" the same as "vp9.0". TBR=haraken@chromium.org Bug: 707128 Test: Unittests updated. Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux_optional_gpu_tests_rel;luci.chromium.try:mac_optional_gpu_tests_rel;luci.chromium.try:win_optional_gpu_tests_rel Change-Id: I2863ea6ca84bb4717f732257b12010bd823fafac Reviewed-on: https://chromium-review.googlesource.com/c/1269807 Commit-Queue: Xiaohan Wang <xhwang@chromium.org> Reviewed-by: Chrome Cunningham <chcunningham@chromium.org> Cr-Commit-Position: refs/heads/master@{#597971} [modify] https://crrev.com/153df6b0dc8843062add4bec9b44b4bc58e16df1/content/renderer/media_recorder/media_recorder_handler.cc [modify] https://crrev.com/153df6b0dc8843062add4bec9b44b4bc58e16df1/media/base/mime_util.cc [modify] https://crrev.com/153df6b0dc8843062add4bec9b44b4bc58e16df1/media/base/mime_util.h [modify] https://crrev.com/153df6b0dc8843062add4bec9b44b4bc58e16df1/media/base/mime_util_internal.cc [modify] https://crrev.com/153df6b0dc8843062add4bec9b44b4bc58e16df1/media/base/mime_util_internal.h [modify] https://crrev.com/153df6b0dc8843062add4bec9b44b4bc58e16df1/media/base/mime_util_unittest.cc [modify] https://crrev.com/153df6b0dc8843062add4bec9b44b4bc58e16df1/media/blink/key_system_config_selector.cc [modify] https://crrev.com/153df6b0dc8843062add4bec9b44b4bc58e16df1/media/blink/key_system_config_selector_unittest.cc [modify] https://crrev.com/153df6b0dc8843062add4bec9b44b4bc58e16df1/media/filters/chunk_demuxer.cc [modify] https://crrev.com/153df6b0dc8843062add4bec9b44b4bc58e16df1/media/filters/source_buffer_state.cc [modify] https://crrev.com/153df6b0dc8843062add4bec9b44b4bc58e16df1/third_party/blink/renderer/platform/network/mime/mime_type_registry.cc
,
Oct 26
All changes in Chromium have been landed. The CDM change is tracked by issue 899403. |
||||||||||||
►
Sign in to add a comment |
||||||||||||
Comment 1 by xhw...@chromium.org
, Mar 31 2017