Index: webkit/media/webmediaplayer_proxy.cc |
diff --git a/webkit/media/webmediaplayer_proxy.cc b/webkit/media/webmediaplayer_proxy.cc |
index fdbd54485d6e71ebfdf11f74ab99e29d939e8ca1..461f67ec309f681602871a6531eb565a767a72b7 100644 |
--- a/webkit/media/webmediaplayer_proxy.cc |
+++ b/webkit/media/webmediaplayer_proxy.cc |
@@ -177,10 +177,10 @@ void WebMediaPlayerProxy::DemuxerClosed() { |
&WebMediaPlayerProxy::DemuxerClosedTask, this)); |
} |
-void WebMediaPlayerProxy::KeyNeeded(scoped_array<uint8> init_data, |
- int init_data_size) { |
+void WebMediaPlayerProxy::DemuxerNeedKey(scoped_array<uint8> init_data, |
+ int init_data_size) { |
render_loop_->PostTask(FROM_HERE, base::Bind( |
- &WebMediaPlayerProxy::KeyNeededTask, this, |
+ &WebMediaPlayerProxy::NeedKeyTask, this, "", "", |
base::Passed(&init_data), init_data_size)); |
} |
@@ -237,11 +237,76 @@ void WebMediaPlayerProxy::DemuxerClosedTask() { |
chunk_demuxer_ = NULL; |
} |
-void WebMediaPlayerProxy::KeyNeededTask(scoped_array<uint8> init_data, |
- int init_data_size) { |
+void WebMediaPlayerProxy::KeyAdded(const std::string& key_system, |
+ const std::string& session_id) { |
+ render_loop_->PostTask(FROM_HERE, base::Bind( |
+ &WebMediaPlayerProxy::KeyAddedTask, this, key_system, session_id)); |
+} |
+ |
+void WebMediaPlayerProxy::KeyError(const std::string& key_system, |
+ const std::string& session_id, |
+ media::AesDecryptor::KeyError error_code, |
+ int system_code) { |
+ render_loop_->PostTask(FROM_HERE, base::Bind( |
+ &WebMediaPlayerProxy::KeyErrorTask, this, key_system, session_id, |
+ error_code, system_code)); |
+} |
+ |
+void WebMediaPlayerProxy::KeyMessage(const std::string& key_system, |
+ const std::string& session_id, |
+ scoped_array<uint8> message, |
+ int message_length, |
+ const std::string& default_url) { |
+ render_loop_->PostTask(FROM_HERE, base::Bind( |
+ &WebMediaPlayerProxy::KeyMessageTask, this, key_system, session_id, |
+ base::Passed(&message), message_length, default_url)); |
+} |
+ |
+void WebMediaPlayerProxy::NeedKey(const std::string& key_system, |
+ const std::string& session_id, |
+ scoped_array<uint8> init_data, |
+ int init_data_size) { |
+ render_loop_->PostTask(FROM_HERE, base::Bind( |
+ &WebMediaPlayerProxy::NeedKeyTask, this, key_system, session_id, |
+ base::Passed(&init_data), init_data_size)); |
+} |
+ |
+void WebMediaPlayerProxy::KeyAddedTask(const std::string& key_system, |
+ const std::string& session_id) { |
+ DCHECK(render_loop_->BelongsToCurrentThread()); |
+ if (webmediaplayer_) |
+ webmediaplayer_->OnKeyAdded(key_system, session_id); |
+} |
+ |
+void WebMediaPlayerProxy::KeyErrorTask(const std::string& key_system, |
+ const std::string& session_id, |
+ media::AesDecryptor::KeyError error_code, |
+ int system_code) { |
+ DCHECK(render_loop_->BelongsToCurrentThread()); |
+ if (webmediaplayer_) |
+ webmediaplayer_->OnKeyError(key_system, session_id, |
+ error_code, system_code); |
+} |
+ |
+void WebMediaPlayerProxy::KeyMessageTask(const std::string& key_system, |
+ const std::string& session_id, |
+ scoped_array<uint8> message, |
+ int message_length, |
+ const std::string& default_url) { |
+ DCHECK(render_loop_->BelongsToCurrentThread()); |
+ if (webmediaplayer_) |
+ webmediaplayer_->OnKeyMessage(key_system, session_id, |
+ message.Pass(), message_length, default_url); |
+} |
+ |
+void WebMediaPlayerProxy::NeedKeyTask(const std::string& key_system, |
+ const std::string& session_id, |
+ scoped_array<uint8> init_data, |
+ int init_data_size) { |
DCHECK(render_loop_->BelongsToCurrentThread()); |
if (webmediaplayer_) |
- webmediaplayer_->OnKeyNeeded(init_data.Pass(), init_data_size); |
+ webmediaplayer_->OnNeedKey(key_system, session_id, |
+ init_data.Pass(), init_data_size); |
} |
} // namespace webkit_media |