| Index: media/base/android/media_drm_bridge.h
|
| diff --git a/media/base/android/media_drm_bridge.h b/media/base/android/media_drm_bridge.h
|
| index f34bbc43b22a2f13a2ae63f713f87640b831d8a9..60b4dd898479e9a2adff44c3a54f2f0c18107810 100644
|
| --- a/media/base/android/media_drm_bridge.h
|
| +++ b/media/base/android/media_drm_bridge.h
|
| @@ -59,10 +59,19 @@ class MEDIA_EXPORT MediaDrmBridge : public MediaKeys {
|
|
|
| // Returns a MediaDrmBridge instance if |key_system| is supported, or a NULL
|
| // pointer otherwise.
|
| - static scoped_ptr<MediaDrmBridge> Create(int cdm_id,
|
| - const std::string& key_system,
|
| - const GURL& security_origin,
|
| - MediaPlayerManager* manager);
|
| + static scoped_ptr<MediaDrmBridge> Create(
|
| + const std::string& key_system,
|
| + const SessionCreatedCB& session_created_cb,
|
| + const SessionMessageCB& session_message_cb,
|
| + const SessionReadyCB& session_ready_cb,
|
| + const SessionClosedCB& session_closed_cb,
|
| + const SessionErrorCB& session_error_cb);
|
| +
|
| + // Returns a MediaDrmBridge instance if |key_system| is supported, or a NULL
|
| + // otherwise. No session callbacks are provided. This is used when we need to
|
| + // use MediaDrmBridge without creating any sessions.
|
| + static scoped_ptr<MediaDrmBridge> CreateSessionless(
|
| + const std::string& key_system);
|
|
|
| // Returns true if |security_level| is successfully set, or false otherwise.
|
| // Call this function right after Create() and before any other calls.
|
| @@ -120,33 +129,29 @@ class MEDIA_EXPORT MediaDrmBridge : public MediaKeys {
|
| // video playback.
|
| bool IsProtectedSurfaceRequired();
|
|
|
| - int cdm_id() const { return cdm_id_; }
|
| -
|
| - const GURL& security_origin() const { return security_origin_; }
|
| -
|
| private:
|
| - MediaDrmBridge(int cdm_id,
|
| - const std::vector<uint8>& scheme_uuid,
|
| - const GURL& security_origin,
|
| - MediaPlayerManager* manager);
|
| + MediaDrmBridge(const std::vector<uint8>& scheme_uuid,
|
| + const SessionCreatedCB& session_created_cb,
|
| + const SessionMessageCB& session_message_cb,
|
| + const SessionReadyCB& session_ready_cb,
|
| + const SessionClosedCB& session_closed_cb,
|
| + const SessionErrorCB& session_error_cb);
|
|
|
| // Get the security level of the media.
|
| SecurityLevel GetSecurityLevel();
|
|
|
| - // ID of the CDM object.
|
| - int cdm_id_;
|
| -
|
| // UUID of the key system.
|
| std::vector<uint8> scheme_uuid_;
|
|
|
| - // media stream's security origin.
|
| - const GURL security_origin_;
|
| -
|
| // Java MediaDrm instance.
|
| base::android::ScopedJavaGlobalRef<jobject> j_media_drm_;
|
|
|
| - // Non-owned pointer.
|
| - MediaPlayerManager* manager_;
|
| + // Callbacks for firing session events.
|
| + SessionCreatedCB session_created_cb_;
|
| + SessionMessageCB session_message_cb_;
|
| + SessionReadyCB session_ready_cb_;
|
| + SessionClosedCB session_closed_cb_;
|
| + SessionErrorCB session_error_cb_;
|
|
|
| base::Closure media_crypto_ready_cb_;
|
|
|
|
|