42 lines
1.3 KiB
Diff
42 lines
1.3 KiB
Diff
diff --git a/dom/media/platforms/PDMFactory.cpp b/dom/media/platforms/PDMFactory.cpp
|
|
--- a/dom/media/platforms/PDMFactory.cpp
|
|
+++ b/dom/media/platforms/PDMFactory.cpp
|
|
@@ -21,16 +21,17 @@
|
|
#include "mozilla/GpuDecoderModule.h"
|
|
#include "mozilla/RemoteDecoderModule.h"
|
|
#include "mozilla/SharedThreadPool.h"
|
|
#include "mozilla/StaticPrefs_media.h"
|
|
#include "mozilla/StaticPtr.h"
|
|
#include "mozilla/SyncRunnable.h"
|
|
#include "mozilla/TaskQueue.h"
|
|
#include "mozilla/gfx/gfxVars.h"
|
|
+#include "gfxPlatformGtk.h"
|
|
|
|
#ifdef XP_WIN
|
|
# include "WMFDecoderModule.h"
|
|
# include "mozilla/WindowsVersion.h"
|
|
#endif
|
|
#ifdef MOZ_FFVPX
|
|
# include "FFVPXRuntimeLinker.h"
|
|
#endif
|
|
@@ -362,17 +363,18 @@ void PDMFactory::CreatePDMs() {
|
|
#endif
|
|
#ifdef MOZ_OMX
|
|
if (StaticPrefs::media_omx_enabled()) {
|
|
m = OmxDecoderModule::Create();
|
|
StartupPDM(m);
|
|
}
|
|
#endif
|
|
#ifdef MOZ_FFVPX
|
|
- if (StaticPrefs::media_ffvpx_enabled()) {
|
|
+ if (StaticPrefs::media_ffvpx_enabled() &&
|
|
+ !gfxPlatformGtk::GetPlatform()->UseHardwareVideoDecoding()) {
|
|
m = FFVPXRuntimeLinker::CreateDecoderModule();
|
|
StartupPDM(m);
|
|
}
|
|
#endif
|
|
#ifdef MOZ_FFMPEG
|
|
if (StaticPrefs::media_ffmpeg_enabled()) {
|
|
m = FFmpegRuntimeLinker::CreateDecoderModule();
|
|
mFFmpegFailedToLoad = !StartupPDM(m);
|