Update the reference priority order to make it fully match libaom
Make the reference frame list order match the native libaom decisions.
BUG=b/241257063
Change-Id: I729b413f222fed44cef083b35c3cbcb8143785a8
diff --git a/av1/encoder/encode_strategy.c b/av1/encoder/encode_strategy.c
index e95f2e3..cbb872a 100644
--- a/av1/encoder/encode_strategy.c
+++ b/av1/encoder/encode_strategy.c
@@ -977,11 +977,13 @@
if (cpi->use_ducky_encode &&
cpi->ducky_encode_info.frame_info.gop_mode == DUCKY_ENCODE_GOP_MODE_RCL) {
for (int rf = LAST_FRAME; rf < REF_FRAMES; ++rf) {
+ for (int i = 0; i < REF_FRAMES; ++i) remapped_ref_idx[i] = 0;
if (cpi->ppi->gf_group.ref_frame_list[gf_index][rf] != INVALID_IDX) {
remapped_ref_idx[rf - LAST_FRAME] =
cpi->ppi->gf_group.ref_frame_list[gf_index][rf];
}
}
+ return;
}
#endif // !CONFIG_REALTIME_ONLY
diff --git a/av1/reference_manager.cc b/av1/reference_manager.cc
index 456cec9..7ebaf0f 100644
--- a/av1/reference_manager.cc
+++ b/av1/reference_manager.cc
@@ -126,8 +126,8 @@
const std::vector<ReferenceName> forward_name_list{
ReferenceName::kAltrefFrame, ReferenceName::kBwdrefFrame,
ReferenceName::kAltref2Frame, ReferenceName::kGoldenFrame,
- ReferenceName::kLastFrame, ReferenceName::kLast2Frame,
- ReferenceName::kLast3Frame
+ ReferenceName::kLast3Frame, ReferenceName::kLast2Frame,
+ ReferenceName::kLastFrame
};
const std::vector<ReferenceName> backward_name_list{
ReferenceName::kGoldenFrame, ReferenceName::kLastFrame,