commit a7fa8e2b82913810ce9993928fa7e49d29aa54f8 parent fdf35bbab5f69b170a762a0fc6d9ee85b87402dc Author: Michael Froman <mfroman@mozilla.com> Date: Wed, 15 Oct 2025 11:30:49 -0500 Bug 1993083 - Vendor libwebrtc from f7ecdbe669 Upstream commit: https://webrtc.googlesource.com/src/+/f7ecdbe669311fdf2211ef440ecb33943e7ed4c8 av1: use AOM_FRAME_IS_KEY instead of AOM_EFLAG_FORCE_KF to determine if a frame is a key frame. AOM_EFLAG_FORCE_KF is a flag passed to the encoder and should not be compared with the output aom_codec_frame_flags_t AOM_FRAME_IS_KEY even though both have the same value. drive-by bugfix from the bug linked below Bug: webrtc:434975748 Change-Id: I03a8ab385e7764d1064a51029c90d7ce6f54b7e0 Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/402582 Reviewed-by: Danil Chapovalov <danilchap@webrtc.org> Reviewed-by: Harald Alvestrand <hta@webrtc.org> Commit-Queue: Philipp Hancke <phancke@meta.com> Cr-Commit-Position: refs/heads/main@{#45251} Diffstat:
3 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/third_party/libwebrtc/README.mozilla.last-vendor b/third_party/libwebrtc/README.mozilla.last-vendor @@ -1,4 +1,4 @@ # ./mach python dom/media/webrtc/third_party_build/vendor-libwebrtc.py --from-local /home/mfroman/mozilla/elm/.moz-fast-forward/moz-libwebrtc --commit mozpatches libwebrtc -libwebrtc updated from /home/mfroman/mozilla/elm/.moz-fast-forward/moz-libwebrtc commit mozpatches on 2025-10-15T16:29:38.497163+00:00. +libwebrtc updated from /home/mfroman/mozilla/elm/.moz-fast-forward/moz-libwebrtc commit mozpatches on 2025-10-15T16:30:40.164868+00:00. # base of lastest vendoring -c0faa7c7fc +f7ecdbe669 diff --git a/third_party/libwebrtc/api/video_codecs/libaom_av1_encoder_factory.cc b/third_party/libwebrtc/api/video_codecs/libaom_av1_encoder_factory.cc @@ -781,7 +781,7 @@ void LibaomAv1Encoder::Encode(scoped_refptr<VideoFrameBuffer> frame_buffer, aom_codec_get_cx_data(&ctx_, &iter)) { if (pkt->kind == AOM_CODEC_CX_FRAME_PKT && pkt->data.frame.sz > 0) { SET_OR_RETURN(AOME_GET_LAST_QUANTIZER_64, &result.encoded_qp); - result.frame_type = pkt->data.frame.flags & AOM_EFLAG_FORCE_KF + result.frame_type = pkt->data.frame.flags & AOM_FRAME_IS_KEY ? FrameType::kKeyframe : FrameType::kDeltaFrame; ArrayView<uint8_t> output_buffer = diff --git a/third_party/libwebrtc/modules/video_coding/codecs/av1/libaom_av1_encoder.cc b/third_party/libwebrtc/modules/video_coding/codecs/av1/libaom_av1_encoder.cc @@ -784,7 +784,7 @@ int32_t LibaomAv1Encoder::Encode( /*data=*/static_cast<const uint8_t*>(pkt->data.frame.buf), /*size=*/pkt->data.frame.sz)); - if ((pkt->data.frame.flags & AOM_EFLAG_FORCE_KF) != 0) { + if ((pkt->data.frame.flags & AOM_FRAME_IS_KEY) != 0) { layer_frame->Keyframe(); }