Commit 444a1efa authored by Xiaohan Wang's avatar Xiaohan Wang Committed by Commit Bot

PlayReady on Android requires hardware secure codecs

Today we always use hardware secure codecs for non-Widevine key systems.
This is DCHECKed in AndroidCdmFactory::Create() when we create
MediaDrmBridge for PlayReady key system. Also, in
MediaDrmBridge::IsSecureCodecRequired(), we always return true for
non-Widevine key systems including PlayReady.

This CL updates PlayReadyKeySystemProperties to always return
HW_SECURE_CODECS_REQUIRED in GetRobustnessConfigRule() for PlayReady key
system to make everything consistent.

BUG=577777

Change-Id: I7b94f5dc22fb8c98d7e17709f767c766ebd54858
Reviewed-on: https://chromium-review.googlesource.com/531855
Commit-Queue: Xiaohan Wang <xhwang@chromium.org>
Reviewed-by: default avatarLuke Halliwell <halliwell@chromium.org>
Reviewed-by: default avatarDavid Dorwin <ddorwin@chromium.org>
Cr-Commit-Position: refs/heads/master@{#478835}
parent f72a28a6
......@@ -77,8 +77,17 @@ class PlayReadyKeySystemProperties : public ::media::KeySystemProperties {
EmeConfigRule GetRobustnessConfigRule(
EmeMediaType media_type,
const std::string& requested_robustness) const override {
return requested_robustness.empty() ? EmeConfigRule::SUPPORTED
: EmeConfigRule::NOT_SUPPORTED;
if (requested_robustness.empty()) {
#if defined(OS_ANDROID)
return EmeConfigRule::HW_SECURE_CODECS_REQUIRED;
#else
return EmeConfigRule::SUPPORTED;
#endif
}
// Cast-specific PlayReady implementation does not currently recognize or
// support non-empty robustness strings.
return EmeConfigRule::NOT_SUPPORTED;
}
EmeSessionTypeSupport GetPersistentLicenseSessionSupport() const override {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment