Lines Matching refs:rps
48 H265eReferencePictureSet * rps = (H265eReferencePictureSet*)&slice->m_localRPS; in calc_ref_pic_set_idxl0() local
51 RK_S32 poc_idx = rps->m_RealPoc[ref_idx]; in calc_ref_pic_set_idxl0()
57 for (i = rps->num_negative_pic + rps->num_positive_pic + rps->num_long_term_pic - 1; in calc_ref_pic_set_idxl0()
58 i > rps->num_negative_pic + rps->num_positive_pic - 1; i--) { in calc_ref_pic_set_idxl0()
59 if (rps->m_used[i]) { in calc_ref_pic_set_idxl0()
60 refPic = get_lt_ref_pic(frame_list, slice, rps->m_RealPoc[i], rps->check_lt_msb[i]); in calc_ref_pic_set_idxl0()
69 …RpsList->m_RefPicListModification->m_RefPicSetIdxL0[0] = rps->m_numberOfPictures - rps->num_long_t… in calc_ref_pic_set_idxl0()
266 void sort_delta_poc(H265eReferencePictureSet *rps) in sort_delta_poc() argument
270 for (j = 1; j < rps->m_numberOfPictures; j++) { in sort_delta_poc()
271 RK_S32 deltaPOC = rps->delta_poc[j]; in sort_delta_poc()
272 RK_U32 used = rps->m_used[j]; in sort_delta_poc()
273 RK_U32 refed = rps->m_ref[j]; in sort_delta_poc()
276 int temp = rps->delta_poc[k]; in sort_delta_poc()
278 rps->delta_poc[k + 1] = temp; in sort_delta_poc()
279 rps->m_used[k + 1] = rps->m_used[k]; in sort_delta_poc()
280 rps->m_ref[k + 1] = rps->m_ref[k]; in sort_delta_poc()
281 rps->delta_poc[k] = deltaPOC; in sort_delta_poc()
282 rps->m_used[k] = used; in sort_delta_poc()
283 rps->m_ref[k] = refed; in sort_delta_poc()
289 RK_S32 numNegPics = rps->num_negative_pic; in sort_delta_poc()
291 RK_S32 deltaPOC = rps->delta_poc[j]; in sort_delta_poc()
292 RK_U32 used = rps->m_used[j]; in sort_delta_poc()
293 RK_U32 refed = rps->m_ref[j]; in sort_delta_poc()
294 rps->delta_poc[j] = rps->delta_poc[k]; in sort_delta_poc()
295 rps->m_used[j] = rps->m_used[k]; in sort_delta_poc()
296 rps->m_ref[j] = rps->m_ref[k]; in sort_delta_poc()
297 rps->delta_poc[k] = deltaPOC; in sort_delta_poc()
298 rps->m_used[k] = used; in sort_delta_poc()
299 rps->m_ref[k] = refed; in sort_delta_poc()
303 void h265e_dpb_apply_rps(H265eDpb *dpb, H265eReferencePictureSet *rps, int curPoc) in h265e_dpb_apply_rps() argument
321 for (i = 0; i < rps->num_positive_pic + rps->num_negative_pic; i++) { in h265e_dpb_apply_rps()
322 …dbg_dpb("outPic->slice->poc %d,curPoc %d dealt %d", outPic->slice->poc, curPoc, rps->delta_poc[i]); in h265e_dpb_apply_rps()
323 if (!outPic->is_long_term && outPic->slice->poc == curPoc + rps->delta_poc[i]) { in h265e_dpb_apply_rps()
324 outPic->used_by_cur = (rps->m_used[i] == 1); in h265e_dpb_apply_rps()
329 for (; i < rps->m_numberOfPictures; i++) { in h265e_dpb_apply_rps()
330 if (rps->check_lt_msb[i] == 0) { in h265e_dpb_apply_rps()
331 if (outPic->is_long_term && (outPic->slice->poc == rps->m_RealPoc[i])) { in h265e_dpb_apply_rps()
332 outPic->used_by_cur = (rps->m_used[i] == 1); in h265e_dpb_apply_rps()
335 if (outPic->is_long_term && (outPic->slice->poc == rps->m_RealPoc[i])) { in h265e_dpb_apply_rps()
336 outPic->used_by_cur = (rps->m_used[i] == 1); in h265e_dpb_apply_rps()
402 H265eReferencePictureSet *rps = slice->m_rps; in h265e_dpb_arrange_lt_rps() local
404 RK_S32 offset = rps->num_negative_pic + rps->num_positive_pic; in h265e_dpb_arrange_lt_rps()
419 if (!rps->num_long_term_pic) { in h265e_dpb_arrange_lt_rps()
431 for (i = rps->m_numberOfPictures - 1; i >= offset; i--, ctr++) { in h265e_dpb_arrange_lt_rps()
432 longtermPicsPoc[ctr] = rps->poc[i]; // LTRP POC in h265e_dpb_arrange_lt_rps()
433 longtermPicsRealPoc[ctr] = rps->m_RealPoc[i]; in h265e_dpb_arrange_lt_rps()
439 numLongPics = rps->num_long_term_pic; in h265e_dpb_arrange_lt_rps()
464 tempArray[i] = rps->m_used[indices[i]] ? 1 : 0; in h265e_dpb_arrange_lt_rps()
473 for (i = rps->m_numberOfPictures - 1; i >= offset; i--, ctr++) { in h265e_dpb_arrange_lt_rps()
474 rps->poc[i] = longtermPicsPoc[ctr]; in h265e_dpb_arrange_lt_rps()
475 rps->delta_poc[i] = -slice->poc + longtermPicsRealPoc[ctr]; in h265e_dpb_arrange_lt_rps()
477 rps->m_used[i] = tempArray[ctr]; in h265e_dpb_arrange_lt_rps()
478 rps->m_pocLSBLT[i] = longtermPicsLSB[ctr]; in h265e_dpb_arrange_lt_rps()
479 …rps->m_deltaPOCMSBCycleLT[i] = (currMSB - (longtermPicsPoc[ctr] - longtermPicsLSB[ctr])) / maxPicO… in h265e_dpb_arrange_lt_rps()
480 rps->m_deltaPocMSBPresentFlag[i] = mSBPresentFlag[ctr]; in h265e_dpb_arrange_lt_rps()
482 mpp_assert(rps->m_deltaPOCMSBCycleLT[i] >= 0); // Non-negative value in h265e_dpb_arrange_lt_rps()
485 for (i = rps->m_numberOfPictures - 1, ctr = 1; i >= offset; i--, ctr++) { in h265e_dpb_arrange_lt_rps()
486 for (j = rps->m_numberOfPictures - 1 - ctr; j >= offset; j--) { in h265e_dpb_arrange_lt_rps()
489 …mpp_assert(rps->m_RealPoc[i] != rps->m_RealPoc[j]); // If assert fails, LTRP entry repeated in RPS… in h265e_dpb_arrange_lt_rps()
591 H265eReferencePictureSet * rps = (H265eReferencePictureSet*)&slice->m_localRPS; in h265e_dpb_cpb2rps() local
598 memset(rps, 0, sizeof(H265eReferencePictureSet)); in h265e_dpb_cpb2rps()
600 rps->delta_poc[idx_rps] = 0; in h265e_dpb_cpb2rps()
601 rps->m_used[idx_rps] = 0; in h265e_dpb_cpb2rps()
602 rps->m_ref[idx_rps] = 0; in h265e_dpb_cpb2rps()
605 memset(rps->delta_poc, 0, MAX_REFS * sizeof(int)); in h265e_dpb_cpb2rps()
626 rps->delta_poc[idx_rps] = p->poc - curPoc; in h265e_dpb_cpb2rps()
627 rps->m_used[idx_rps] = 1; in h265e_dpb_cpb2rps()
631 frm, rps->delta_poc[idx_rps - 1]); in h265e_dpb_cpb2rps()
644 sort_delta_poc(rps); in h265e_dpb_cpb2rps()
647 rps->m_interRPSPrediction = 0; in h265e_dpb_cpb2rps()
648 rps->num_long_term_pic = 0; in h265e_dpb_cpb2rps()
649 rps->num_negative_pic = 0; in h265e_dpb_cpb2rps()
650 rps->num_positive_pic = 0; in h265e_dpb_cpb2rps()
651 rps->m_numberOfPictures = 0; in h265e_dpb_cpb2rps()
662 rps->m_ref[i] = (rps->delta_poc[i] == ref_dealt_poc); in h265e_dpb_cpb2rps()
669 rps->poc[i + st_size] = nLongTermRefPicPoc[i]; in h265e_dpb_cpb2rps()
670 rps->m_RealPoc[i + st_size] = nLongTermRefPicRealPoc[i]; in h265e_dpb_cpb2rps()
671 rps->m_used[i + st_size] = 1; in h265e_dpb_cpb2rps()
672 rps->delta_poc[i + st_size] = nLongTermDealtPoc[i]; in h265e_dpb_cpb2rps()
673 rps->check_lt_msb[i + st_size] = isMsbValid[i]; in h265e_dpb_cpb2rps()
674 if (cpb->refr.seq_idx == rps->poc[i + st_size]) in h265e_dpb_cpb2rps()
675 rps->m_ref[i + st_size] = 1; in h265e_dpb_cpb2rps()
677 rps->m_ref[i + st_size] = 0; in h265e_dpb_cpb2rps()
681 rps->num_negative_pic = st_size; in h265e_dpb_cpb2rps()
682 rps->num_positive_pic = 0; in h265e_dpb_cpb2rps()
683 rps->num_long_term_pic = lt_size; in h265e_dpb_cpb2rps()
684 rps->m_numberOfPictures = st_size + lt_size; in h265e_dpb_cpb2rps()
685 slice->m_rps = rps; in h265e_dpb_cpb2rps()