Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(92)

Unified Diff: webkit/renderer/media/crypto/proxy_decryptor.cc

Issue 17381007: EME: ProxyDecryptor creates MediaKeys instead of Decryptor. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: webkit/renderer/media/crypto/proxy_decryptor.cc
diff --git a/webkit/renderer/media/crypto/proxy_decryptor.cc b/webkit/renderer/media/crypto/proxy_decryptor.cc
index 398a286b088a2ba2d72b974e23de447fb6b753f5..7706e9f53a9394dded2a78d3ef3b959dbdc1e308 100644
--- a/webkit/renderer/media/crypto/proxy_decryptor.cc
+++ b/webkit/renderer/media/crypto/proxy_decryptor.cc
@@ -70,7 +70,7 @@ ProxyDecryptor::~ProxyDecryptor() {
// Destroy the decryptor explicitly before destroying the plugin.
{
base::AutoLock auto_lock(lock_);
- decryptor_.reset();
+ media_keys_.reset();
}
}
@@ -92,8 +92,8 @@ void ProxyDecryptor::SetDecryptorReadyCB(
// Normal decryptor request.
DCHECK(decryptor_ready_cb_.is_null());
- if (decryptor_) {
- decryptor_ready_cb.Run(decryptor_.get());
+ if (media_keys_) {
+ decryptor_ready_cb.Run(media_keys_->GetDecryptor());
return;
}
decryptor_ready_cb_ = decryptor_ready_cb;
@@ -109,23 +109,23 @@ bool ProxyDecryptor::GenerateKeyRequest(const std::string& key_system,
base::AutoLock auto_lock(lock_);
- if (!decryptor_) {
- decryptor_ = CreateDecryptor(key_system);
- if (!decryptor_) {
+ if (!media_keys_) {
+ media_keys_ = CreateMediaKeys(key_system);
+ if (!media_keys_) {
key_error_cb_.Run(
key_system, std::string(), media::MediaKeys::kClientError, 0);
return false;
}
}
- if (!decryptor_->GetMediaKeys()->GenerateKeyRequest(
+ if (!media_keys_->GenerateKeyRequest(
key_system, type, init_data, init_data_length)) {
- decryptor_.reset();
+ media_keys_.reset();
return false;
}
if (!decryptor_ready_cb_.is_null())
- base::ResetAndReturn(&decryptor_ready_cb_).Run(decryptor_.get());
+ base::ResetAndReturn(&decryptor_ready_cb_).Run(media_keys_->GetDecryptor());
return true;
}
@@ -139,7 +139,7 @@ void ProxyDecryptor::AddKey(const std::string& key_system,
DVLOG(1) << "AddKey()";
// WebMediaPlayerImpl ensures GenerateKeyRequest() has been called.
- decryptor_->GetMediaKeys()->AddKey(
+ media_keys_->AddKey(
key_system, key, key_length, init_data, init_data_length, session_id);
}
@@ -148,11 +148,11 @@ void ProxyDecryptor::CancelKeyRequest(const std::string& key_system,
DVLOG(1) << "CancelKeyRequest()";
// WebMediaPlayerImpl ensures GenerateKeyRequest() has been called.
- decryptor_->GetMediaKeys()->CancelKeyRequest(key_system, session_id);
+ media_keys_->CancelKeyRequest(key_system, session_id);
}
#if defined(ENABLE_PEPPER_CDMS)
-scoped_ptr<media::Decryptor> ProxyDecryptor::CreatePpapiDecryptor(
+scoped_ptr<media::MediaKeys> ProxyDecryptor::CreatePpapiDecryptor(
const std::string& key_system) {
DCHECK(web_media_player_client_);
DCHECK(web_frame_);
@@ -163,11 +163,11 @@ scoped_ptr<media::Decryptor> ProxyDecryptor::CreatePpapiDecryptor(
CreateHelperPlugin(plugin_type, web_media_player_client_, web_frame_);
if (!plugin_instance.get()) {
DVLOG(1) << "ProxyDecryptor: plugin instance creation failed.";
- return scoped_ptr<media::Decryptor>();
+ return scoped_ptr<media::MediaKeys>();
}
// The new object will call destroy_plugin_cb to destroy Helper Plugin.
- return scoped_ptr<media::Decryptor>(new PpapiDecryptor(
+ return scoped_ptr<media::MediaKeys>(new PpapiDecryptor(
plugin_instance,
base::Bind(&ProxyDecryptor::KeyAdded, weak_ptr_factory_.GetWeakPtr()),
base::Bind(&ProxyDecryptor::KeyError, weak_ptr_factory_.GetWeakPtr()),
@@ -178,10 +178,10 @@ scoped_ptr<media::Decryptor> ProxyDecryptor::CreatePpapiDecryptor(
}
#endif // defined(ENABLE_PEPPER_CDMS)
-scoped_ptr<media::Decryptor> ProxyDecryptor::CreateDecryptor(
+scoped_ptr<media::MediaKeys> ProxyDecryptor::CreateMediaKeys(
const std::string& key_system) {
if (CanUseAesDecryptor(key_system))
- return scoped_ptr<media::Decryptor>(new media::AesDecryptor(
+ return scoped_ptr<media::MediaKeys>(new media::AesDecryptor(
base::Bind(&ProxyDecryptor::KeyAdded, weak_ptr_factory_.GetWeakPtr()),
base::Bind(&ProxyDecryptor::KeyError, weak_ptr_factory_.GetWeakPtr()),
base::Bind(&ProxyDecryptor::KeyMessage, weak_ptr_factory_.GetWeakPtr()),
@@ -193,7 +193,7 @@ scoped_ptr<media::Decryptor> ProxyDecryptor::CreateDecryptor(
// |key_system|.
return CreatePpapiDecryptor(key_system);
#else
- return scoped_ptr<media::Decryptor>();
+ return scoped_ptr<media::MediaKeys>();
#endif // defined(ENABLE_PEPPER_CDMS)
}

Powered by Google App Engine
This is Rietveld 408576698