| 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 8c31f89694ade4fd88341ae6536c923a02c01436..c8ddcca149052d370872d026dbbfa405e2871bba 100644
|
| --- a/media/base/android/media_drm_bridge.h
|
| +++ b/media/base/android/media_drm_bridge.h
|
| @@ -28,6 +28,8 @@ class GURL;
|
|
|
| namespace media {
|
|
|
| +class MediaPermission;
|
| +
|
| // Implements a CDM using Android MediaDrm API.
|
| //
|
| // Thread Safety:
|
| @@ -81,7 +83,9 @@ class MEDIA_EXPORT MediaDrmBridge : public MediaKeys, public PlayerTracker {
|
| // if |security_level| is SECURITY_LEVEL_DEFAULT.
|
| static scoped_refptr<MediaDrmBridge> Create(
|
| const std::string& key_system,
|
| + const GURL& security_origin,
|
| SecurityLevel security_level,
|
| + MediaPermission* media_permission,
|
| const CreateFetcherCB& create_fetcher_cb,
|
| const SessionMessageCB& session_message_cb,
|
| const SessionClosedCB& session_closed_cb,
|
| @@ -247,7 +251,9 @@ class MEDIA_EXPORT MediaDrmBridge : public MediaKeys, public PlayerTracker {
|
|
|
| static scoped_refptr<MediaDrmBridge> CreateInternal(
|
| const std::string& key_system,
|
| + const GURL& security_origin,
|
| SecurityLevel security_level,
|
| + MediaPermission* media_permission,
|
| const CreateFetcherCB& create_fetcher_cb,
|
| const SessionMessageCB& session_message_cb,
|
| const SessionClosedCB& session_closed_cb,
|
| @@ -260,7 +266,9 @@ class MEDIA_EXPORT MediaDrmBridge : public MediaKeys, public PlayerTracker {
|
| // SECURITY_LEVEL_DEFAULT. Sessions should not be created if session callbacks
|
| // are null.
|
| MediaDrmBridge(const std::vector<uint8_t>& scheme_uuid,
|
| + const GURL& security_origin,
|
| SecurityLevel security_level,
|
| + MediaPermission* media_permission,
|
| const CreateFetcherCB& create_fetcher_cb,
|
| const SessionMessageCB& session_message_cb,
|
| const SessionClosedCB& session_closed_cb,
|
| @@ -281,6 +289,12 @@ class MEDIA_EXPORT MediaDrmBridge : public MediaKeys, public PlayerTracker {
|
| // A helper method that is called when MediaCrypto is ready.
|
| void NotifyMediaCryptoReady(JavaObjectPtr j_media_crypto);
|
|
|
| + void CreateSessionAndGenerateRequestIfPermitted(
|
| + EmeInitDataType init_data_type,
|
| + const std::vector<uint8_t>& init_data,
|
| + scoped_ptr<NewSessionCdmPromise> promise,
|
| + bool permitted);
|
| +
|
| // Sends HTTP provisioning request to a provisioning server.
|
| void SendProvisioningRequest(const std::string& default_url,
|
| const std::string& request_data);
|
| @@ -294,6 +308,8 @@ class MEDIA_EXPORT MediaDrmBridge : public MediaKeys, public PlayerTracker {
|
| // UUID of the key system.
|
| std::vector<uint8_t> scheme_uuid_;
|
|
|
| + GURL security_origin_;
|
| +
|
| // Java MediaDrm instance.
|
| base::android::ScopedJavaGlobalRef<jobject> j_media_drm_;
|
|
|
| @@ -306,6 +322,8 @@ class MEDIA_EXPORT MediaDrmBridge : public MediaKeys, public PlayerTracker {
|
| // MediaCrypto creation failed and it has been notified.
|
| JavaObjectPtr j_media_crypto_;
|
|
|
| + MediaPermission* media_permission_;
|
| +
|
| // The callback to create a ProvisionFetcher.
|
| CreateFetcherCB create_fetcher_cb_;
|
|
|
|
|