From 2ed6fc2217023a6d019411f5c6836d6b62b03287 Mon Sep 17 00:00:00 2001 From: Danil Chapovalov Date: Wed, 3 Aug 2022 16:27:27 +0200 Subject: [PATCH] In Vp9 encoder wrapper force key frame on svc controller request MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Bug: chromium:1349761 Change-Id: I865a251ea87b0946ff0247cba5c3bf1e098dffab Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/270482 Reviewed-by: Åsa Persson Commit-Queue: Danil Chapovalov Cr-Commit-Position: refs/heads/main@{#37684} --- .../video_coding/codecs/vp9/libvpx_vp9_encoder.cc | 3 +++ .../a1c75436e1872a23391d58316d88c45da0fb7682 | Bin 0 -> 7 bytes 2 files changed, 3 insertions(+) create mode 100644 test/fuzzers/corpora/vp9-encoder-references-corpus/a1c75436e1872a23391d58316d88c45da0fb7682 diff --git a/modules/video_coding/codecs/vp9/libvpx_vp9_encoder.cc b/modules/video_coding/codecs/vp9/libvpx_vp9_encoder.cc index 54585082db..add3d5501e 100644 --- a/modules/video_coding/codecs/vp9/libvpx_vp9_encoder.cc +++ b/modules/video_coding/codecs/vp9/libvpx_vp9_encoder.cc @@ -1004,6 +1004,9 @@ int LibvpxVp9Encoder::Encode(const VideoFrame& input_image, if (layer_frames_.empty()) { return WEBRTC_VIDEO_CODEC_ERROR; } + if (layer_frames_.front().IsKeyframe()) { + force_key_frame_ = true; + } } vpx_svc_layer_id_t layer_id = {0}; diff --git a/test/fuzzers/corpora/vp9-encoder-references-corpus/a1c75436e1872a23391d58316d88c45da0fb7682 b/test/fuzzers/corpora/vp9-encoder-references-corpus/a1c75436e1872a23391d58316d88c45da0fb7682 new file mode 100644 index 0000000000000000000000000000000000000000..fc538ac83f3f349f7b94d5092eb16d48b841cbe5 GIT binary patch literal 7 OcmeB~#h`2O@C5)1WdltB literal 0 HcmV?d00001