void PDMFactory::CreatePDMs() { RefPtr<PlatformDecoderModule> m; if (MediaPrefs::PDMUseBlankDecoder()) { m = CreateBlankDecoderModule(); StartupPDM(m); // The Blank PDM SupportsMimeType reports true for all codecs; the creation // of its decoder is infallible. As such it will be used for all media, we // can stop creating more PDM from this point. return; } #ifdef XP_WIN if (MediaPrefs::PDMWMFEnabled()) { m = new WMFDecoderModule(); RefPtr<PlatformDecoderModule> remote = new dom::RemoteDecoderModule(m); StartupPDM(remote); mWMFFailedToLoad = !StartupPDM(m); } else { mWMFFailedToLoad = MediaPrefs::DecoderDoctorWMFDisabledIsFailure(); } #endif #ifdef MOZ_FFVPX if (MediaPrefs::PDMFFVPXEnabled()) { m = FFVPXRuntimeLinker::CreateDecoderModule(); StartupPDM(m); } #endif #ifdef MOZ_FFMPEG if (MediaPrefs::PDMFFmpegEnabled()) { m = FFmpegRuntimeLinker::CreateDecoderModule(); mFFmpegFailedToLoad = !StartupPDM(m); } else { mFFmpegFailedToLoad = false; } #endif #ifdef MOZ_APPLEMEDIA m = new AppleDecoderModule(); StartupPDM(m); #endif #ifdef MOZ_WIDGET_ANDROID if(MediaPrefs::PDMAndroidMediaCodecEnabled()){ m = new AndroidDecoderModule(); StartupPDM(m, MediaPrefs::PDMAndroidMediaCodecPreferred()); } #endif m = new AgnosticDecoderModule(); StartupPDM(m); if (MediaPrefs::PDMGMPEnabled()) { m = new GMPDecoderModule(); mGMPPDMFailedToStartup = !StartupPDM(m); } else { mGMPPDMFailedToStartup = false; } }
void PDMFactory::CreatePDMs() { nsRefPtr<PlatformDecoderModule> m; if (sGMPDecoderEnabled) { m = new GMPDecoderModule(); StartupPDM(m); } #ifdef MOZ_WIDGET_ANDROID if(sAndroidMCDecoderPreferred && sAndroidMCDecoderEnabled) { m = new AndroidDecoderModule(); StartupPDM(m); } #endif #ifdef XP_WIN if (sWMFDecoderEnabled) { m = new WMFDecoderModule(); StartupPDM(m); } #endif #ifdef MOZ_FFMPEG if (sFFmpegDecoderEnabled) { m = FFmpegRuntimeLinker::CreateDecoderModule(); StartupPDM(m); } #endif #ifdef MOZ_APPLEMEDIA m = new AppleDecoderModule(); StartupPDM(m); #endif #ifdef MOZ_GONK_MEDIACODEC if (sGonkDecoderEnabled) { m = new GonkDecoderModule(); StartupPDM(m); } #endif #ifdef MOZ_WIDGET_ANDROID if(sAndroidMCDecoderEnabled){ m = new AndroidDecoderModule(); StartupPDM(m); } #endif m = new AgnosticDecoderModule(); StartupPDM(m); if (sUseBlankDecoder) { m = CreateBlankDecoderModule(); StartupPDM(m); } }
void PDMFactory::CreatePDMs() { RefPtr<PlatformDecoderModule> m; if (sUseBlankDecoder) { m = CreateBlankDecoderModule(); StartupPDM(m); // The Blank PDM SupportsMimeType reports true for all codecs; the creation // of its decoder is infallible. As such it will be used for all media, we // can stop creating more PDM from this point. return; } #ifdef MOZ_WIDGET_ANDROID if(sAndroidMCDecoderPreferred && sAndroidMCDecoderEnabled) { m = new AndroidDecoderModule(); StartupPDM(m); } #endif #ifdef XP_WIN if (sWMFDecoderEnabled) { m = new WMFDecoderModule(); StartupPDM(m); } #endif #ifdef MOZ_FFVPX if (sFFVPXDecoderEnabled) { m = FFVPXRuntimeLinker::CreateDecoderModule(); StartupPDM(m); } #endif #ifdef MOZ_FFMPEG if (sFFmpegDecoderEnabled) { m = FFmpegRuntimeLinker::CreateDecoderModule(); StartupPDM(m); } #endif #ifdef MOZ_APPLEMEDIA m = new AppleDecoderModule(); StartupPDM(m); #endif #ifdef MOZ_GONK_MEDIACODEC if (sGonkDecoderEnabled) { m = new GonkDecoderModule(); StartupPDM(m); } #endif #ifdef MOZ_WIDGET_ANDROID if(sAndroidMCDecoderEnabled){ m = new AndroidDecoderModule(); StartupPDM(m); } #endif m = new AgnosticDecoderModule(); StartupPDM(m); if (sGMPDecoderEnabled) { m = new GMPDecoderModule(); StartupPDM(m); } }