Index: chromecast/browser/media/media_pipeline_host.cc |
diff --git a/chromecast/browser/media/media_pipeline_host.cc b/chromecast/browser/media/media_pipeline_host.cc |
index 087077d044b514ae099ab8f382cd93e44dd68e22..85376d581199edb3c0f88241b4d6ba2cf5bbe61b 100644 |
--- a/chromecast/browser/media/media_pipeline_host.cc |
+++ b/chromecast/browser/media/media_pipeline_host.cc |
@@ -11,14 +11,17 @@ |
#include "base/location.h" |
#include "base/memory/shared_memory.h" |
#include "base/single_thread_task_runner.h" |
+#include "base/thread_task_runner_handle.h" |
+#include "chromecast/base/task_runner_impl.h" |
#include "chromecast/common/media/shared_memory_chunk.h" |
-#include "chromecast/media/cma/backend/media_pipeline_device.h" |
-#include "chromecast/media/cma/backend/media_pipeline_device_params.h" |
+#include "chromecast/media/base/media_caps.h" |
#include "chromecast/media/cma/ipc/media_message_fifo.h" |
#include "chromecast/media/cma/ipc_streamer/coded_frame_provider_host.h" |
#include "chromecast/media/cma/pipeline/audio_pipeline_impl.h" |
#include "chromecast/media/cma/pipeline/media_pipeline_impl.h" |
#include "chromecast/media/cma/pipeline/video_pipeline_impl.h" |
+#include "chromecast/public/media/media_pipeline_backend.h" |
+#include "chromecast/public/media/media_pipeline_device_params.h" |
namespace chromecast { |
namespace media { |
@@ -53,14 +56,18 @@ MediaPipelineHost::~MediaPipelineHost() { |
void MediaPipelineHost::Initialize( |
LoadType load_type, |
const MediaPipelineClient& client, |
- const media::CreatePipelineDeviceCB& create_pipeline_device_cb) { |
+ const CreateDeviceComponentsCB& create_device_components_cb) { |
DCHECK(thread_checker_.CalledOnValidThread()); |
media_pipeline_.reset(new MediaPipelineImpl()); |
- MediaPipelineDeviceParams default_parameters; |
- if (load_type == kLoadTypeMediaStream) |
- default_parameters.sync_type = MediaPipelineDeviceParams::kModeIgnorePts; |
+ task_runner_.reset(new TaskRunnerImpl()); |
+ MediaPipelineDeviceParams::MediaSyncType sync_type = |
+ (load_type == kLoadTypeMediaStream) |
+ ? MediaPipelineDeviceParams::kModeIgnorePts |
+ : MediaPipelineDeviceParams::kModeSyncPts; |
+ MediaPipelineDeviceParams default_parameters(sync_type, task_runner_.get()); |
+ |
media_pipeline_->Initialize( |
- load_type, create_pipeline_device_cb.Run(default_parameters).Pass()); |
+ load_type, create_device_components_cb.Run(default_parameters).Pass()); |
media_pipeline_->SetClient(client); |
} |