| Index: chromecast/browser/media/cma_message_filter_host.h
|
| diff --git a/chromecast/browser/media/cma_message_filter_host.h b/chromecast/browser/media/cma_message_filter_host.h
|
| index 0a19fc2947ae7d7bd4957aea9881f1d29ec4d9c2..a9aeb16f7877d87e96ac21c6416f304fd08a0da5 100644
|
| --- a/chromecast/browser/media/cma_message_filter_host.h
|
| +++ b/chromecast/browser/media/cma_message_filter_host.h
|
| @@ -38,6 +38,7 @@ class VideoDecoderConfig;
|
| namespace chromecast {
|
| namespace media {
|
|
|
| +class BrowserCdmCast;
|
| class MediaPipelineBackend;
|
| struct MediaPipelineDeviceParams;
|
| class MediaPipelineHost;
|
| @@ -50,8 +51,10 @@ class CmaMessageFilterHost
|
| typedef base::Callback<scoped_ptr<MediaPipelineBackend>(
|
| const MediaPipelineDeviceParams&)> CreateBackendCB;
|
|
|
| - CmaMessageFilterHost(int render_process_id,
|
| - scoped_refptr<CmaMediaPipelineClient> client);
|
| + CmaMessageFilterHost(
|
| + int render_process_id,
|
| + scoped_refptr<CmaMediaPipelineClient> client,
|
| + const scoped_refptr<base::SingleThreadTaskRunner>& task_runner);
|
|
|
| // content::BrowserMessageFilter implementation:
|
| void OnChannelClosing() override;
|
| @@ -113,6 +116,22 @@ class CmaMessageFilterHost
|
| TrackId track_id,
|
| const gfx::Size& size);
|
|
|
| + // CDM functions.
|
| + void SetCdmOnUiThread(int render_process_id,
|
| + int render_frame_id,
|
| + int media_id,
|
| + int cdm_id);
|
| + void SetCdmOnCmaThread(int render_process_id,
|
| + int media_id,
|
| + BrowserCdmCast* cdm);
|
| + // Media pipeline map management functions.
|
| + // These functions are called on CMA thread.
|
| + MediaPipelineHost* GetMediaPipeline(int process_id, int media_id);
|
| + void SetMediaPipeline(int process_id, int media_id, MediaPipelineHost* host);
|
| + void DestroyMediaPipeline(int process_id,
|
| + int media_id,
|
| + scoped_ptr<MediaPipelineHost> media_pipeline);
|
| +
|
| // Render process ID correponding to this message filter.
|
| const int process_id_;
|
|
|
|
|