summaryrefslogtreecommitdiffstats
path: root/dom/media/platforms/agnostic/gmp/GMPDecoderModule.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'dom/media/platforms/agnostic/gmp/GMPDecoderModule.cpp')
-rw-r--r--dom/media/platforms/agnostic/gmp/GMPDecoderModule.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/dom/media/platforms/agnostic/gmp/GMPDecoderModule.cpp b/dom/media/platforms/agnostic/gmp/GMPDecoderModule.cpp
index f01c7e94e4..e9c41be1f0 100644
--- a/dom/media/platforms/agnostic/gmp/GMPDecoderModule.cpp
+++ b/dom/media/platforms/agnostic/gmp/GMPDecoderModule.cpp
@@ -6,6 +6,9 @@
#include "GMPDecoderModule.h"
+#ifdef MOZ_AV1
+# include "AOMDecoder.h"
+#endif
#include "DecoderDoctorDiagnostics.h"
#include "GMPService.h"
#include "GMPUtils.h"
@@ -43,6 +46,9 @@ static already_AddRefed<MediaDataDecoderProxy> CreateDecoderWrapper(
already_AddRefed<MediaDataDecoder> GMPDecoderModule::CreateVideoDecoder(
const CreateDecoderParams& aParams) {
if (!MP4Decoder::IsH264(aParams.mConfig.mMimeType) &&
+#ifdef MOZ_AV1
+ !AOMDecoder::IsAV1(aParams.mConfig.mMimeType) &&
+#endif
!VPXDecoder::IsVP8(aParams.mConfig.mMimeType) &&
!VPXDecoder::IsVP9(aParams.mConfig.mMimeType)) {
return nullptr;
@@ -63,6 +69,10 @@ media::DecodeSupportSet GMPDecoderModule::SupportsMimeType(
AutoTArray<nsCString, 2> tags;
if (MP4Decoder::IsH264(aMimeType)) {
tags.AppendElement("h264"_ns);
+#ifdef MOZ_AV1
+ } else if (AOMDecoder::IsAV1(aMimeType)) {
+ tags.AppendElement("av1"_ns);
+#endif
} else if (VPXDecoder::IsVP9(aMimeType)) {
tags.AppendElement("vp9"_ns);
} else if (VPXDecoder::IsVP8(aMimeType)) {