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 #include "chromecast/browser/cast_content_browser_client.h" | 5 #include "chromecast/browser/cast_content_browser_client.h" |
6 | 6 |
7 #include <stddef.h> | 7 #include <stddef.h> |
8 | 8 |
9 #include <string> | 9 #include <string> |
10 #include <utility> | 10 #include <utility> |
(...skipping 19 matching lines...) Expand all Loading... |
30 #include "chromecast/browser/cast_network_delegate.h" | 30 #include "chromecast/browser/cast_network_delegate.h" |
31 #include "chromecast/browser/cast_quota_permission_context.h" | 31 #include "chromecast/browser/cast_quota_permission_context.h" |
32 #include "chromecast/browser/cast_resource_dispatcher_host_delegate.h" | 32 #include "chromecast/browser/cast_resource_dispatcher_host_delegate.h" |
33 #include "chromecast/browser/devtools/cast_devtools_manager_delegate.h" | 33 #include "chromecast/browser/devtools/cast_devtools_manager_delegate.h" |
34 #include "chromecast/browser/grit/cast_browser_resources.h" | 34 #include "chromecast/browser/grit/cast_browser_resources.h" |
35 #include "chromecast/browser/media/media_caps_impl.h" | 35 #include "chromecast/browser/media/media_caps_impl.h" |
36 #include "chromecast/browser/service/cast_service_simple.h" | 36 #include "chromecast/browser/service/cast_service_simple.h" |
37 #include "chromecast/browser/url_request_context_factory.h" | 37 #include "chromecast/browser/url_request_context_factory.h" |
38 #include "chromecast/common/global_descriptors.h" | 38 #include "chromecast/common/global_descriptors.h" |
39 #include "chromecast/media/audio/cast_audio_manager.h" | 39 #include "chromecast/media/audio/cast_audio_manager.h" |
40 #include "chromecast/media/cma/backend/media_pipeline_backend_factory.h" | 40 #include "chromecast/media/cma/backend/media_pipeline_backend_factory_impl.h" |
41 #include "chromecast/media/cma/backend/media_pipeline_backend_manager.h" | 41 #include "chromecast/media/cma/backend/media_pipeline_backend_manager.h" |
42 #include "chromecast/public/media/media_pipeline_backend.h" | 42 #include "chromecast/public/media/media_pipeline_backend.h" |
43 #include "components/crash/content/app/breakpad_linux.h" | 43 #include "components/crash/content/app/breakpad_linux.h" |
44 #include "components/crash/content/browser/crash_handler_host_linux.h" | 44 #include "components/crash/content/browser/crash_handler_host_linux.h" |
45 #include "components/network_hints/browser/network_hints_message_filter.h" | 45 #include "components/network_hints/browser/network_hints_message_filter.h" |
46 #include "content/public/browser/browser_thread.h" | 46 #include "content/public/browser/browser_thread.h" |
47 #include "content/public/browser/certificate_request_result_type.h" | 47 #include "content/public/browser/certificate_request_result_type.h" |
48 #include "content/public/browser/client_certificate_delegate.h" | 48 #include "content/public/browser/client_certificate_delegate.h" |
49 #include "content/public/browser/render_process_host.h" | 49 #include "content/public/browser/render_process_host.h" |
50 #include "content/public/browser/resource_dispatcher_host.h" | 50 #include "content/public/browser/resource_dispatcher_host.h" |
(...skipping 119 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
170 CastContentBrowserClient::GetMediaTaskRunner() { | 170 CastContentBrowserClient::GetMediaTaskRunner() { |
171 DCHECK(cast_browser_main_parts_); | 171 DCHECK(cast_browser_main_parts_); |
172 return cast_browser_main_parts_->GetMediaTaskRunner(); | 172 return cast_browser_main_parts_->GetMediaTaskRunner(); |
173 } | 173 } |
174 | 174 |
175 media::MediaPipelineBackendFactory* | 175 media::MediaPipelineBackendFactory* |
176 CastContentBrowserClient::GetMediaPipelineBackendFactory() { | 176 CastContentBrowserClient::GetMediaPipelineBackendFactory() { |
177 DCHECK(GetMediaTaskRunner()->BelongsToCurrentThread()); | 177 DCHECK(GetMediaTaskRunner()->BelongsToCurrentThread()); |
178 if (!media_pipeline_backend_factory_) { | 178 if (!media_pipeline_backend_factory_) { |
179 media_pipeline_backend_factory_.reset( | 179 media_pipeline_backend_factory_.reset( |
180 new media::MediaPipelineBackendFactory( | 180 new media::MediaPipelineBackendFactoryImpl( |
181 media_pipeline_backend_manager())); | 181 media_pipeline_backend_manager())); |
182 } | 182 } |
183 return media_pipeline_backend_factory_.get(); | 183 return media_pipeline_backend_factory_.get(); |
184 } | 184 } |
185 | 185 |
186 media::MediaResourceTracker* | 186 media::MediaResourceTracker* |
187 CastContentBrowserClient::media_resource_tracker() { | 187 CastContentBrowserClient::media_resource_tracker() { |
188 return cast_browser_main_parts_->media_resource_tracker(); | 188 return cast_browser_main_parts_->media_resource_tracker(); |
189 } | 189 } |
190 | 190 |
191 media::MediaPipelineBackendManager* | 191 media::MediaPipelineBackendManager* |
192 CastContentBrowserClient::media_pipeline_backend_manager() { | 192 CastContentBrowserClient::media_pipeline_backend_manager() { |
193 DCHECK(cast_browser_main_parts_); | 193 DCHECK(cast_browser_main_parts_); |
194 return cast_browser_main_parts_->media_pipeline_backend_manager(); | 194 return cast_browser_main_parts_->media_pipeline_backend_manager(); |
195 } | 195 } |
196 | 196 |
197 std::unique_ptr<::media::AudioManager> | 197 std::unique_ptr<::media::AudioManager> |
198 CastContentBrowserClient::CreateAudioManager( | 198 CastContentBrowserClient::CreateAudioManager( |
199 ::media::AudioLogFactory* audio_log_factory) { | 199 ::media::AudioLogFactory* audio_log_factory) { |
| 200 // TODO(alokp): Consider switching off the mixer on audio platforms |
| 201 // because we already have a mixer in the audio pipeline downstream of |
| 202 // CastAudioManager. |
| 203 bool use_mixer = true; |
200 return base::MakeUnique<media::CastAudioManager>( | 204 return base::MakeUnique<media::CastAudioManager>( |
201 base::MakeUnique<::media::AudioThreadImpl>(), audio_log_factory, | 205 base::MakeUnique<::media::AudioThreadImpl>(), audio_log_factory, |
202 media_pipeline_backend_manager()); | 206 base::MakeUnique<media::MediaPipelineBackendFactoryImpl>( |
| 207 media_pipeline_backend_manager()), |
| 208 GetMediaTaskRunner(), use_mixer); |
203 } | 209 } |
204 | 210 |
205 std::unique_ptr<::media::CdmFactory> | 211 std::unique_ptr<::media::CdmFactory> |
206 CastContentBrowserClient::CreateCdmFactory() { | 212 CastContentBrowserClient::CreateCdmFactory() { |
207 #if BUILDFLAG(ENABLE_MOJO_MEDIA_IN_BROWSER_PROCESS) | 213 #if BUILDFLAG(ENABLE_MOJO_MEDIA_IN_BROWSER_PROCESS) |
208 return base::MakeUnique<media::CastCdmFactory>(GetMediaTaskRunner(), | 214 return base::MakeUnique<media::CastCdmFactory>(GetMediaTaskRunner(), |
209 media_resource_tracker()); | 215 media_resource_tracker()); |
210 #endif // BUILDFLAG(ENABLE_MOJO_MEDIA_IN_BROWSER_PROCESS) | 216 #endif // BUILDFLAG(ENABLE_MOJO_MEDIA_IN_BROWSER_PROCESS) |
211 return nullptr; | 217 return nullptr; |
212 } | 218 } |
(...skipping 359 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
572 process_type, dumps_path, false /* upload */); | 578 process_type, dumps_path, false /* upload */); |
573 // StartUploaderThread() even though upload is diferred. | 579 // StartUploaderThread() even though upload is diferred. |
574 // Breakpad-related memory is freed in the uploader thread. | 580 // Breakpad-related memory is freed in the uploader thread. |
575 crash_handler->StartUploaderThread(); | 581 crash_handler->StartUploaderThread(); |
576 return crash_handler; | 582 return crash_handler; |
577 } | 583 } |
578 #endif // !defined(OS_ANDROID) | 584 #endif // !defined(OS_ANDROID) |
579 | 585 |
580 } // namespace shell | 586 } // namespace shell |
581 } // namespace chromecast | 587 } // namespace chromecast |
OLD | NEW |