Fixed openh264 decode

This commit is contained in:
Martin Stransky 2022-06-09 20:34:42 +02:00
parent e2a4b7e32d
commit 33fd704cce
2 changed files with 13 additions and 12 deletions

View File

@ -1111,7 +1111,7 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
* Thu Jun 9 2022 Martin Stransky <stransky@redhat.com>- 101.0.1-1
- Updated to 101.0.1
- More VA-API sandbox fixes (mzbz#1769182)
- Adjust GMP plugin setting (rhbz#2094319)
- Fixed OpenH264 decode (rhbz#2094319)
* Tue Jun 7 2022 Martin Stransky <stransky@redhat.com>- 101.0-2
- Enabled VA-API by default (+ added VA-API fixes from upstream)

View File

@ -1,6 +1,6 @@
diff -up firefox-101.0.1/dom/media/gmp/GMPSharedMemManager.h.1663844 firefox-101.0.1/dom/media/gmp/GMPSharedMemManager.h
--- firefox-101.0.1/dom/media/gmp/GMPSharedMemManager.h.1663844 2022-06-08 23:06:36.000000000 +0200
+++ firefox-101.0.1/dom/media/gmp/GMPSharedMemManager.h 2022-06-09 16:45:32.341742564 +0200
+++ firefox-101.0.1/dom/media/gmp/GMPSharedMemManager.h 2022-06-09 17:17:04.775008085 +0200
@@ -27,7 +27,7 @@ class GMPSharedMem {
// returned to the parent pool (which is not included). If more than
// this are needed, we presume the client has either crashed or hung
@ -12,19 +12,20 @@ diff -up firefox-101.0.1/dom/media/gmp/GMPSharedMemManager.h.1663844 firefox-101
for (size_t i = 0; i < sizeof(mGmpAllocated) / sizeof(mGmpAllocated[0]);
diff -up firefox-101.0.1/dom/media/platforms/agnostic/gmp/GMPDecoderModule.cpp.1663844 firefox-101.0.1/dom/media/platforms/agnostic/gmp/GMPDecoderModule.cpp
--- firefox-101.0.1/dom/media/platforms/agnostic/gmp/GMPDecoderModule.cpp.1663844 2022-06-08 16:10:21.000000000 +0200
+++ firefox-101.0.1/dom/media/platforms/agnostic/gmp/GMPDecoderModule.cpp 2022-06-09 17:14:51.310699618 +0200
@@ -67,7 +67,7 @@ media::DecodeSupportSet GMPDecoderModule
nsCString api = nsLiteralCString(CHROMIUM_CDM_API);
+++ firefox-101.0.1/dom/media/platforms/agnostic/gmp/GMPDecoderModule.cpp 2022-06-09 20:31:25.120035588 +0200
@@ -84,6 +84,9 @@ media::DecodeSupportSet GMPDecoderModule
media::DecodeSupportSet GMPDecoderModule::SupportsMimeType(
const nsACString& aMimeType, DecoderDoctorDiagnostics* aDiagnostics) const {
+ if (MP4Decoder::IsH264(aMimeType)) {
+ return media::DecodeSupport::SoftwareDecode;
+ }
return media::DecodeSupport::Unsupported;
}
if (MP4Decoder::IsH264(aMimeType)) {
- isSupported = HaveGMPFor(api, {"h264"_ns, aGMP.value()});
+ isSupported = true;
} else if (VPXDecoder::IsVP9(aMimeType)) {
isSupported = HaveGMPFor(api, {"vp9"_ns, aGMP.value()});
} else if (VPXDecoder::IsVP8(aMimeType)) {
diff -up firefox-101.0.1/dom/media/platforms/agnostic/gmp/GMPVideoDecoder.cpp.1663844 firefox-101.0.1/dom/media/platforms/agnostic/gmp/GMPVideoDecoder.cpp
--- firefox-101.0.1/dom/media/platforms/agnostic/gmp/GMPVideoDecoder.cpp.1663844 2022-06-08 16:10:21.000000000 +0200
+++ firefox-101.0.1/dom/media/platforms/agnostic/gmp/GMPVideoDecoder.cpp 2022-06-09 16:45:32.341742564 +0200
+++ firefox-101.0.1/dom/media/platforms/agnostic/gmp/GMPVideoDecoder.cpp 2022-06-09 17:17:04.776008117 +0200
@@ -70,6 +70,8 @@ void GMPVideoDecoder::Decoded(GMPVideoi4
RefPtr<GMPVideoDecoder> self = this;
if (v) {