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

Unified Diff: content/renderer/render_frame_impl.cc

Issue 2900773004: media: Add experimental feature to enable Mojo CDM on desktop Chromium (Closed)
Patch Set: drop utility_process_host_impl.cc change Created 3 years, 7 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « content/browser/service_manager/service_manager_context.cc ('k') | content/utility/BUILD.gn » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: content/renderer/render_frame_impl.cc
diff --git a/content/renderer/render_frame_impl.cc b/content/renderer/render_frame_impl.cc
index 3ca56c4a5a62aba13b2e82e4fe3d29e1ef8da93e..db95d179a5c738ec6a194362e03af234655cfea1 100644
--- a/content/renderer/render_frame_impl.cc
+++ b/content/renderer/render_frame_impl.cc
@@ -6775,18 +6775,22 @@ media::mojom::RemoterFactory* RenderFrameImpl::GetRemoterFactory() {
#endif
media::CdmFactory* RenderFrameImpl::GetCdmFactory() {
+ DCHECK(frame_);
+
if (cdm_factory_)
return cdm_factory_.get();
-#if BUILDFLAG(ENABLE_MOJO_CDM)
- cdm_factory_.reset(new media::MojoCdmFactory(GetMediaInterfaceProvider()));
- return cdm_factory_.get();
-#endif // BUILDFLAG(ENABLE_MOJO_CDM)
-
#if BUILDFLAG(ENABLE_PEPPER_CDMS)
- DCHECK(frame_);
- cdm_factory_.reset(
- new RenderCdmFactory(base::Bind(&PepperCdmWrapperImpl::Create, frame_)));
+ static_assert(BUILDFLAG(ENABLE_MOJO_CDM),
+ "Mojo CDM should always be enabled when PPAPI CDM is enabled");
+ if (base::FeatureList::IsEnabled(media::kMojoCdm)) {
+ cdm_factory_.reset(new media::MojoCdmFactory(GetMediaInterfaceProvider()));
+ } else {
+ cdm_factory_.reset(new RenderCdmFactory(
+ base::Bind(&PepperCdmWrapperImpl::Create, frame_)));
+ }
+#elif BUILDFLAG(ENABLE_MOJO_CDM)
+ cdm_factory_.reset(new media::MojoCdmFactory(GetMediaInterfaceProvider()));
#endif // BUILDFLAG(ENABLE_PEPPER_CDMS)
#if BUILDFLAG(ENABLE_MEDIA_REMOTING)
« no previous file with comments | « content/browser/service_manager/service_manager_context.cc ('k') | content/utility/BUILD.gn » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698