| OLD | NEW |
| 1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2010 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 // Delegate calls from WebCore::MediaPlayerPrivate to Chrome's video player. | 5 // Delegate calls from WebCore::MediaPlayerPrivate to Chrome's video player. |
| 6 // It contains PipelineImpl which is the actual media player pipeline, it glues | 6 // It contains PipelineImpl which is the actual media player pipeline, it glues |
| 7 // the media player pipeline, data source, audio renderer and renderer. | 7 // the media player pipeline, data source, audio renderer and renderer. |
| 8 // PipelineImpl would creates multiple threads and access some public methods | 8 // PipelineImpl would creates multiple threads and access some public methods |
| 9 // of this class, so we need to be extra careful about concurrent access of | 9 // of this class, so we need to be extra careful about concurrent access of |
| 10 // methods and members. | 10 // methods and members. |
| (...skipping 157 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 168 // |factory| can override the default filters by adding extra filters to | 168 // |factory| can override the default filters by adding extra filters to |
| 169 // |factory| before calling this method. | 169 // |factory| before calling this method. |
| 170 // | 170 // |
| 171 // |video_renderer_factory| is used to construct a factory that should create | 171 // |video_renderer_factory| is used to construct a factory that should create |
| 172 // a subclass of WebVideoRenderer. Is deleted by WebMediaPlayerImpl. | 172 // a subclass of WebVideoRenderer. Is deleted by WebMediaPlayerImpl. |
| 173 WebMediaPlayerImpl(WebKit::WebMediaPlayerClient* client, | 173 WebMediaPlayerImpl(WebKit::WebMediaPlayerClient* client, |
| 174 media::FilterFactoryCollection* factory, | 174 media::FilterFactoryCollection* factory, |
| 175 WebVideoRendererFactoryFactory* video_renderer_factory); | 175 WebVideoRendererFactoryFactory* video_renderer_factory); |
| 176 virtual ~WebMediaPlayerImpl(); | 176 virtual ~WebMediaPlayerImpl(); |
| 177 | 177 |
| 178 virtual WebKit::WebMediaPlayerClient* client() const; |
| 179 virtual void setClient(WebKit::WebMediaPlayerClient* new_client); |
| 180 |
| 178 virtual void load(const WebKit::WebURL& url); | 181 virtual void load(const WebKit::WebURL& url); |
| 179 virtual void cancelLoad(); | 182 virtual void cancelLoad(); |
| 180 | 183 |
| 181 // Playback controls. | 184 // Playback controls. |
| 182 virtual void play(); | 185 virtual void play(); |
| 183 virtual void pause(); | 186 virtual void pause(); |
| 184 virtual bool supportsFullscreen() const; | 187 virtual bool supportsFullscreen() const; |
| 185 virtual bool supportsSave() const; | 188 virtual bool supportsSave() const; |
| 186 virtual void seek(float seconds); | 189 virtual void seek(float seconds); |
| 187 virtual void setEndTime(float seconds); | 190 virtual void setEndTime(float seconds); |
| (...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 254 void SetNetworkState(WebKit::WebMediaPlayer::NetworkState state); | 257 void SetNetworkState(WebKit::WebMediaPlayer::NetworkState state); |
| 255 void SetReadyState(WebKit::WebMediaPlayer::ReadyState state); | 258 void SetReadyState(WebKit::WebMediaPlayer::ReadyState state); |
| 256 | 259 |
| 257 // Destroy resources held. | 260 // Destroy resources held. |
| 258 void Destroy(); | 261 void Destroy(); |
| 259 | 262 |
| 260 // Callback executed after |pipeline_| stops which signals Destroy() | 263 // Callback executed after |pipeline_| stops which signals Destroy() |
| 261 // to continue. | 264 // to continue. |
| 262 void PipelineStoppedCallback(); | 265 void PipelineStoppedCallback(); |
| 263 | 266 |
| 264 // Getter method to |client_|. | |
| 265 WebKit::WebMediaPlayerClient* GetClient(); | |
| 266 | |
| 267 // TODO(hclam): get rid of these members and read from the pipeline directly. | 267 // TODO(hclam): get rid of these members and read from the pipeline directly. |
| 268 WebKit::WebMediaPlayer::NetworkState network_state_; | 268 WebKit::WebMediaPlayer::NetworkState network_state_; |
| 269 WebKit::WebMediaPlayer::ReadyState ready_state_; | 269 WebKit::WebMediaPlayer::ReadyState ready_state_; |
| 270 | 270 |
| 271 // Keep a list of buffered time ranges. | 271 // Keep a list of buffered time ranges. |
| 272 WebKit::WebTimeRanges buffered_; | 272 WebKit::WebTimeRanges buffered_; |
| 273 | 273 |
| 274 // Message loops for posting tasks between Chrome's main thread. Also used | 274 // Message loops for posting tasks between Chrome's main thread. Also used |
| 275 // for DCHECKs so methods calls won't execute in the wrong thread. | 275 // for DCHECKs so methods calls won't execute in the wrong thread. |
| 276 MessageLoop* main_loop_; | 276 MessageLoop* main_loop_; |
| (...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 331 WebMediaPlayerImpl::Proxy* proxy) = 0; | 331 WebMediaPlayerImpl::Proxy* proxy) = 0; |
| 332 | 332 |
| 333 private: | 333 private: |
| 334 DISALLOW_COPY_AND_ASSIGN(WebVideoRendererFactoryFactory); | 334 DISALLOW_COPY_AND_ASSIGN(WebVideoRendererFactoryFactory); |
| 335 }; | 335 }; |
| 336 | 336 |
| 337 | 337 |
| 338 } // namespace webkit_glue | 338 } // namespace webkit_glue |
| 339 | 339 |
| 340 #endif // WEBKIT_GLUE_WEBMEDIAPLAYER_IMPL_H_ | 340 #endif // WEBKIT_GLUE_WEBMEDIAPLAYER_IMPL_H_ |
| OLD | NEW |