Index: chromecast/media/service/cast_renderer.cc |
diff --git a/chromecast/media/service/cast_renderer.cc b/chromecast/media/service/cast_renderer.cc |
index 42964baf9931ca51a38fc5d8e885dda2567a16da..ac9ce4384d5dcb26deef53375bbbfd073860af41 100644 |
--- a/chromecast/media/service/cast_renderer.cc |
+++ b/chromecast/media/service/cast_renderer.cc |
@@ -7,6 +7,7 @@ |
#include "base/bind.h" |
#include "base/single_thread_task_runner.h" |
#include "chromecast/base/task_runner_impl.h" |
+#include "chromecast/media/base/audio_device_ids.h" |
#include "chromecast/media/base/video_resolution_policy.h" |
#include "chromecast/media/cdm/cast_cdm_context.h" |
#include "chromecast/media/cma/base/balanced_media_task_runner_factory.h" |
@@ -16,6 +17,7 @@ |
#include "chromecast/media/cma/pipeline/video_pipeline_client.h" |
#include "chromecast/public/media/media_pipeline_backend.h" |
#include "chromecast/public/media/media_pipeline_device_params.h" |
+#include "media/audio/audio_device_description.h" |
#include "media/base/audio_decoder_config.h" |
#include "media/base/demuxer_stream.h" |
#include "media/base/media_log.h" |
@@ -77,7 +79,15 @@ void CastRenderer::Initialize(::media::MediaResource* media_resource, |
(load_type == kLoadTypeMediaStream) |
? MediaPipelineDeviceParams::kModeIgnorePts |
: MediaPipelineDeviceParams::kModeSyncPts; |
- MediaPipelineDeviceParams params(sync_type, backend_task_runner_.get()); |
+ MediaPipelineDeviceParams params( |
+ sync_type, MediaPipelineDeviceParams::kAudioStreamNormal, |
+ audio_device_id_ /* name */, backend_task_runner_.get()); |
+ |
+ if (audio_device_id_ == kTtsAudioDeviceId || |
+ audio_device_id_ == kSystemAudioDeviceId) { |
+ load_type = kLoadTypeLiveSource; |
+ } |
+ |
std::unique_ptr<MediaPipelineBackend> backend = |
create_backend_cb_.Run(params, audio_device_id_); |