}
}
- if (sps->flags.long_term_ref_pics_present_flag) {
- unsigned num_lt_sps = 0;
-
- if (sps->num_long_term_ref_pics_sps > 0)
- num_lt_sps = vl_rbsp_ue(&rbsp);
-
- unsigned num_lt_pics = vl_rbsp_ue(&rbsp);
- unsigned num_refs = num_lt_pics + num_lt_sps;
-
- for (unsigned i = 0; i < num_refs; i++) {
- if (i < num_lt_sps) {
- if (sps->num_long_term_ref_pics_sps > 1)
- /* lt_idx_sps */
- vl_rbsp_u(&rbsp,
- util_logbase2_ceil(sps->num_long_term_ref_pics_sps));
- } else {
- /* poc_lsb_lt */
- vl_rbsp_u(&rbsp, sps->log2_max_pic_order_cnt_lsb_minus4 + 4);
- /* used_by_curr_pic_lt_flag */
- vl_rbsp_u(&rbsp, 1);
- }
-
- /* poc_msb_present */
- if (vl_rbsp_u(&rbsp, 1)) {
- /* delta_poc_msb_cycle_lt */
- vl_rbsp_ue(&rbsp);
- }
- }
- }
} else {
unsigned num_st_rps = sps->num_short_term_ref_pic_sets;
vl_rbsp_u(&rbsp, numbits);
}
+ if (sps->flags.long_term_ref_pics_present_flag) {
+ unsigned num_lt_sps = 0;
+
+ if (sps->num_long_term_ref_pics_sps > 0)
+ num_lt_sps = vl_rbsp_ue(&rbsp);
+
+ unsigned num_lt_pics = vl_rbsp_ue(&rbsp);
+ unsigned num_refs = num_lt_pics + num_lt_sps;
+
+ for (unsigned i = 0; i < num_refs; i++) {
+ if (i < num_lt_sps) {
+ if (sps->num_long_term_ref_pics_sps > 1)
+ /* lt_idx_sps */
+ vl_rbsp_u(&rbsp,
+ util_logbase2_ceil(sps->num_long_term_ref_pics_sps));
+ } else {
+ /* poc_lsb_lt */
+ vl_rbsp_u(&rbsp, sps->log2_max_pic_order_cnt_lsb_minus4 + 4);
+ /* used_by_curr_pic_lt_flag */
+ vl_rbsp_u(&rbsp, 1);
+ }
+
+ /* poc_msb_present */
+ if (vl_rbsp_u(&rbsp, 1)) {
+ /* delta_poc_msb_cycle_lt */
+ vl_rbsp_ue(&rbsp);
+ }
+ }
+ }
if (sps->flags.sps_temporal_mvp_enabled_flag)
params->temporal_mvp_enable = vl_rbsp_u(&rbsp, 1);