Lines Matching refs:frm
39 H265eDpbFrm *frm = &dpb->frame_list[i]; in h265e_dpb_dump_frm() local
41 pos += snprintf(buf + pos, sizeof(buf) - 1 - pos, "%04x ", frm->on_used); in h265e_dpb_dump_frm()
120 MPP_RET h265e_dpb_init_curr(H265eDpb *dpb, H265eDpbFrm *frm) in h265e_dpb_init_curr() argument
123 mpp_assert(!frm->on_used); in h265e_dpb_init_curr()
125 frm->dpb = dpb; in h265e_dpb_init_curr()
127 if (!frm->slice) { in h265e_dpb_init_curr()
128 frm->slice = mpp_calloc(H265eSlice, 1); in h265e_dpb_init_curr()
131 frm->inited = 1; in h265e_dpb_init_curr()
132 frm->dpb_used = 1; in h265e_dpb_init_curr()
133 frm->seq_idx = dpb->seq_idx; in h265e_dpb_init_curr()
158 MPP_RET h265e_dpb_frm_deinit(H265eDpbFrm *frm) in h265e_dpb_frm_deinit() argument
160 MPP_FREE(frm->slice); in h265e_dpb_frm_deinit()
161 frm->inited = 0; in h265e_dpb_frm_deinit()
496 static H265eDpbFrm *h265e_find_cpb_in_dpb(H265eDpbFrm *frms, RK_S32 cnt, EncFrmStatus *frm) in h265e_find_cpb_in_dpb() argument
498 RK_S32 seq_idx = frm->seq_idx; in h265e_find_cpb_in_dpb()
501 if (!frm->valid) in h265e_find_cpb_in_dpb()
504 h265e_dbg_dpb("frm %d start finding slot \n", frm->seq_idx); in h265e_find_cpb_in_dpb()
521 static H265eDpbFrm *h265e_find_cpb_frame(H265eDpbFrm *frms, RK_S32 cnt, EncFrmStatus *frm) in h265e_find_cpb_frame() argument
523 RK_S32 seq_idx = frm->seq_idx; in h265e_find_cpb_frame()
526 if (!frm->valid) in h265e_find_cpb_frame()
529 h265e_dbg_dpb("frm %d start finding slot \n", frm->seq_idx); in h265e_find_cpb_frame()
540 if (frm->save_pass1) in h265e_find_cpb_frame()
542 mpp_assert(p->is_non_ref == frm->is_non_ref); in h265e_find_cpb_frame()
543 mpp_assert(p->is_lt_ref == frm->is_lt_ref); in h265e_find_cpb_frame()
544 mpp_assert(p->lt_idx == frm->lt_idx); in h265e_find_cpb_frame()
545 mpp_assert(p->temporal_id == frm->temporal_id); in h265e_find_cpb_frame()
555 static MPP_RET h265e_check_frame_cpb(H265eDpbFrm *frm, RK_S32 cnt, EncFrmStatus *frms) in h265e_check_frame_cpb() argument
557 EncFrmStatus *p = &frm->status; in h265e_check_frame_cpb()
612 EncFrmStatus *frm = &cpb->init[i]; in h265e_dpb_cpb2rps() local
614 if (!frm->valid) in h265e_dpb_cpb2rps()
617 mpp_assert(!frm->is_non_ref); in h265e_dpb_cpb2rps()
620 i, frm->seq_idx, frm->valid, frm->is_non_ref, frm->is_lt_ref); in h265e_dpb_cpb2rps()
622 p = h265e_find_cpb_frame(dpb->frame_list, MAX_REFS, frm); in h265e_dpb_cpb2rps()
624 if (!frm->is_lt_ref) { in h265e_dpb_cpb2rps()
625 p->status.val = frm->val; in h265e_dpb_cpb2rps()
631 frm, rps->delta_poc[idx_rps - 1]); in h265e_dpb_cpb2rps()
637 p->status.val = frm->val; in h265e_dpb_cpb2rps()
639 frm, nLongTermDealtPoc[lt_size]); in h265e_dpb_cpb2rps()
694 MPP_RET h265e_pskip_ref_check(H265eDpb *dpb, EncCpbStatus *cpb, H265eDpbFrm *frm) in h265e_pskip_ref_check() argument
700 …if ((cpb->curr.force_pskip_is_ref) && (frm->slot_idx == dpb->curr->slice->m_refPicList[0][0]->slot… in h265e_pskip_ref_check()
701 …bg_dpb("hold refr buf as skip frm recon buf, poc %d slot idx %d.", frm->slice->poc, frm->slot_idx); in h265e_pskip_ref_check()
705 …if ((cpb->refr.force_pskip_is_ref) && (frm->slot_idx == dpb->curr->slice->m_refPicList[0][0]->prev… in h265e_pskip_ref_check()
706 …bg_dpb("hold refr buf as skip frm recon buf, poc %d slot idx %d.", frm->slice->poc, frm->slot_idx); in h265e_pskip_ref_check()
721 H265eDpbFrm *frm = h265e_find_cpb_frame(dpb->frame_list, MAX_REFS, &cpb->curr); in h265e_dpb_free_unsed() local
722 if (frm) { in h265e_dpb_free_unsed()
723 h265e_dbg_dpb("free curr unreference buf poc %d", frm->slice->poc); in h265e_dpb_free_unsed()
724 frm->is_long_term = 0; in h265e_dpb_free_unsed()
725 frm->used_by_cur = 0; in h265e_dpb_free_unsed()
726 frm->dpb_used = 0; in h265e_dpb_free_unsed()
727 frm->slice->is_referenced = 0; in h265e_dpb_free_unsed()
732 H265eDpbFrm *frm = &dpb->frame_list[i]; in h265e_dpb_free_unsed() local
733 if (!frm->dpb_used) in h265e_dpb_free_unsed()
735 if (h265e_check_frame_cpb(frm, MAX_REFS, &cpb->final[0])) { in h265e_dpb_free_unsed()
736 if (!h265e_pskip_ref_check(dpb, cpb, frm)) { in h265e_dpb_free_unsed()
737 h265e_dbg_dpb("cpb final unreference buf poc %d", frm->slice->poc); in h265e_dpb_free_unsed()
738 frm->is_long_term = 0; in h265e_dpb_free_unsed()
739 frm->used_by_cur = 0; in h265e_dpb_free_unsed()
740 frm->dpb_used = 0; in h265e_dpb_free_unsed()
741 frm->slice->is_referenced = 0; in h265e_dpb_free_unsed()
775 EncFrmStatus *frm = &cpb->init[i]; in h265e_dpb_proc_cpb() local
777 if (!frm->valid) in h265e_dpb_proc_cpb()
780 mpp_assert(!frm->is_non_ref); in h265e_dpb_proc_cpb()
783 i, frm->seq_idx, frm->valid, frm->is_non_ref, frm->is_lt_ref); in h265e_dpb_proc_cpb()
785 p = h265e_find_cpb_in_dpb(dpb->frame_list, MAX_REFS, frm); in h265e_dpb_proc_cpb()
788 p->status.val = frm->val; in h265e_dpb_proc_cpb()
933 H265eDpbFrm *frm = &dpb->frame_list[slot_idx]; in h265e_dpb_hal_start() local
935 frm->hal_used++; in h265e_dpb_hal_start()
942 H265eDpbFrm *frm = &dpb->frame_list[slot_idx]; in h265e_dpb_hal_end() local
944 frm->hal_used--; in h265e_dpb_hal_end()