summaryrefslogtreecommitdiffstats
path: root/media/base/browser_cdm.h
diff options
context:
space:
mode:
Diffstat (limited to 'media/base/browser_cdm.h')
-rw-r--r--media/base/browser_cdm.h22
1 files changed, 20 insertions, 2 deletions
diff --git a/media/base/browser_cdm.h b/media/base/browser_cdm.h
index 6e4e5cd..b6b6044 100644
--- a/media/base/browser_cdm.h
+++ b/media/base/browser_cdm.h
@@ -11,11 +11,29 @@
namespace media {
// Interface for browser side CDMs.
-class BrowserCdm : public MediaKeys, public PlayerTracker {
+class BrowserCdm : public PlayerTracker {
public:
+ // TODO(jrummell): Update this to actually derive from MediaKeys
+ // (Use web_session_id rather than session_id).
+ typedef base::Callback<
+ void(uint32 session_id, const std::string& web_session_id)>
+ SessionCreatedCB;
+
+ typedef base::Callback<void(uint32 session_id,
+ const std::vector<uint8>& message,
+ const GURL& destination_url)> SessionMessageCB;
+
+ typedef base::Callback<void(uint32 session_id)> SessionReadyCB;
+
+ typedef base::Callback<void(uint32 session_id)> SessionClosedCB;
+
+ typedef base::Callback<void(uint32 session_id,
+ media::MediaKeys::KeyError error_code,
+ uint32 system_code)> SessionErrorCB;
+
virtual ~BrowserCdm();
- // MediaKeys implementation.
+ // MediaKeys-like implementation.
virtual bool CreateSession(uint32 session_id,
const std::string& content_type,
const uint8* init_data,