From 67f21095446a1a5abaa551dc6f666843b46f7bae Mon Sep 17 00:00:00 2001 From: Jeremy Leconte Date: Thu, 20 Apr 2023 08:41:47 +0000 Subject: [PATCH] Revert "For AV1, disable error resilience on upper temporal layers. Error resilience is no longer required for upper temporal layers. Disabling error resilience on the upper layers leads to a ~2% PSNR BD-rate gain." This reverts commit 2080dacfb7946daf79ecd3f69efbd0c9e08b9be2. Reason for revert: This CL is causing a lot of flakiness on iOS bots https://ci.chromium.org/p/webrtc/builders/ci/iOS%20Debug%20%28simulator%29 Original change's description: > For AV1, disable error resilience on upper temporal layers. Error resilience is no longer required for upper temporal layers. Disabling error resilience on the upper layers leads to a ~2% PSNR BD-rate gain. > > Bug: webrtc:15106 > Change-Id: Id92d51defbd26c1a77e3c9fe19607e9db4a3e7c1 > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/302001 > Reviewed-by: Marco Paniconi > Commit-Queue: Michael Horowitz > Cr-Commit-Position: refs/heads/main@{#39900} Bug: webrtc:15106 Change-Id: I24515280113ed6681c9766026ec24d689035c031 No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/301983 Bot-Commit: rubber-stamper@appspot.gserviceaccount.com Reviewed-by: Mirko Bonadei Commit-Queue: Jeremy Leconte Owners-Override: Jeremy Leconte Cr-Commit-Position: refs/heads/main@{#39903} --- modules/video_coding/codecs/av1/libaom_av1_encoder.cc | 3 +++ 1 file changed, 3 insertions(+) diff --git a/modules/video_coding/codecs/av1/libaom_av1_encoder.cc b/modules/video_coding/codecs/av1/libaom_av1_encoder.cc index fe7861c867..b16d4b2401 100644 --- a/modules/video_coding/codecs/av1/libaom_av1_encoder.cc +++ b/modules/video_coding/codecs/av1/libaom_av1_encoder.cc @@ -643,6 +643,9 @@ int32_t LibaomAv1Encoder::Encode( if (SvcEnabled()) { SetSvcLayerId(*layer_frame); SetSvcRefFrameConfig(*layer_frame); + + SET_ENCODER_PARAM_OR_RETURN_ERROR(AV1E_SET_ERROR_RESILIENT_MODE, + layer_frame->TemporalId() > 0 ? 1 : 0); } // Encode a frame. The presentation timestamp `pts` should not use real