Home
last modified time | relevance | path

Searched refs:dpb (Results 1 – 25 of 25) sorted by relevance

/rockchip-linux_mpp/mpp/codec/enc/h264/
H A Dh264e_dpb.c28 void h264e_dpb_dump_usage(H264eDpb *dpb, const char *fmt) in h264e_dpb_dump_usage() argument
34 pos += snprintf(buf, sizeof(buf) - 1, "total %2d ", dpb->total_cnt); in h264e_dpb_dump_usage()
36 for (i = 0; i < dpb->total_cnt; i++) { in h264e_dpb_dump_usage()
37 H264eDpbFrm *frm = &dpb->frames[i]; in h264e_dpb_dump_usage()
44 void h264e_dpb_dump_frm(H264eDpb *dpb, const char *caller, RK_S32 line) in h264e_dpb_dump_frm() argument
50 mpp_log_f("dpb %p total count %d size %d\n", dpb, dpb->total_cnt, dpb->dpb_size); in h264e_dpb_dump_frm()
54 for (i = 0; i < dpb->total_cnt; i++) { in h264e_dpb_dump_frm()
55 H264eDpbFrm *frm = &dpb->frames[i]; in h264e_dpb_dump_frm()
90 void h264e_dpb_dump_list(H264eDpb *dpb) in h264e_dpb_dump_list() argument
95 dpb->dpb_size, dpb->used_size, dpb->st_size, dpb->lt_size); in h264e_dpb_dump_list()
[all …]
H A Dh264e_dpb.h140 MPP_RET h264e_dpb_init(H264eDpb *dpb, H264eReorderInfo *reorder, H264eMarkingInfo *marking);
141 MPP_RET h264e_dpb_deinit(H264eDpb *dpb);
143 MPP_RET h264e_dpb_setup(H264eDpb *dpb, MppEncCfgSet* cfg, H264eSps *sps);
152 MPP_RET h264e_dpb_proc(H264eDpb *dpb, EncCpbStatus *cpb);
157 MPP_RET h264e_dpb_hal_start(H264eDpb *dpb, RK_S32 slot_idx);
158 MPP_RET h264e_dpb_hal_end(H264eDpb *dpb, RK_S32 slot_idx);
160 void h264e_dpb_check(H264eDpb *dpb, EncCpbStatus *cpb);
162 #define h264e_dpb_dump_frms(dpb) h264e_dpb_dump_frm(dpb, __FUNCTION__, __LINE__) argument
164 void h264e_dpb_dump_frm(H264eDpb *dpb, const char *caller, RK_S32 line);
H A Dh264e_api_v2.c64 H264eDpb dpb; member
250 h264e_dpb_init(&p->dpb, &p->reorder, &p->marking); in h264e_init()
329 if (!p->dpb.total_cnt) in h264e_gen_hdr()
330 h264e_dpb_setup(&p->dpb, p->cfg, &p->sps); in h264e_gen_hdr()
409 MPP_RET h264e_pskip_ref_check(H264eDpb *dpb, H264eFrmInfo *frms) in h264e_pskip_ref_check() argument
416 curr = dpb->curr; in h264e_pskip_ref_check()
417 refr = dpb->refr; in h264e_pskip_ref_check()
422 temp_frm = &dpb->frames[i]; in h264e_pskip_ref_check()
434 temp_frm = &dpb->frames[i]; in h264e_pskip_ref_check()
447 H264eDpb *dpb = &p->dpb; in h264e_proc_dpb() local
[all …]
/rockchip-linux_mpp/mpp/codec/enc/h265/
H A Dh265e_dpb.c29 void h265e_dpb_dump_frm(H265eDpb *dpb, const char *fmt) in h265e_dpb_dump_frm() argument
34 RK_S32 frm_cnt = MPP_ARRAY_ELEMS(dpb->frame_list); in h265e_dpb_dump_frm()
39 H265eDpbFrm *frm = &dpb->frame_list[i]; in h265e_dpb_dump_frm()
46 MPP_RET calc_ref_pic_set_idxl0(H265eDpb *dpb, H265eSlice *slice, RK_S32 ref_idx) in calc_ref_pic_set_idxl0() argument
49 H265eDpbFrm *frame_list = dpb->frame_list; in calc_ref_pic_set_idxl0()
50 H265eRpsList *RpsList = &dpb->RpsList; in calc_ref_pic_set_idxl0()
75 void h265e_dpb_set_ref_list(H265eDpb *dpb, H265eSlice *slice, RK_S32 delta_poc) in h265e_dpb_set_ref_list() argument
80 H265eRpsList *RpsList = &dpb->RpsList; in h265e_dpb_set_ref_list()
112 calc_ref_pic_set_idxl0(dpb, slice, ref_idx); in h265e_dpb_set_ref_list()
120 MPP_RET h265e_dpb_init_curr(H265eDpb *dpb, H265eDpbFrm *frm) in h265e_dpb_init_curr() argument
[all …]
H A Dh265e_dpb.h64 H265eDpb *dpb; member
139 MPP_RET h265e_dpb_init(H265eDpb **dpb);
140 MPP_RET h265e_dpb_deinit(H265eDpb *dpb);
141 MPP_RET h265e_dpb_setup_buf_size(H265eDpb *dpb, RK_U32 size[], RK_U32 count);
142 MPP_RET h265e_dpb_get_curr(H265eDpb *dpb);
143 void h265e_dpb_build_list(H265eDpb *dpb, EncCpbStatus *cpb);
144 void h265e_dpb_proc_cpb(H265eDpb *dpb, EncCpbStatus *cpb);
149 MPP_RET h265e_dpb_hal_start(H265eDpb *dpb, RK_S32 slot_idx);
150 MPP_RET h265e_dpb_hal_end(H265eDpb *dpb, RK_S32 slot_idx);
152 #define h265e_dpb_dump_frms(dpb) h265e_dpb_dump_frm(dpb, __FUNCTION__) argument
[all …]
H A Dh265e_api.c202 h265e_dpb_deinit(p->dpb); in h265e_deinit()
217 if (NULL == p->dpb) in h265e_gen_hdr()
218 h265e_dpb_init(&p->dpb); in h265e_gen_hdr()
303 h265e_dpb_proc_cpb(p->dpb, cpb); in h265e_proc_dpb()
304 h265e_dpb_get_curr(p->dpb); in h265e_proc_dpb()
306 h265e_dpb_build_list(p->dpb, cpb); in h265e_proc_dpb()
308 rc_task->frm = p->dpb->curr->status; in h265e_proc_dpb()
375 p->dpb->curr->prev_ref_idx = syntax->sp.recon_pic.slot_idx; in h265e_proc_enc_skip()
H A Dh265e_slice.c215 H265eSlice *slice = p->dpb->curr->slice; in h265e_slice_init()
216 p->slice = p->dpb->curr->slice; in h265e_slice_init()
236 p->dpb->curr->is_key_frame = 0; in h265e_slice_init()
239 p->dpb->curr->is_key_frame = 1; in h265e_slice_init()
240 p->dpb->curr->status.is_intra = 1; in h265e_slice_init()
241 p->dpb->gop_idx = 0; in h265e_slice_init()
244 p->dpb->curr->status.is_intra = 0; in h265e_slice_init()
247 p->dpb->curr->status.val = curr.val; in h265e_slice_init()
271 slice->poc = p->dpb->curr->seq_idx; in h265e_slice_init()
272 slice->gop_idx = p->dpb->gop_idx; in h265e_slice_init()
[all …]
H A Dh265e_syntax.c355 sp->recon_pic.slot_idx = h->dpb->curr->slot_idx; in fill_ref_parameters()
364 sp->ref_pic.slot_idx = h->dpb->curr->slot_idx; in fill_ref_parameters()
377 syn->dpb = h->dpb; in h265e_syntax_fill()
H A Dh265e_codec.h72 H265eDpb *dpb; member
/rockchip-linux_mpp/mpp/codec/dec/avs/
H A Davsd_parse.c409 set_frame_output(p_dec, p_dec->dpb[1]); in avsd_reset_parameters()
410 set_frame_output(p_dec, p_dec->dpb[0]); in avsd_reset_parameters()
412 set_frame_unref(p_dec, p_dec->dpb[1]); in avsd_reset_parameters()
413 set_frame_unref(p_dec, p_dec->dpb[0]); in avsd_reset_parameters()
417 p_dec->dpb[0] = NULL; in avsd_reset_parameters()
418 p_dec->dpb[1] = NULL; in avsd_reset_parameters()
493 if (p_dec->dpb[0] && p_dec->dpb[0]->slot_idx >= 0 && in avsd_set_dpb()
494 (p_dec->dpb[0]->slot_idx != p_dec->cur->slot_idx)) { in avsd_set_dpb()
495 mpp_buf_slot_set_flag(p_dec->frame_slots, p_dec->dpb[0]->slot_idx, SLOT_HAL_INPUT); in avsd_set_dpb()
497 task->refer[1] = p_dec->dpb[0]->slot_idx; in avsd_set_dpb()
[all …]
H A Davsd_api.c157 set_frame_output(p_dec, p_dec->dpb[1]); in avsd_flush()
158 set_frame_output(p_dec, p_dec->dpb[0]); in avsd_flush()
H A Davsd_parse.h228 AvsdFrame_t *dpb[2]; //!< 2 refer frames or 4 refer field member
/rockchip-linux_mpp/mpp/codec/dec/avs2/
H A Davs2d_dpb.c142 mgr->dpb = mpp_calloc(Avs2dFrame_t*, mgr->dpb_size); in avs2d_dpb_create()
144 mgr->dpb[i] = new_frame(); in avs2d_dpb_create()
145 MEM_CHECK(ret, mgr->dpb[i]); in avs2d_dpb_create()
146 mpp_frame_init(&mgr->dpb[i]->frame); in avs2d_dpb_create()
147 avs2d_dbg_dpb("DPB[%d], frame %p", i, mgr->dpb[i]->frame); in avs2d_dpb_create()
148 MEM_CHECK(ret, mgr->dpb[i]->frame); in avs2d_dpb_create()
166 mpp_frame_deinit(&mgr->dpb[i]->frame); in avs2d_dpb_destroy()
167 MPP_FREE(mgr->dpb[i]); in avs2d_dpb_destroy()
170 MPP_FREE(mgr->dpb); in avs2d_dpb_destroy()
189 p = mgr->dpb[i]; in recompute_cycle_order_index()
[all …]
H A Davs2d_global.h346 Avs2dFrame_t **dpb; member
/rockchip-linux_mpp/mpp/common/
H A Dh265e_syntax_new.h215 void *dpb; member
/rockchip-linux_mpp/mpp/hal/rkenc/h264e/
H A Dhal_h264e_vepu580.c81 H264eDpb *dpb; member
541 ctx->dpb = desc->p; in update_vepu580_syntax()
589 if (ctx->dpb) { in hal_h264e_vepu580_get_task()
590 h264e_dpb_hal_start(ctx->dpb, frms->curr_idx); in hal_h264e_vepu580_get_task()
591 h264e_dpb_hal_start(ctx->dpb, frms->refr_idx); in hal_h264e_vepu580_get_task()
2529 if (ctx->dpb) { in hal_h264e_vepu580_ret_task()
2530 h264e_dpb_hal_end(ctx->dpb, task->flags.curr_idx); in hal_h264e_vepu580_ret_task()
2531 h264e_dpb_hal_end(ctx->dpb, task->flags.refr_idx); in hal_h264e_vepu580_ret_task()
H A Dhal_h264e_vepu510.c113 H264eDpb *dpb; member
519 ctx->dpb = desc->p; in update_vepu510_syntax()
571 if (ctx->dpb) { in hal_h264e_vepu510_get_task()
572 h264e_dpb_hal_start(ctx->dpb, frms->curr_idx); in hal_h264e_vepu510_get_task()
573 h264e_dpb_hal_start(ctx->dpb, frms->refr_idx); in hal_h264e_vepu510_get_task()
2533 if (ctx->dpb) { in hal_h264e_vepu510_ret_task()
2534 h264e_dpb_hal_end(ctx->dpb, task->flags.curr_idx); in hal_h264e_vepu510_ret_task()
2535 h264e_dpb_hal_end(ctx->dpb, task->flags.refr_idx); in hal_h264e_vepu510_ret_task()
H A Dhal_h264e_vepu511.c113 H264eDpb *dpb; member
518 ctx->dpb = desc->p; in update_vepu511_syntax()
570 if (ctx->dpb) { in hal_h264e_vepu511_get_task()
571 h264e_dpb_hal_start(ctx->dpb, frms->curr_idx); in hal_h264e_vepu511_get_task()
572 h264e_dpb_hal_start(ctx->dpb, frms->refr_idx); in hal_h264e_vepu511_get_task()
2589 if (ctx->dpb) { in hal_h264e_vepu511_ret_task()
2590 h264e_dpb_hal_end(ctx->dpb, task->flags.curr_idx); in hal_h264e_vepu511_ret_task()
2591 h264e_dpb_hal_end(ctx->dpb, task->flags.refr_idx); in hal_h264e_vepu511_ret_task()
/rockchip-linux_mpp/mpp/hal/rkenc/h265e/
H A Dhal_h265e_vepu510.c139 H265eDpb *dpb; member
2492 ctx->dpb = (H265eDpb*)ctx->syn->dpb; in hal_h265e_v510_get_task()
2532 h265e_dpb_hal_start(ctx->dpb, frm_cfg->hal_curr_idx); in hal_h265e_v510_get_task()
2533 h265e_dpb_hal_start(ctx->dpb, frm_cfg->hal_refr_idx); in hal_h265e_v510_get_task()
2570 h265e_dpb_hal_end(ctx->dpb, frm->hal_curr_idx); in hal_h265e_v510_ret_task()
2571 h265e_dpb_hal_end(ctx->dpb, frm->hal_refr_idx); in hal_h265e_v510_ret_task()
H A Dhal_h265e_vepu511.c140 H265eDpb *dpb; member
2732 ctx->dpb = (H265eDpb*)ctx->syn->dpb; in hal_h265e_vepu511_get_task()
2770 h265e_dpb_hal_start(ctx->dpb, frm_cfg->hal_curr_idx); in hal_h265e_vepu511_get_task()
2771 h265e_dpb_hal_start(ctx->dpb, frm_cfg->hal_refr_idx); in hal_h265e_vepu511_get_task()
2808 h265e_dpb_hal_end(ctx->dpb, frm->hal_curr_idx); in hal_h265e_vepu511_ret_task()
2809 h265e_dpb_hal_end(ctx->dpb, frm->hal_refr_idx); in hal_h265e_vepu511_ret_task()
H A Dhal_h265e_vepu580.c192 H265eDpb *dpb; member
3331 ctx->dpb = (H265eDpb*)ctx->syn->dpb; in hal_h265e_v580_get_task()
3369 h265e_dpb_hal_start(ctx->dpb, frm_cfg->hal_curr_idx); in hal_h265e_v580_get_task()
3370 h265e_dpb_hal_start(ctx->dpb, frm_cfg->hal_refr_idx); in hal_h265e_v580_get_task()
3447 h265e_dpb_hal_end(ctx->dpb, frm->hal_curr_idx); in hal_h265e_v580_ret_task()
3448 h265e_dpb_hal_end(ctx->dpb, frm->hal_refr_idx); in hal_h265e_v580_ret_task()
/rockchip-linux_mpp/debian/
H A Dchangelog129 * [avsd]: add dpb error marking
/rockchip-linux_mpp/
H A DCHANGELOG.md417 - [h265d]: auto output frame in dpb when ready
443 - [mpp_dec_cfg]: Add disable dpb check config
735 - [h264d]: fix frame output order when dpb full
/rockchip-linux_mpp/doc/
H A DRockchip_Developer_Guide_MPP_CN.md438 命令参数为FastPlayMode\*,用于使能H.264解码器的快速起播,不必等到dpb full之后出帧。如果当前帧在I帧之后解码,但在I帧之前显示,可能会出现丢帧的情况。命令调用时机在deco…
H A DRockchip_Developer_Guide_MPP_EN.md417 …ayMode\*. It is used to enable the fast play of H.264, without waiting for dpb full to output the …