| OLD | NEW |
| 1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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 CONTENT_RENDERER_MEDIA_ANDROID_MEDIA_SOURCE_DELEGATE_H_ | 5 #ifndef CONTENT_RENDERER_MEDIA_ANDROID_MEDIA_SOURCE_DELEGATE_H_ |
| 6 #define CONTENT_RENDERER_MEDIA_ANDROID_MEDIA_SOURCE_DELEGATE_H_ | 6 #define CONTENT_RENDERER_MEDIA_ANDROID_MEDIA_SOURCE_DELEGATE_H_ |
| 7 | 7 |
| 8 #include <string> | 8 #include <string> |
| 9 #include <vector> | 9 #include <vector> |
| 10 | 10 |
| (...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 45 MediaSourceOpenedCB; | 45 MediaSourceOpenedCB; |
| 46 typedef base::Callback<void(blink::WebMediaPlayer::NetworkState)> | 46 typedef base::Callback<void(blink::WebMediaPlayer::NetworkState)> |
| 47 UpdateNetworkStateCB; | 47 UpdateNetworkStateCB; |
| 48 typedef base::Callback<void(const base::TimeDelta&)> DurationChangeCB; | 48 typedef base::Callback<void(const base::TimeDelta&)> DurationChangeCB; |
| 49 | 49 |
| 50 MediaSourceDelegate( | 50 MediaSourceDelegate( |
| 51 RendererDemuxerAndroid* demuxer_client, | 51 RendererDemuxerAndroid* demuxer_client, |
| 52 int demuxer_client_id, | 52 int demuxer_client_id, |
| 53 const scoped_refptr<base::SingleThreadTaskRunner>& task_runner, | 53 const scoped_refptr<base::SingleThreadTaskRunner>& task_runner, |
| 54 const scoped_refptr<media::MediaLog> media_log); | 54 const scoped_refptr<media::MediaLog> media_log); |
| 55 virtual ~MediaSourceDelegate(); | 55 ~MediaSourceDelegate() override; |
| 56 | 56 |
| 57 // Initialize the MediaSourceDelegate. |media_source| will be owned by | 57 // Initialize the MediaSourceDelegate. |media_source| will be owned by |
| 58 // this object after this call. | 58 // this object after this call. |
| 59 void InitializeMediaSource( | 59 void InitializeMediaSource( |
| 60 const MediaSourceOpenedCB& media_source_opened_cb, | 60 const MediaSourceOpenedCB& media_source_opened_cb, |
| 61 const media::Demuxer::EncryptedMediaInitDataCB& | 61 const media::Demuxer::EncryptedMediaInitDataCB& |
| 62 encrypted_media_init_data_cb, | 62 encrypted_media_init_data_cb, |
| 63 const media::SetDecryptorReadyCB& set_decryptor_ready_cb, | 63 const media::SetDecryptorReadyCB& set_decryptor_ready_cb, |
| 64 const UpdateNetworkStateCB& update_network_state_cb, | 64 const UpdateNetworkStateCB& update_network_state_cb, |
| 65 const DurationChangeCB& duration_change_cb); | 65 const DurationChangeCB& duration_change_cb); |
| (...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 98 void Stop(const base::Closure& stop_cb); | 98 void Stop(const base::Closure& stop_cb); |
| 99 | 99 |
| 100 // Called on the main thread to check whether the video stream is encrypted. | 100 // Called on the main thread to check whether the video stream is encrypted. |
| 101 bool IsVideoEncrypted(); | 101 bool IsVideoEncrypted(); |
| 102 | 102 |
| 103 // Gets the ChunkDemuxer timeline offset. | 103 // Gets the ChunkDemuxer timeline offset. |
| 104 base::Time GetTimelineOffset() const; | 104 base::Time GetTimelineOffset() const; |
| 105 | 105 |
| 106 private: | 106 private: |
| 107 // Methods inherited from DemuxerHost. | 107 // Methods inherited from DemuxerHost. |
| 108 virtual void AddBufferedTimeRange(base::TimeDelta start, | 108 void AddBufferedTimeRange(base::TimeDelta start, |
| 109 base::TimeDelta end) override; | 109 base::TimeDelta end) override; |
| 110 virtual void SetDuration(base::TimeDelta duration) override; | 110 void SetDuration(base::TimeDelta duration) override; |
| 111 virtual void OnDemuxerError(media::PipelineStatus status) override; | 111 void OnDemuxerError(media::PipelineStatus status) override; |
| 112 virtual void AddTextStream(media::DemuxerStream* text_stream, | 112 void AddTextStream(media::DemuxerStream* text_stream, |
| 113 const media::TextTrackConfig& config) override; | 113 const media::TextTrackConfig& config) override; |
| 114 virtual void RemoveTextStream(media::DemuxerStream* text_stream) override; | 114 void RemoveTextStream(media::DemuxerStream* text_stream) override; |
| 115 | 115 |
| 116 // Notifies |demuxer_client_| and fires |duration_changed_cb_|. | 116 // Notifies |demuxer_client_| and fires |duration_changed_cb_|. |
| 117 void OnDurationChanged(const base::TimeDelta& duration); | 117 void OnDurationChanged(const base::TimeDelta& duration); |
| 118 | 118 |
| 119 // Callback for ChunkDemuxer initialization. | 119 // Callback for ChunkDemuxer initialization. |
| 120 void OnDemuxerInitDone(media::PipelineStatus status); | 120 void OnDemuxerInitDone(media::PipelineStatus status); |
| 121 | 121 |
| 122 // Initializes DecryptingDemuxerStreams if audio/video stream is encrypted. | 122 // Initializes DecryptingDemuxerStreams if audio/video stream is encrypted. |
| 123 void InitAudioDecryptingDemuxerStream(); | 123 void InitAudioDecryptingDemuxerStream(); |
| 124 void InitVideoDecryptingDemuxerStream(); | 124 void InitVideoDecryptingDemuxerStream(); |
| (...skipping 105 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 230 base::WeakPtr<MediaSourceDelegate> main_weak_this_; | 230 base::WeakPtr<MediaSourceDelegate> main_weak_this_; |
| 231 base::WeakPtrFactory<MediaSourceDelegate> main_weak_factory_; | 231 base::WeakPtrFactory<MediaSourceDelegate> main_weak_factory_; |
| 232 base::WeakPtrFactory<MediaSourceDelegate> media_weak_factory_; | 232 base::WeakPtrFactory<MediaSourceDelegate> media_weak_factory_; |
| 233 | 233 |
| 234 DISALLOW_COPY_AND_ASSIGN(MediaSourceDelegate); | 234 DISALLOW_COPY_AND_ASSIGN(MediaSourceDelegate); |
| 235 }; | 235 }; |
| 236 | 236 |
| 237 } // namespace content | 237 } // namespace content |
| 238 | 238 |
| 239 #endif // CONTENT_RENDERER_MEDIA_ANDROID_MEDIA_SOURCE_DELEGATE_H_ | 239 #endif // CONTENT_RENDERER_MEDIA_ANDROID_MEDIA_SOURCE_DELEGATE_H_ |
| OLD | NEW |