diff options
author | halliwell <halliwell@chromium.org> | 2015-06-05 10:53:17 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2015-06-05 17:54:40 +0000 |
commit | 1a4282180660fce54726f648ac465afea227109c (patch) | |
tree | 3d68e809f97279c42d0d3f24890745792c92fac4 /chromecast/browser/cast_content_browser_client.h | |
parent | cd7c64859aba1c58428fe4d4c3eeb16aeb335dcd (diff) | |
download | chromium_src-1a4282180660fce54726f648ac465afea227109c.zip chromium_src-1a4282180660fce54726f648ac465afea227109c.tar.gz chromium_src-1a4282180660fce54726f648ac465afea227109c.tar.bz2 |
Allow CastContentBrowserClient to customise media pipeline device
We need a hook to customise how MediaPipelineDevice is created,
orthogonal to the vendor-specific aspect of creation. Decided to
keep existing factory method for the vendor customisation so there's
no need to change vendor implementations for now (although this
will all get moved into libcast_media before long). New hook is
in CastContentBrowserClient and can be substituted as the other
Platform* functions already are.
BUG=
Review URL: https://codereview.chromium.org/1168643004
Cr-Commit-Position: refs/heads/master@{#333090}
Diffstat (limited to 'chromecast/browser/cast_content_browser_client.h')
-rw-r--r-- | chromecast/browser/cast_content_browser_client.h | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/chromecast/browser/cast_content_browser_client.h b/chromecast/browser/cast_content_browser_client.h index 5e5c262..f15537a 100644 --- a/chromecast/browser/cast_content_browser_client.h +++ b/chromecast/browser/cast_content_browser_client.h @@ -30,6 +30,11 @@ class HostResolver; } namespace chromecast { +namespace media { +class MediaPipelineDevice; +class MediaPipelineDeviceParams; +} + namespace shell { class CastBrowserMainParts; @@ -48,6 +53,13 @@ class CastContentBrowserClient: public content::ContentBrowserClient { std::vector<scoped_refptr<content::BrowserMessageFilter>> PlatformGetBrowserMessageFilters(); +#if !defined(OS_ANDROID) + // Creates a MediaPipelineDevice (CMA backend) for media playback, called + // once per media player instance. + scoped_ptr<media::MediaPipelineDevice> PlatformCreateMediaPipelineDevice( + const media::MediaPipelineDeviceParams& params); +#endif + // content::ContentBrowserClient implementation: content::BrowserMainParts* CreateBrowserMainParts( const content::MainFunctionParams& parameters) override; |