OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 CHROMECAST_RENDERER_MEDIA_CMA_RENDERER_H_ | 5 #ifndef CHROMECAST_RENDERER_MEDIA_CMA_RENDERER_H_ |
6 #define CHROMECAST_RENDERER_MEDIA_CMA_RENDERER_H_ | 6 #define CHROMECAST_RENDERER_MEDIA_CMA_RENDERER_H_ |
7 | 7 |
8 #include <memory> | 8 #include <memory> |
9 | 9 |
10 #include "base/macros.h" | 10 #include "base/macros.h" |
(...skipping 27 matching lines...) Expand all Loading... |
38 | 38 |
39 class CmaRenderer : public ::media::Renderer { | 39 class CmaRenderer : public ::media::Renderer { |
40 public: | 40 public: |
41 CmaRenderer(std::unique_ptr<MediaPipelineProxy> media_pipeline, | 41 CmaRenderer(std::unique_ptr<MediaPipelineProxy> media_pipeline, |
42 ::media::VideoRendererSink* video_renderer_sink, | 42 ::media::VideoRendererSink* video_renderer_sink, |
43 ::media::GpuVideoAcceleratorFactories* gpu_factories); | 43 ::media::GpuVideoAcceleratorFactories* gpu_factories); |
44 ~CmaRenderer() override; | 44 ~CmaRenderer() override; |
45 | 45 |
46 // ::media::Renderer implementation: | 46 // ::media::Renderer implementation: |
47 void Initialize(::media::DemuxerStreamProvider* demuxer_stream_provider, | 47 void Initialize(::media::DemuxerStreamProvider* demuxer_stream_provider, |
48 const ::media::PipelineStatusCB& init_cb, | 48 ::media::RendererClient* client, |
49 const ::media::StatisticsCB& statistics_cb, | 49 const ::media::PipelineStatusCB& init_cb) override; |
50 const ::media::BufferingStateCB& buffering_state_cb, | |
51 const base::Closure& ended_cb, | |
52 const ::media::PipelineStatusCB& error_cb, | |
53 const base::Closure& waiting_for_decryption_key_cb) override; | |
54 void Flush(const base::Closure& flush_cb) override; | 50 void Flush(const base::Closure& flush_cb) override; |
55 void StartPlayingFrom(base::TimeDelta time) override; | 51 void StartPlayingFrom(base::TimeDelta time) override; |
56 void SetPlaybackRate(double playback_rate) override; | 52 void SetPlaybackRate(double playback_rate) override; |
57 void SetVolume(float volume) override; | 53 void SetVolume(float volume) override; |
58 base::TimeDelta GetMediaTime() override; | 54 base::TimeDelta GetMediaTime() override; |
59 bool HasAudio() override; | 55 bool HasAudio() override; |
60 bool HasVideo() override; | 56 bool HasVideo() override; |
61 void SetCdm(::media::CdmContext* cdm_context, | 57 void SetCdm(::media::CdmContext* cdm_context, |
62 const ::media::CdmAttachedCB& cdm_attached_cb) override; | 58 const ::media::CdmAttachedCB& cdm_attached_cb) override; |
63 | 59 |
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
103 | 99 |
104 scoped_refptr<BalancedMediaTaskRunnerFactory> media_task_runner_factory_; | 100 scoped_refptr<BalancedMediaTaskRunnerFactory> media_task_runner_factory_; |
105 std::unique_ptr<MediaPipelineProxy> media_pipeline_; | 101 std::unique_ptr<MediaPipelineProxy> media_pipeline_; |
106 AudioPipelineProxy* audio_pipeline_; | 102 AudioPipelineProxy* audio_pipeline_; |
107 VideoPipelineProxy* video_pipeline_; | 103 VideoPipelineProxy* video_pipeline_; |
108 ::media::VideoRendererSink* video_renderer_sink_; | 104 ::media::VideoRendererSink* video_renderer_sink_; |
109 | 105 |
110 ::media::DemuxerStreamProvider* demuxer_stream_provider_; | 106 ::media::DemuxerStreamProvider* demuxer_stream_provider_; |
111 | 107 |
112 // Set of callbacks. | 108 // Set of callbacks. |
| 109 ::media::RendererClient* client_; |
113 ::media::PipelineStatusCB init_cb_; | 110 ::media::PipelineStatusCB init_cb_; |
114 ::media::StatisticsCB statistics_cb_; | |
115 base::Closure ended_cb_; | |
116 ::media::PipelineStatusCB error_cb_; | |
117 ::media::BufferingStateCB buffering_state_cb_; | |
118 base::Closure flush_cb_; | 111 base::Closure flush_cb_; |
119 base::Closure waiting_for_decryption_key_cb_; | |
120 | 112 |
121 // Renderer state. | 113 // Renderer state. |
122 // Used mostly for checking that transitions are correct. | 114 // Used mostly for checking that transitions are correct. |
123 State state_; | 115 State state_; |
124 bool is_pending_transition_; | 116 bool is_pending_transition_; |
125 | 117 |
126 bool has_audio_; | 118 bool has_audio_; |
127 bool has_video_; | 119 bool has_video_; |
128 | 120 |
129 bool received_audio_eos_; | 121 bool received_audio_eos_; |
(...skipping 20 matching lines...) Expand all Loading... |
150 base::WeakPtr<CmaRenderer> weak_this_; | 142 base::WeakPtr<CmaRenderer> weak_this_; |
151 base::WeakPtrFactory<CmaRenderer> weak_factory_; | 143 base::WeakPtrFactory<CmaRenderer> weak_factory_; |
152 | 144 |
153 DISALLOW_COPY_AND_ASSIGN(CmaRenderer); | 145 DISALLOW_COPY_AND_ASSIGN(CmaRenderer); |
154 }; | 146 }; |
155 | 147 |
156 } // namespace media | 148 } // namespace media |
157 } // namespace chromecast | 149 } // namespace chromecast |
158 | 150 |
159 #endif // CHROMECAST_RENDERER_MEDIA_CMA_RENDERER_H_ | 151 #endif // CHROMECAST_RENDERER_MEDIA_CMA_RENDERER_H_ |
OLD | NEW |