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_browser_main_parts.h" | 5 #include "chromecast/browser/cast_browser_main_parts.h" |
6 | 6 |
7 #include <stddef.h> | 7 #include <stddef.h> |
8 #include <string.h> | 8 #include <string.h> |
9 | 9 |
10 #include <string> | 10 #include <string> |
(...skipping 19 matching lines...) Expand all Loading... |
30 #include "chromecast/browser/cast_content_browser_client.h" | 30 #include "chromecast/browser/cast_content_browser_client.h" |
31 #include "chromecast/browser/cast_memory_pressure_monitor.h" | 31 #include "chromecast/browser/cast_memory_pressure_monitor.h" |
32 #include "chromecast/browser/cast_net_log.h" | 32 #include "chromecast/browser/cast_net_log.h" |
33 #include "chromecast/browser/devtools/remote_debugging_server.h" | 33 #include "chromecast/browser/devtools/remote_debugging_server.h" |
34 #include "chromecast/browser/metrics/cast_metrics_prefs.h" | 34 #include "chromecast/browser/metrics/cast_metrics_prefs.h" |
35 #include "chromecast/browser/metrics/cast_metrics_service_client.h" | 35 #include "chromecast/browser/metrics/cast_metrics_service_client.h" |
36 #include "chromecast/browser/pref_service_helper.h" | 36 #include "chromecast/browser/pref_service_helper.h" |
37 #include "chromecast/browser/url_request_context_factory.h" | 37 #include "chromecast/browser/url_request_context_factory.h" |
38 #include "chromecast/chromecast_features.h" | 38 #include "chromecast/chromecast_features.h" |
39 #include "chromecast/common/platform_client_auth.h" | 39 #include "chromecast/common/platform_client_auth.h" |
40 #include "chromecast/media/audio/cast_audio_manager_factory.h" | |
41 #include "chromecast/media/base/key_systems_common.h" | 40 #include "chromecast/media/base/key_systems_common.h" |
42 #include "chromecast/media/base/media_message_loop.h" | 41 #include "chromecast/media/base/media_message_loop.h" |
43 #include "chromecast/media/base/media_resource_tracker.h" | 42 #include "chromecast/media/base/media_resource_tracker.h" |
44 #include "chromecast/media/base/video_plane_controller.h" | 43 #include "chromecast/media/base/video_plane_controller.h" |
45 #include "chromecast/media/cma/backend/media_pipeline_backend_manager.h" | 44 #include "chromecast/media/cma/backend/media_pipeline_backend_manager.h" |
46 #include "chromecast/net/connectivity_checker.h" | 45 #include "chromecast/net/connectivity_checker.h" |
47 #include "chromecast/public/cast_media_shlib.h" | 46 #include "chromecast/public/cast_media_shlib.h" |
48 #include "chromecast/public/cast_sys_info.h" | 47 #include "chromecast/public/cast_sys_info.h" |
49 #include "chromecast/service/cast_service.h" | 48 #include "chromecast/service/cast_service.h" |
50 #include "components/prefs/pref_registry_simple.h" | 49 #include "components/prefs/pref_registry_simple.h" |
51 #include "content/public/browser/browser_thread.h" | 50 #include "content/public/browser/browser_thread.h" |
52 #include "content/public/browser/child_process_security_policy.h" | 51 #include "content/public/browser/child_process_security_policy.h" |
53 #include "content/public/browser/gpu_data_manager.h" | 52 #include "content/public/browser/gpu_data_manager.h" |
54 #include "content/public/browser/storage_partition.h" | 53 #include "content/public/browser/storage_partition.h" |
55 #include "content/public/common/content_switches.h" | 54 #include "content/public/common/content_switches.h" |
56 #include "gpu/command_buffer/service/gpu_switches.h" | 55 #include "gpu/command_buffer/service/gpu_switches.h" |
57 #include "media/audio/audio_manager.h" | |
58 #include "media/base/media.h" | 56 #include "media/base/media.h" |
59 #include "ui/compositor/compositor_switches.h" | 57 #include "ui/compositor/compositor_switches.h" |
60 | 58 |
61 #if !defined(OS_ANDROID) | 59 #if !defined(OS_ANDROID) |
62 #include <signal.h> | 60 #include <signal.h> |
63 #include <sys/prctl.h> | 61 #include <sys/prctl.h> |
64 #endif | 62 #endif |
65 #if defined(OS_LINUX) | 63 #if defined(OS_LINUX) |
66 #include <fontconfig/fontconfig.h> | 64 #include <fontconfig/fontconfig.h> |
67 #endif | 65 #endif |
(...skipping 273 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
341 base::WrapUnique(new breakpad::CrashDumpManager(crash_dumps_dir))); | 339 base::WrapUnique(new breakpad::CrashDumpManager(crash_dumps_dir))); |
342 #else | 340 #else |
343 base::FilePath home_dir; | 341 base::FilePath home_dir; |
344 CHECK(PathService::Get(DIR_CAST_HOME, &home_dir)); | 342 CHECK(PathService::Get(DIR_CAST_HOME, &home_dir)); |
345 if (!base::CreateDirectory(home_dir)) | 343 if (!base::CreateDirectory(home_dir)) |
346 return 1; | 344 return 1; |
347 | 345 |
348 // Hook for internal code | 346 // Hook for internal code |
349 cast_browser_process_->browser_client()->PreCreateThreads(); | 347 cast_browser_process_->browser_client()->PreCreateThreads(); |
350 | 348 |
351 // AudioManager is created immediately after threads are created, requiring | |
352 // AudioManagerFactory to be set beforehand. | |
353 ::media::AudioManager::SetFactory( | |
354 new media::CastAudioManagerFactory(media_pipeline_backend_manager())); | |
355 | |
356 // Set GL strings so GPU config code can make correct feature blacklisting/ | 349 // Set GL strings so GPU config code can make correct feature blacklisting/ |
357 // whitelisting decisions. | 350 // whitelisting decisions. |
358 // Note: SetGLStrings can be called before GpuDataManager::Initialize. | 351 // Note: SetGLStrings can be called before GpuDataManager::Initialize. |
359 std::unique_ptr<CastSysInfo> sys_info = CreateSysInfo(); | 352 std::unique_ptr<CastSysInfo> sys_info = CreateSysInfo(); |
360 content::GpuDataManager::GetInstance()->SetGLStrings( | 353 content::GpuDataManager::GetInstance()->SetGLStrings( |
361 sys_info->GetGlVendor(), sys_info->GetGlRenderer(), | 354 sys_info->GetGlVendor(), sys_info->GetGlRenderer(), |
362 sys_info->GetGlVersion()); | 355 sys_info->GetGlVersion()); |
363 #endif | 356 #endif |
364 | 357 |
365 #if defined(USE_AURA) | 358 #if defined(USE_AURA) |
(...skipping 132 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
498 void CastBrowserMainParts::PostDestroyThreads() { | 491 void CastBrowserMainParts::PostDestroyThreads() { |
499 #if !defined(OS_ANDROID) | 492 #if !defined(OS_ANDROID) |
500 media_resource_tracker_->FinalizeAndDestroy(); | 493 media_resource_tracker_->FinalizeAndDestroy(); |
501 media_resource_tracker_ = nullptr; | 494 media_resource_tracker_ = nullptr; |
502 media_pipeline_backend_manager_.reset(); | 495 media_pipeline_backend_manager_.reset(); |
503 #endif | 496 #endif |
504 } | 497 } |
505 | 498 |
506 } // namespace shell | 499 } // namespace shell |
507 } // namespace chromecast | 500 } // namespace chromecast |
OLD | NEW |