Index: media/crypto/aes_decryptor.cc |
diff --git a/media/crypto/aes_decryptor.cc b/media/crypto/aes_decryptor.cc |
index a4b6bc6bdede6612af983ea0ad7b29ccf6f088c4..83f818e60d015118785d090f1b31c35e786195d3 100644 |
--- a/media/crypto/aes_decryptor.cc |
+++ b/media/crypto/aes_decryptor.cc |
@@ -14,7 +14,6 @@ |
#include "media/base/audio_decoder_config.h" |
#include "media/base/decoder_buffer.h" |
#include "media/base/decrypt_config.h" |
-#include "media/base/decryptor_client.h" |
#include "media/base/video_decoder_config.h" |
#include "media/base/video_frame.h" |
@@ -125,8 +124,14 @@ static scoped_refptr<DecoderBuffer> DecryptData(const DecoderBuffer& input, |
return output; |
} |
-AesDecryptor::AesDecryptor(DecryptorClient* client) |
- : client_(client) { |
+AesDecryptor::AesDecryptor(const KeyAddedCB& key_added_cb, |
+ const KeyErrorCB& key_error_cb, |
+ const KeyMessageCB& key_message_cb, |
+ const NeedKeyCB& need_key_cb) |
+ : key_added_cb_(key_added_cb), |
+ key_error_cb_(key_error_cb), |
+ key_message_cb_(key_message_cb), |
+ need_key_cb_(need_key_cb) { |
} |
AesDecryptor::~AesDecryptor() { |
@@ -147,7 +152,7 @@ bool AesDecryptor::GenerateKeyRequest(const std::string& key_system, |
init_data_length); |
} |
- client_->KeyMessage(key_system, session_id_string, message, ""); |
+ key_message_cb_.Run(key_system, session_id_string, message, ""); |
return true; |
} |
@@ -164,7 +169,7 @@ void AesDecryptor::AddKey(const std::string& key_system, |
// https://www.w3.org/Bugs/Public/show_bug.cgi?id=16550 |
if (key_length != DecryptConfig::kDecryptionKeySize) { |
DVLOG(1) << "Invalid key length: " << key_length; |
- client_->KeyError(key_system, session_id, Decryptor::kUnknownError, 0); |
+ key_error_cb_.Run(key_system, session_id, Decryptor::kUnknownError, 0); |
return; |
} |
@@ -184,39 +189,39 @@ void AesDecryptor::AddKey(const std::string& key_system, |
scoped_ptr<DecryptionKey> decryption_key(new DecryptionKey(key_string)); |
if (!decryption_key.get()) { |
DVLOG(1) << "Could not create key."; |
- client_->KeyError(key_system, session_id, Decryptor::kUnknownError, 0); |
+ key_error_cb_.Run(key_system, session_id, Decryptor::kUnknownError, 0); |
return; |
} |
if (!decryption_key->Init()) { |
DVLOG(1) << "Could not initialize decryption key."; |
- client_->KeyError(key_system, session_id, Decryptor::kUnknownError, 0); |
+ key_error_cb_.Run(key_system, session_id, Decryptor::kUnknownError, 0); |
return; |
} |
SetKey(key_id_string, decryption_key.Pass()); |
- if (!audio_key_added_cb_.is_null()) |
- audio_key_added_cb_.Run(); |
+ if (!new_audio_key_cb_.is_null()) |
+ new_audio_key_cb_.Run(); |
- if (!video_key_added_cb_.is_null()) |
- video_key_added_cb_.Run(); |
+ if (!new_video_key_cb_.is_null()) |
+ new_video_key_cb_.Run(); |
- client_->KeyAdded(key_system, session_id); |
+ key_added_cb_.Run(key_system, session_id); |
} |
void AesDecryptor::CancelKeyRequest(const std::string& key_system, |
const std::string& session_id) { |
} |
-void AesDecryptor::RegisterKeyAddedCB(StreamType stream_type, |
- const KeyAddedCB& key_added_cb) { |
+void AesDecryptor::RegisterNewKeyCB(StreamType stream_type, |
+ const NewKeyCB& new_key_cb) { |
switch (stream_type) { |
case kAudio: |
- audio_key_added_cb_ = key_added_cb; |
+ new_audio_key_cb_ = new_key_cb; |
break; |
case kVideo: |
- video_key_added_cb_ = key_added_cb; |
+ new_video_key_cb_ = new_key_cb; |
break; |
default: |
NOTREACHED(); |