summaryrefslogtreecommitdiffstats
path: root/dom/media/VideoUtils.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'dom/media/VideoUtils.cpp')
-rw-r--r--dom/media/VideoUtils.cpp21
1 files changed, 21 insertions, 0 deletions
diff --git a/dom/media/VideoUtils.cpp b/dom/media/VideoUtils.cpp
index 24b1f0dd59..31fe3242dc 100644
--- a/dom/media/VideoUtils.cpp
+++ b/dom/media/VideoUtils.cpp
@@ -10,10 +10,13 @@
#include "ImageContainer.h"
#include "MediaContainerType.h"
#include "MediaResource.h"
+#include "PDMFactory.h"
#include "TimeUnits.h"
#include "mozilla/Base64.h"
#include "mozilla/dom/ContentChild.h"
+#include "mozilla/gfx/gfxVars.h"
#include "mozilla/SchedulerGroup.h"
+#include "mozilla/ScopeExit.h"
#include "mozilla/SharedThreadPool.h"
#include "mozilla/StaticPrefs_accessibility.h"
#include "mozilla/StaticPrefs_media.h"
@@ -28,6 +31,10 @@
#include "nsServiceManagerUtils.h"
#include "nsThreadUtils.h"
+#ifdef XP_WIN
+# include "WMFDecoderModule.h"
+#endif
+
namespace mozilla {
using gfx::ColorRange;
@@ -1247,4 +1254,18 @@ void DetermineResolutionForTelemetry(const MediaInfo& aInfo,
aResolutionOut.AppendASCII(resolution);
}
+bool ContainHardwareCodecsSupported(
+ const media::MediaCodecsSupported& aSupport) {
+ return aSupport.contains(
+ mozilla::media::MediaCodecsSupport::H264HardwareDecode) ||
+ aSupport.contains(
+ mozilla::media::MediaCodecsSupport::VP8HardwareDecode) ||
+ aSupport.contains(
+ mozilla::media::MediaCodecsSupport::VP9HardwareDecode) ||
+ aSupport.contains(
+ mozilla::media::MediaCodecsSupport::AV1HardwareDecode) ||
+ aSupport.contains(
+ mozilla::media::MediaCodecsSupport::HEVCHardwareDecode);
+}
+
} // end namespace mozilla