| OLD | NEW |
| 1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 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/media/service/cast_renderer.h" | 5 #include "chromecast/media/service/cast_renderer.h" |
| 6 | 6 |
| 7 #include "base/bind.h" | 7 #include "base/bind.h" |
| 8 #include "base/single_thread_task_runner.h" | 8 #include "base/single_thread_task_runner.h" |
| 9 #include "chromecast/base/task_runner_impl.h" | 9 #include "chromecast/base/task_runner_impl.h" |
| 10 #include "chromecast/media/base/audio_device_ids.h" | 10 #include "chromecast/media/base/audio_device_ids.h" |
| (...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 55 | 55 |
| 56 CastRenderer::CastRenderer( | 56 CastRenderer::CastRenderer( |
| 57 MediaPipelineBackendFactory* backend_factory, | 57 MediaPipelineBackendFactory* backend_factory, |
| 58 const scoped_refptr<base::SingleThreadTaskRunner>& task_runner, | 58 const scoped_refptr<base::SingleThreadTaskRunner>& task_runner, |
| 59 const std::string& audio_device_id, | 59 const std::string& audio_device_id, |
| 60 VideoModeSwitcher* video_mode_switcher, | 60 VideoModeSwitcher* video_mode_switcher, |
| 61 VideoResolutionPolicy* video_resolution_policy, | 61 VideoResolutionPolicy* video_resolution_policy, |
| 62 MediaResourceTracker* media_resource_tracker) | 62 MediaResourceTracker* media_resource_tracker) |
| 63 : backend_factory_(backend_factory), | 63 : backend_factory_(backend_factory), |
| 64 task_runner_(task_runner), | 64 task_runner_(task_runner), |
| 65 audio_device_id_(audio_device_id), | 65 audio_device_id_(audio_device_id.empty() |
| 66 ? ::media::AudioDeviceDescription::kDefaultDeviceId |
| 67 : audio_device_id), |
| 66 video_mode_switcher_(video_mode_switcher), | 68 video_mode_switcher_(video_mode_switcher), |
| 67 video_resolution_policy_(video_resolution_policy), | 69 video_resolution_policy_(video_resolution_policy), |
| 68 media_resource_tracker_(media_resource_tracker), | 70 media_resource_tracker_(media_resource_tracker), |
| 69 client_(nullptr), | 71 client_(nullptr), |
| 70 cast_cdm_context_(nullptr), | 72 cast_cdm_context_(nullptr), |
| 71 media_task_runner_factory_( | 73 media_task_runner_factory_( |
| 72 new BalancedMediaTaskRunnerFactory(kMaxDeltaFetcher)), | 74 new BalancedMediaTaskRunnerFactory(kMaxDeltaFetcher)), |
| 73 weak_factory_(this) { | 75 weak_factory_(this) { |
| 74 DCHECK(backend_factory_); | 76 DCHECK(backend_factory_); |
| 75 CMALOG(kLogControl) << __FUNCTION__ << ": " << this; | 77 CMALOG(kLogControl) << __FUNCTION__ << ": " << this; |
| (...skipping 19 matching lines...) Expand all Loading... |
| 95 // Create pipeline backend. | 97 // Create pipeline backend. |
| 96 media_resource_usage_.reset( | 98 media_resource_usage_.reset( |
| 97 new MediaResourceTracker::ScopedUsage(media_resource_tracker_)); | 99 new MediaResourceTracker::ScopedUsage(media_resource_tracker_)); |
| 98 backend_task_runner_.reset(new TaskRunnerImpl()); | 100 backend_task_runner_.reset(new TaskRunnerImpl()); |
| 99 // TODO(erickung): crbug.com/443956. Need to provide right LoadType. | 101 // TODO(erickung): crbug.com/443956. Need to provide right LoadType. |
| 100 LoadType load_type = kLoadTypeMediaSource; | 102 LoadType load_type = kLoadTypeMediaSource; |
| 101 MediaPipelineDeviceParams::MediaSyncType sync_type = | 103 MediaPipelineDeviceParams::MediaSyncType sync_type = |
| 102 (load_type == kLoadTypeMediaStream) | 104 (load_type == kLoadTypeMediaStream) |
| 103 ? MediaPipelineDeviceParams::kModeIgnorePts | 105 ? MediaPipelineDeviceParams::kModeIgnorePts |
| 104 : MediaPipelineDeviceParams::kModeSyncPts; | 106 : MediaPipelineDeviceParams::kModeSyncPts; |
| 105 std::string device_id = audio_device_id_; | |
| 106 if (device_id == "") | |
| 107 device_id = ::media::AudioDeviceDescription::kDefaultDeviceId; | |
| 108 | 107 |
| 109 AudioContentType content_type; | 108 AudioContentType content_type; |
| 110 if (device_id == kAlarmAudioDeviceId) { | 109 if (audio_device_id_ == kAlarmAudioDeviceId) { |
| 111 content_type = AudioContentType::kAlarm; | 110 content_type = AudioContentType::kAlarm; |
| 112 } else if (audio_device_id_ == kTtsAudioDeviceId) { | 111 } else if (audio_device_id_ == kTtsAudioDeviceId) { |
| 113 content_type = AudioContentType::kCommunication; | 112 content_type = AudioContentType::kCommunication; |
| 114 } else { | 113 } else { |
| 115 content_type = AudioContentType::kMedia; | 114 content_type = AudioContentType::kMedia; |
| 116 } | 115 } |
| 117 MediaPipelineDeviceParams params(sync_type, backend_task_runner_.get(), | 116 MediaPipelineDeviceParams params(sync_type, backend_task_runner_.get(), |
| 118 content_type, audio_device_id_); | 117 content_type, audio_device_id_); |
| 119 | 118 |
| 120 if (audio_device_id_ == kTtsAudioDeviceId || | 119 if (audio_device_id_ == kTtsAudioDeviceId || |
| (...skipping 228 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 349 } | 348 } |
| 350 | 349 |
| 351 void CastRenderer::OnVideoOpacityChange(bool opaque) { | 350 void CastRenderer::OnVideoOpacityChange(bool opaque) { |
| 352 DCHECK(task_runner_->BelongsToCurrentThread()); | 351 DCHECK(task_runner_->BelongsToCurrentThread()); |
| 353 DCHECK(opaque); | 352 DCHECK(opaque); |
| 354 client_->OnVideoOpacityChange(opaque); | 353 client_->OnVideoOpacityChange(opaque); |
| 355 } | 354 } |
| 356 | 355 |
| 357 } // namespace media | 356 } // namespace media |
| 358 } // namespace chromecast | 357 } // namespace chromecast |
| OLD | NEW |