Commit 0f197b2ccf for aom
commit 0f197b2ccf09cf14b0f86e45d16dc95bed3c2ac8
Author: Satheesh Kumar <satheesh.kumar@ittiam.com>
Date: Thu Jun 11 13:27:16 2026 +0530
Prune one-sided compound at speed 0
This patch extends the pruning of one-sided compound reference frames
when not all the reference frames are one-sided to speed 0.
The logic is enabled via the speed feature `selective_ref_frame=1`.
Encoder performance results averaged over all resolutions are as
follows:
Instruction Count BD-Rate Loss(%)
cpu Reduction(%) avg.psnr ovr.psnr ssim vmaf vmaf_neg
0 15.721 0.1080 0.1134 0.0761 0.0467 0.0452
STATS_CHANGED for speed = 0
Change-Id: I89955869fd5cdf8b097c5a1f161fed7f04f0f155
diff --git a/av1/encoder/encodeframe.c b/av1/encoder/encodeframe.c
index 1ccff9e631..9d2292c5e3 100644
--- a/av1/encoder/encodeframe.c
+++ b/av1/encoder/encodeframe.c
@@ -1807,7 +1807,7 @@ static inline void setup_prune_ref_frame_mask(AV1_COMP *cpi) {
// Disable all compound references
cpi->prune_ref_frame_mask = (1 << MODE_CTX_REF_FRAMES) - (1 << REF_FRAMES);
} else if (!cpi->sf.rt_sf.use_nonrd_pick_mode &&
- cpi->sf.inter_sf.selective_ref_frame >= 2) {
+ cpi->sf.inter_sf.selective_ref_frame >= 1) {
AV1_COMMON *const cm = &cpi->common;
const int cur_frame_display_order_hint =
cm->current_frame.display_order_hint;