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

Unified Diff: webkit/media/crypto/proxy_decryptor.h

Issue 10704241: Add PpapiDecryptor which wraps a CDM plugin. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Resolve comments and rebase. Created 8 years, 5 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/media/crypto/proxy_decryptor.h
diff --git a/webkit/media/crypto/proxy_decryptor.h b/webkit/media/crypto/proxy_decryptor.h
index 335bdafb22935190f1e9158fc3fa4012b377aa7c..dd8ec019329f36a47732d479367f053ac83024d4 100644
--- a/webkit/media/crypto/proxy_decryptor.h
+++ b/webkit/media/crypto/proxy_decryptor.h
@@ -15,6 +15,11 @@ namespace media {
class DecryptorClient;
}
+namespace WebKit {
+class WebFrame;
+class WebMediaPlayerClient;
+}
+
namespace webkit_media {
// A decryptor proxy that creates a real decryptor object on demand and
@@ -23,7 +28,9 @@ namespace webkit_media {
// objects. Fix this when needed.
class ProxyDecryptor : public media::Decryptor {
public:
- explicit ProxyDecryptor(media::DecryptorClient* client);
+ ProxyDecryptor(media::DecryptorClient* decryptor_client,
+ WebKit::WebMediaPlayerClient* web_media_player_client,
+ WebKit::WebFrame* web_frame);
virtual ~ProxyDecryptor();
// media::Decryptor implementation.
@@ -42,7 +49,14 @@ class ProxyDecryptor : public media::Decryptor {
const DecryptCB& decrypt_cb) OVERRIDE;
private:
- media::DecryptorClient* const client_;
+ scoped_ptr<media::Decryptor> CreateDecryptor(const std::string& key_system);
+
+ media::DecryptorClient* client_;
+
+ // Needed to initialize the PpapiDecryptor.
+ WebKit::WebMediaPlayerClient* web_media_player_client_;
+ WebKit::WebFrame* web_frame_;
+
// Protects the |decryptor_|. The Decryptor interface specifies that the
// Decrypt() function will be called on the decoder thread and all other
// methods on the renderer thread. The |decryptor_| itself is thread safe

Powered by Google App Engine
This is Rietveld 408576698