New issue
Advanced search Search tips

Issue 846064 link

Starred by 3 users

Issue metadata

Status: Assigned
Owner:
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug



Sign in to add a comment

Ensure ExternalClearKey tests cover the decrypt-and-decode path

Project Member Reported by xhw...@chromium.org, May 23 2018

Issue description

Currently ExternalClearKey tests playback of encrypted content. When using "decrypt-only" key system, we force Clear Key CDM to run in decrypt-only mode. But when other key systems are used, the CDM can do both decrypt-and-decode, and decrypt-only, and both path will make the test pass. This is fine in most cases, but sometimes it can be confusing since different tests will actually use different paths.

This bug will track this issue to make sure we have the decrypt-and-decode path covered.
 
Project Member

Comment 1 by bugdroid1@chromium.org, May 23 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/d9a54c4739740e4c780386813bacd716d3d72f40

commit d9a54c4739740e4c780386813bacd716d3d72f40
Author: Xiaohan Wang <xhwang@chromium.org>
Date: Wed May 23 22:40:19 2018

media: Enable LibvpxCdmVideoDecoder in ClearKeyCdm

Previously LibvpxCdmVideoDecoder was disabled so we always do
decrypt-only for VP8 and VP9 (VPX). This CL reenable it to provide test
coverage on VPX decrypt-and-decode path.

Bug: 846064
Test: This CL improves test coverage on EncryptedMediaTest.
Change-Id: I48d2c1b52ffd37ab42c57355f4a0df4c16239f0d
Reviewed-on: https://chromium-review.googlesource.com/1069999
Reviewed-by: John Rummell <jrummell@chromium.org>
Commit-Queue: Xiaohan Wang <xhwang@chromium.org>
Cr-Commit-Position: refs/heads/master@{#561288}
[modify] https://crrev.com/d9a54c4739740e4c780386813bacd716d3d72f40/media/cdm/library_cdm/clear_key_cdm/BUILD.gn
[modify] https://crrev.com/d9a54c4739740e4c780386813bacd716d3d72f40/media/cdm/library_cdm/clear_key_cdm/clear_key_cdm.cc
[modify] https://crrev.com/d9a54c4739740e4c780386813bacd716d3d72f40/media/cdm/library_cdm/clear_key_cdm/libvpx_cdm_video_decoder.cc
[modify] https://crrev.com/d9a54c4739740e4c780386813bacd716d3d72f40/media/cdm/library_cdm/clear_key_cdm/libvpx_cdm_video_decoder.h
[modify] https://crrev.com/d9a54c4739740e4c780386813bacd716d3d72f40/media/filters/vpx_video_decoder.cc

Project Member

Comment 2 by bugdroid1@chromium.org, May 24 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/db0e70dbc141e8ce3b3983dd0f76d6685c2aa21a

commit db0e70dbc141e8ce3b3983dd0f76d6685c2aa21a
Author: Xiaohan Wang <xhwang@chromium.org>
Date: Thu May 24 01:49:53 2018

media: Forgo DecryptingAudioDecoder except for tests

DecryptingAudioDecoder was added to support decrypt-and-decode of audio
buffers by a CDM using the Decryptor interface. Since then CDMs have
evolved and today there's no CDM supporting this path in production.
Though in browser tests, this paths is still used where the Clear Key
CDM can decrypt-and-decode audio.

This CL changes DefaultDecoderFactory such that by default
DecryptingAudioDecoder will not be created except when External Clear
Key is enabled, which typically is only set in browser tests.

This will save an IPC round trip during initialization when playing
media with encrypted audio, and hopefully will improve start-to-play
time.

Note that decrypt-and-decode of audio is supported on Android, but via
MojoAudioDecoder directly, not through an explicit Decryptor interface.

Bug: 846064
Test: browser tests still pass
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: Iffcbd488e613b63d50bf077dc27b4e5c4105adc3
Reviewed-on: https://chromium-review.googlesource.com/1070554
Reviewed-by: John Rummell <jrummell@chromium.org>
Commit-Queue: Xiaohan Wang <xhwang@chromium.org>
Cr-Commit-Position: refs/heads/master@{#561354}
[modify] https://crrev.com/db0e70dbc141e8ce3b3983dd0f76d6685c2aa21a/media/filters/video_decoder_selector_unittest.cc
[modify] https://crrev.com/db0e70dbc141e8ce3b3983dd0f76d6685c2aa21a/media/renderers/default_decoder_factory.cc

Sign in to add a comment