Fix to is_frame_droppable for external flags
Account for external refresh flags in
is_frame_droppable() function.
Change-Id: I63906f82527a8bf64dc05a24094f483cfb00baa0
diff --git a/av1/encoder/encode_strategy.c b/av1/encoder/encode_strategy.c
index e4ac327..00e8469 100644
--- a/av1/encoder/encode_strategy.c
+++ b/av1/encoder/encode_strategy.c
@@ -158,9 +158,15 @@
}
static INLINE int is_frame_droppable(const AV1_COMP *const cpi) {
- return !(cpi->refresh_alt_ref_frame || cpi->refresh_alt2_ref_frame ||
- cpi->refresh_bwd_ref_frame || cpi->refresh_golden_frame ||
- cpi->refresh_last_frame);
+ if (cpi->ext_refresh_frame_flags_pending)
+ return !(cpi->ext_refresh_alt_ref_frame ||
+ cpi->ext_refresh_alt2_ref_frame ||
+ cpi->ext_refresh_bwd_ref_frame || cpi->ext_refresh_golden_frame ||
+ cpi->ext_refresh_last_frame);
+ else
+ return !(cpi->refresh_alt_ref_frame || cpi->refresh_alt2_ref_frame ||
+ cpi->refresh_bwd_ref_frame || cpi->refresh_golden_frame ||
+ cpi->refresh_last_frame);
}
static INLINE void update_frames_till_gf_update(AV1_COMP *cpi) {