Fix frame parallel encode failure Bug: 487328945 Change-Id: I1444cc22d1d0d4bb6b36c9b74659b06f6ae42a75
diff --git a/av1/encoder/rdopt.c b/av1/encoder/rdopt.c index dde46f6..0905b2b 100644 --- a/av1/encoder/rdopt.c +++ b/av1/encoder/rdopt.c
@@ -6257,6 +6257,13 @@ txfm_info->skip_txfm = 0; sf_args.num_single_modes_processed += is_single_pred; + + const bool optimized_init = !cpi->oxcf.fp_mt; + if (!optimized_init) { + init_mbmi(mbmi, this_mode, ref_frames, cm); + set_ref_ptrs(cm, xd, ref_frame, second_ref_frame); + } + #if CONFIG_COLLECT_COMPONENT_TIMING start_timing(cpi, skip_inter_mode_time); #endif @@ -6268,8 +6275,10 @@ #endif if (is_skip_inter_mode) continue; - init_mbmi(mbmi, this_mode, ref_frames, cm); - set_ref_ptrs(cm, xd, ref_frame, second_ref_frame); + if (optimized_init) { + init_mbmi(mbmi, this_mode, ref_frames, cm); + set_ref_ptrs(cm, xd, ref_frame, second_ref_frame); + } // Select prediction reference frames. for (i = 0; i < num_planes; i++) {