Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2)

Side by Side Diff: chromecast/renderer/cast_content_renderer_client.cc

Issue 973633002: Chromecast: Play audio streams not supported by CMA via default renderer (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Include gpu_video_accelerator_factories.h into default_renderer_factory.h Created 5 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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/renderer/cast_content_renderer_client.h" 5 #include "chromecast/renderer/cast_content_renderer_client.h"
6 6
7 #include <sys/sysinfo.h> 7 #include <sys/sysinfo.h>
8 8
9 #include "base/command_line.h" 9 #include "base/command_line.h"
10 #include "base/memory/memory_pressure_listener.h" 10 #include "base/memory/memory_pressure_listener.h"
11 #include "chromecast/common/chromecast_switches.h" 11 #include "chromecast/common/chromecast_switches.h"
12 #include "chromecast/crash/cast_crash_keys.h" 12 #include "chromecast/crash/cast_crash_keys.h"
13 #include "chromecast/renderer/cast_media_load_deferrer.h" 13 #include "chromecast/renderer/cast_media_load_deferrer.h"
14 #include "chromecast/renderer/cast_render_process_observer.h" 14 #include "chromecast/renderer/cast_render_process_observer.h"
15 #include "chromecast/renderer/key_systems_cast.h" 15 #include "chromecast/renderer/key_systems_cast.h"
16 #include "chromecast/renderer/media/cma_media_renderer_factory.h" 16 #include "chromecast/renderer/media/chromecast_media_renderer_factory.h"
17 #include "components/network_hints/renderer/prescient_networking_dispatcher.h" 17 #include "components/network_hints/renderer/prescient_networking_dispatcher.h"
18 #include "content/public/common/content_switches.h" 18 #include "content/public/common/content_switches.h"
19 #include "content/public/renderer/render_frame.h" 19 #include "content/public/renderer/render_frame.h"
20 #include "content/public/renderer/render_view.h" 20 #include "content/public/renderer/render_view.h"
21 #include "content/public/renderer/render_view_observer.h" 21 #include "content/public/renderer/render_view_observer.h"
22 #include "crypto/nss_util.h" 22 #include "crypto/nss_util.h"
23 #include "ipc/message_filter.h" 23 #include "ipc/message_filter.h"
24 #include "third_party/WebKit/public/platform/WebColor.h" 24 #include "third_party/WebKit/public/platform/WebColor.h"
25 #include "third_party/WebKit/public/web/WebSettings.h" 25 #include "third_party/WebKit/public/web/WebSettings.h"
26 #include "third_party/WebKit/public/web/WebView.h" 26 #include "third_party/WebKit/public/web/WebView.h"
(...skipping 126 matching lines...) Expand 10 before | Expand all | Expand 10 after
153 #if !defined(OS_ANDROID) 153 #if !defined(OS_ANDROID)
154 scoped_ptr<::media::RendererFactory> 154 scoped_ptr<::media::RendererFactory>
155 CastContentRendererClient::CreateMediaRendererFactory( 155 CastContentRendererClient::CreateMediaRendererFactory(
156 ::content::RenderFrame* render_frame, 156 ::content::RenderFrame* render_frame,
157 const scoped_refptr<::media::MediaLog>& media_log) { 157 const scoped_refptr<::media::MediaLog>& media_log) {
158 const base::CommandLine* cmd_line = base::CommandLine::ForCurrentProcess(); 158 const base::CommandLine* cmd_line = base::CommandLine::ForCurrentProcess();
159 if (!cmd_line->HasSwitch(switches::kEnableCmaMediaPipeline)) 159 if (!cmd_line->HasSwitch(switches::kEnableCmaMediaPipeline))
160 return nullptr; 160 return nullptr;
161 161
162 return scoped_ptr<::media::RendererFactory>( 162 return scoped_ptr<::media::RendererFactory>(
163 new chromecast::media::CmaMediaRendererFactory( 163 new chromecast::media::ChromecastMediaRendererFactory(
164 render_frame->GetRoutingID())); 164 media_log, render_frame->GetRoutingID()));
165 } 165 }
166 #endif 166 #endif
167 167
168 blink::WebPrescientNetworking* 168 blink::WebPrescientNetworking*
169 CastContentRendererClient::GetPrescientNetworking() { 169 CastContentRendererClient::GetPrescientNetworking() {
170 return prescient_networking_dispatcher_.get(); 170 return prescient_networking_dispatcher_.get();
171 } 171 }
172 172
173 void CastContentRendererClient::DeferMediaLoad( 173 void CastContentRendererClient::DeferMediaLoad(
174 content::RenderFrame* render_frame, 174 content::RenderFrame* render_frame,
175 const base::Closure& closure) { 175 const base::Closure& closure) {
176 if (!render_frame->IsHidden()) { 176 if (!render_frame->IsHidden()) {
177 closure.Run(); 177 closure.Run();
178 return; 178 return;
179 } 179 }
180 180
181 // Lifetime is tied to |render_frame| via content::RenderFrameObserver. 181 // Lifetime is tied to |render_frame| via content::RenderFrameObserver.
182 new CastMediaLoadDeferrer(render_frame, closure); 182 new CastMediaLoadDeferrer(render_frame, closure);
183 } 183 }
184 184
185 } // namespace shell 185 } // namespace shell
186 } // namespace chromecast 186 } // namespace chromecast
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698