OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef MEDIA_BASE_ANDROID_MEDIA_PLAYER_BRIDGE_H_ | 5 #ifndef MEDIA_BASE_ANDROID_MEDIA_PLAYER_BRIDGE_H_ |
6 #define MEDIA_BASE_ANDROID_MEDIA_PLAYER_BRIDGE_H_ | 6 #define MEDIA_BASE_ANDROID_MEDIA_PLAYER_BRIDGE_H_ |
7 | 7 |
8 #include <jni.h> | 8 #include <jni.h> |
9 #include <map> | 9 #include <map> |
10 #include <string> | 10 #include <string> |
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
43 // decoding. MediaPlayerBridge also forwards Android MediaPlayer callbacks to | 43 // decoding. MediaPlayerBridge also forwards Android MediaPlayer callbacks to |
44 // the |manager| when needed. | 44 // the |manager| when needed. |
45 MediaPlayerBridge(int player_id, | 45 MediaPlayerBridge(int player_id, |
46 const GURL& url, | 46 const GURL& url, |
47 const GURL& first_party_for_cookies, | 47 const GURL& first_party_for_cookies, |
48 const std::string& user_agent, | 48 const std::string& user_agent, |
49 bool hide_url_log, | 49 bool hide_url_log, |
50 MediaPlayerManager* manager, | 50 MediaPlayerManager* manager, |
51 const RequestMediaResourcesCB& request_media_resources_cb, | 51 const RequestMediaResourcesCB& request_media_resources_cb, |
52 const ReleaseMediaResourcesCB& release_media_resources_cb, | 52 const ReleaseMediaResourcesCB& release_media_resources_cb, |
53 const GURL& frame_url); | 53 const GURL& frame_url, |
| 54 bool has_single_security_origin, |
| 55 bool allow_credentials); |
54 virtual ~MediaPlayerBridge(); | 56 virtual ~MediaPlayerBridge(); |
55 | 57 |
56 // Initialize this object and extract the metadata from the media. | 58 // Initialize this object and extract the metadata from the media. |
57 virtual void Initialize(); | 59 virtual void Initialize(); |
58 | 60 |
59 // MediaPlayerAndroid implementation. | 61 // MediaPlayerAndroid implementation. |
60 virtual void SetVideoSurface(gfx::ScopedJavaSurface surface) OVERRIDE; | 62 virtual void SetVideoSurface(gfx::ScopedJavaSurface surface) OVERRIDE; |
61 virtual void Start() OVERRIDE; | 63 virtual void Start() OVERRIDE; |
62 virtual void Pause(bool is_media_related_action ALLOW_UNUSED) OVERRIDE; | 64 virtual void Pause(bool is_media_related_action ALLOW_UNUSED) OVERRIDE; |
63 virtual void SeekTo(base::TimeDelta timestamp) OVERRIDE; | 65 virtual void SeekTo(base::TimeDelta timestamp) OVERRIDE; |
(...skipping 14 matching lines...) Expand all Loading... |
78 | 80 |
79 // MediaPlayerListener callbacks. | 81 // MediaPlayerListener callbacks. |
80 void OnVideoSizeChanged(int width, int height); | 82 void OnVideoSizeChanged(int width, int height); |
81 void OnMediaError(int error_type); | 83 void OnMediaError(int error_type); |
82 void OnBufferingUpdate(int percent); | 84 void OnBufferingUpdate(int percent); |
83 void OnPlaybackComplete(); | 85 void OnPlaybackComplete(); |
84 void OnMediaInterrupted(); | 86 void OnMediaInterrupted(); |
85 void OnSeekComplete(); | 87 void OnSeekComplete(); |
86 void OnDidSetDataUriDataSource(JNIEnv* env, jobject obj, jboolean success); | 88 void OnDidSetDataUriDataSource(JNIEnv* env, jobject obj, jboolean success); |
87 | 89 |
| 90 virtual bool has_single_security_origin() const OVERRIDE { |
| 91 return has_single_security_origin_; |
| 92 } |
| 93 virtual bool allow_credentials() const OVERRIDE { return allow_credentials_; } |
| 94 |
88 protected: | 95 protected: |
89 void SetJavaMediaPlayerBridge(jobject j_media_player_bridge); | 96 void SetJavaMediaPlayerBridge(jobject j_media_player_bridge); |
90 base::android::ScopedJavaLocalRef<jobject> GetJavaMediaPlayerBridge(); | 97 base::android::ScopedJavaLocalRef<jobject> GetJavaMediaPlayerBridge(); |
91 void SetMediaPlayerListener(); | 98 void SetMediaPlayerListener(); |
92 void SetDuration(base::TimeDelta time); | 99 void SetDuration(base::TimeDelta time); |
93 | 100 |
94 virtual void PendingSeekInternal(const base::TimeDelta& time); | 101 virtual void PendingSeekInternal(const base::TimeDelta& time); |
95 | 102 |
96 // Prepare the player for playback, asynchronously. When succeeds, | 103 // Prepare the player for playback, asynchronously. When succeeds, |
97 // OnMediaPrepared() will be called. Otherwise, OnMediaError() will | 104 // OnMediaPrepared() will be called. Otherwise, OnMediaError() will |
(...skipping 75 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
173 | 180 |
174 // Listener object that listens to all the media player events. | 181 // Listener object that listens to all the media player events. |
175 scoped_ptr<MediaPlayerListener> listener_; | 182 scoped_ptr<MediaPlayerListener> listener_; |
176 | 183 |
177 // Whether player is currently using a surface. | 184 // Whether player is currently using a surface. |
178 bool is_surface_in_use_; | 185 bool is_surface_in_use_; |
179 | 186 |
180 // Volume of playback. | 187 // Volume of playback. |
181 double volume_; | 188 double volume_; |
182 | 189 |
| 190 // Whether the player should have a single security origin. |
| 191 bool has_single_security_origin_; |
| 192 |
| 193 // Whether user credentials are allowed to be passed. |
| 194 bool allow_credentials_; |
| 195 |
183 // Weak pointer passed to |listener_| for callbacks. | 196 // Weak pointer passed to |listener_| for callbacks. |
184 // NOTE: Weak pointers must be invalidated before all other member variables. | 197 // NOTE: Weak pointers must be invalidated before all other member variables. |
185 base::WeakPtrFactory<MediaPlayerBridge> weak_factory_; | 198 base::WeakPtrFactory<MediaPlayerBridge> weak_factory_; |
186 | 199 |
187 DISALLOW_COPY_AND_ASSIGN(MediaPlayerBridge); | 200 DISALLOW_COPY_AND_ASSIGN(MediaPlayerBridge); |
188 }; | 201 }; |
189 | 202 |
190 } // namespace media | 203 } // namespace media |
191 | 204 |
192 #endif // MEDIA_BASE_ANDROID_MEDIA_PLAYER_BRIDGE_H_ | 205 #endif // MEDIA_BASE_ANDROID_MEDIA_PLAYER_BRIDGE_H_ |
OLD | NEW |