| /rockchip-linux_mpp/mpp/codec/enc/h264/ |
| H A D | h264e_dpb.c | 28 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 D | h264e_dpb.h | 140 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 D | h264e_api_v2.c | 64 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 D | h265e_dpb.c | 29 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 D | h265e_dpb.h | 64 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 D | h265e_api.c | 202 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 D | h265e_slice.c | 215 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 D | h265e_syntax.c | 355 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 D | h265e_codec.h | 72 H265eDpb *dpb; member
|
| /rockchip-linux_mpp/mpp/codec/dec/avs/ |
| H A D | avsd_parse.c | 409 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 D | avsd_api.c | 157 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 D | avsd_parse.h | 228 AvsdFrame_t *dpb[2]; //!< 2 refer frames or 4 refer field member
|
| /rockchip-linux_mpp/mpp/codec/dec/avs2/ |
| H A D | avs2d_dpb.c | 142 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 D | avs2d_global.h | 346 Avs2dFrame_t **dpb; member
|
| /rockchip-linux_mpp/mpp/common/ |
| H A D | h265e_syntax_new.h | 215 void *dpb; member
|
| /rockchip-linux_mpp/mpp/hal/rkenc/h264e/ |
| H A D | hal_h264e_vepu580.c | 81 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 D | hal_h264e_vepu510.c | 113 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 D | hal_h264e_vepu511.c | 113 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 D | hal_h265e_vepu510.c | 139 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 D | hal_h265e_vepu511.c | 140 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 D | hal_h265e_vepu580.c | 192 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 D | changelog | 129 * [avsd]: add dpb error marking
|
| /rockchip-linux_mpp/ |
| H A D | CHANGELOG.md | 417 - [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 D | Rockchip_Developer_Guide_MPP_CN.md | 438 命令参数为FastPlayMode\*,用于使能H.264解码器的快速起播,不必等到dpb full之后出帧。如果当前帧在I帧之后解码,但在I帧之前显示,可能会出现丢帧的情况。命令调用时机在deco…
|
| H A D | Rockchip_Developer_Guide_MPP_EN.md | 417 …ayMode\*. It is used to enable the fast play of H.264, without waiting for dpb full to output the …
|