Home
last modified time | relevance | path

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

12

/OK3568_Linux_fs/external/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.h138 MPP_RET h264e_dpb_init(H264eDpb *dpb, H264eReorderInfo *reorder, H264eMarkingInfo *marking);
139 MPP_RET h264e_dpb_deinit(H264eDpb *dpb);
141 MPP_RET h264e_dpb_setup(H264eDpb *dpb, MppEncCfgSet* cfg, H264eSps *sps);
150 MPP_RET h264e_dpb_proc(H264eDpb *dpb, EncCpbStatus *cpb);
155 MPP_RET h264e_dpb_hal_start(H264eDpb *dpb, RK_S32 slot_idx);
156 MPP_RET h264e_dpb_hal_end(H264eDpb *dpb, RK_S32 slot_idx);
158 void h264e_dpb_check(H264eDpb *dpb, EncCpbStatus *cpb);
160 #define h264e_dpb_dump_frms(dpb) h264e_dpb_dump_frm(dpb, __FUNCTION__, __LINE__) argument
162 void h264e_dpb_dump_frm(H264eDpb *dpb, const char *caller, RK_S32 line);
H A Dh264e_api_v2.c60 H264eDpb dpb; member
215 h264e_dpb_init(&p->dpb, &p->reorder, &p->marking); in h264e_init()
653 h264e_dpb_setup(&p->dpb, p->cfg, &p->sps); in h264e_gen_hdr()
728 H264eDpb *dpb = &p->dpb; in h264e_proc_dpb() local
739 h264e_dpb_proc(dpb, cpb); in h264e_proc_dpb()
741 curr = dpb->curr; in h264e_proc_dpb()
742 refr = dpb->refr; in h264e_proc_dpb()
745 h264e_slice_update(&p->slice, p->cfg, &p->sps, &p->pps, dpb->curr); in h264e_proc_dpb()
753 frms->usage[i] = dpb->frames[i].on_used; in h264e_proc_dpb()
756 h264e_dpb_check(dpb, cpb); in h264e_proc_dpb()
[all …]
/OK3568_Linux_fs/external/mpp/mpp/codec/enc/h265/
H A Dh265e_dpb.c72 MPP_RET h265e_dpb_init_curr(H265eDpb *dpb, H265eDpbFrm *frm) in h265e_dpb_init_curr() argument
77 frm->dpb = dpb; in h265e_dpb_init_curr()
85 frm->seq_idx = dpb->seq_idx; in h265e_dpb_init_curr()
86 dpb->seq_idx++; in h265e_dpb_init_curr()
92 MPP_RET h265e_dpb_get_curr(H265eDpb *dpb) in h265e_dpb_get_curr() argument
97 for (i = 0; i < MPP_ARRAY_ELEMS(dpb->frame_list); i++) { in h265e_dpb_get_curr()
98 if (!dpb->frame_list[i].on_used) { in h265e_dpb_get_curr()
99 dpb->curr = &dpb->frame_list[i]; in h265e_dpb_get_curr()
100 h265e_dbg_dpb("get free dpb slot_index %d", dpb->curr->slot_idx); in h265e_dpb_get_curr()
104 h265e_dpb_init_curr(dpb, dpb->curr); in h265e_dpb_get_curr()
[all …]
H A Dh265e_dpb.h64 H265eDpb *dpb; member
132 MPP_RET h265e_dpb_init(H265eDpb **dpb);
133 MPP_RET h265e_dpb_deinit(H265eDpb *dpb);
134 MPP_RET h265e_dpb_setup_buf_size(H265eDpb *dpb, RK_U32 size[], RK_U32 count);
135 MPP_RET h265e_dpb_get_curr(H265eDpb *dpb);
136 void h265e_dpb_build_list(H265eDpb *dpb, EncCpbStatus *cpb);
137 void h265e_dpb_proc_cpb(H265eDpb *dpb, EncCpbStatus *cpb);
139 #define h265e_dpb_dump_frms(dpb) h265e_dpb_dump_frm(dpb, __FUNCTION__) argument
141 void h265e_dpb_dump_frm(H265eDpb *dpb, const char *caller);
H A Dh265e_slice.c214 H265eSlice *slice = p->dpb->curr->slice; in h265e_slice_init()
215 p->slice = p->dpb->curr->slice; in h265e_slice_init()
235 p->dpb->curr->is_key_frame = 0; in h265e_slice_init()
238 p->dpb->curr->is_key_frame = 1; in h265e_slice_init()
239 p->dpb->curr->status.is_intra = 1; in h265e_slice_init()
240 p->dpb->gop_idx = 0; in h265e_slice_init()
243 p->dpb->curr->status.is_intra = 0; in h265e_slice_init()
246 p->dpb->curr->status.val = curr.val; in h265e_slice_init()
269 slice->poc = p->dpb->curr->seq_idx; in h265e_slice_init()
270 slice->gop_idx = p->dpb->gop_idx; in h265e_slice_init()
[all …]
H A Dh265e_api.c191 h265e_dpb_deinit(p->dpb); in h265e_deinit()
206 if (NULL == p->dpb) in h265e_gen_hdr()
207 h265e_dpb_init(&p->dpb); in h265e_gen_hdr()
245 h265e_dpb_proc_cpb(p->dpb, cpb); in h265e_proc_dpb()
246 h265e_dpb_get_curr(p->dpb); in h265e_proc_dpb()
248 h265e_dpb_build_list(p->dpb, cpb); in h265e_proc_dpb()
250 rc_task->frm = p->dpb->curr->status; in h265e_proc_dpb()
H A Dh265e_codec.h72 H265eDpb *dpb; member
H A Dh265e_syntax.c345 sp->recon_pic.slot_idx = h->dpb->curr->slot_idx; in fill_ref_parameters()
350 sp->ref_pic.slot_idx = h->dpb->curr->slot_idx; in fill_ref_parameters()
/OK3568_Linux_fs/kernel/drivers/staging/media/hantro/
H A Dhantro_h264.c231 const struct v4l2_h264_dpb_entry *dpb = ctx->h264_dec.dpb; in prepare_table() local
235 tbl->poc[i * 2] = dpb[i].top_field_order_cnt; in prepare_table()
236 tbl->poc[i * 2 + 1] = dpb[i].bottom_field_order_cnt; in prepare_table()
255 DECLARE_BITMAP(new, ARRAY_SIZE(dec_param->dpb)) = { 0, }; in update_dpb()
256 DECLARE_BITMAP(used, ARRAY_SIZE(dec_param->dpb)) = { 0, }; in update_dpb()
262 for (i = 0; i < ARRAY_SIZE(ctx->h264_dec.dpb); i++) in update_dpb()
263 ctx->h264_dec.dpb[i].flags &= ~V4L2_H264_DPB_ENTRY_FLAG_ACTIVE; in update_dpb()
266 for (i = 0; i < ARRAY_SIZE(dec_param->dpb); i++) { in update_dpb()
267 const struct v4l2_h264_dpb_entry *ndpb = &dec_param->dpb[i]; in update_dpb()
276 for_each_clear_bit(j, used, ARRAY_SIZE(ctx->h264_dec.dpb)) { in update_dpb()
[all …]
H A Dhantro_g1_h264_dec.c130 struct v4l2_h264_dpb_entry *dpb = ctx->h264_dec.dpb; in set_ref() local
144 if (dpb[i].flags & V4L2_H264_DPB_ENTRY_FLAG_ACTIVE) in set_ref()
147 if (dpb[i].flags & V4L2_H264_DPB_ENTRY_FLAG_LONG_TERM) in set_ref()
161 if (dpb[i].flags & V4L2_H264_DPB_ENTRY_FLAG_LONG_TERM) in set_ref()
162 reg |= G1_REG_REF_PIC_REFER0_NBR(dpb[i].pic_num); in set_ref()
164 reg |= G1_REG_REF_PIC_REFER0_NBR(dpb[i].frame_num); in set_ref()
166 if (dpb[i + 1].flags & V4L2_H264_DPB_ENTRY_FLAG_LONG_TERM) in set_ref()
167 reg |= G1_REG_REF_PIC_REFER1_NBR(dpb[i + 1].pic_num); in set_ref()
169 reg |= G1_REG_REF_PIC_REFER1_NBR(dpb[i + 1].frame_num); in set_ref()
H A Dhantro_hw.h90 struct v4l2_h264_dpb_entry dpb[HANTRO_H264_DPB_SIZE]; member
/OK3568_Linux_fs/kernel/drivers/media/v4l2-core/
H A Dv4l2-h264.c28 const struct v4l2_h264_dpb_entry dpb[V4L2_H264_NUM_DPB_ENTRIES]) in v4l2_h264_init_reflist_builder()
48 if (!(dpb[i].flags & V4L2_H264_DPB_ENTRY_FLAG_ACTIVE)) in v4l2_h264_init_reflist_builder()
51 b->refs[i].pic_num = dpb[i].pic_num; in v4l2_h264_init_reflist_builder()
52 if (dpb[i].flags & V4L2_H264_DPB_ENTRY_FLAG_LONG_TERM) in v4l2_h264_init_reflist_builder()
61 if (dpb[i].frame_num > cur_frame_num) in v4l2_h264_init_reflist_builder()
62 b->refs[i].frame_num = (int)dpb[i].frame_num - in v4l2_h264_init_reflist_builder()
65 b->refs[i].frame_num = dpb[i].frame_num; in v4l2_h264_init_reflist_builder()
67 if (dpb[i].fields == V4L2_H264_FRAME_REF) in v4l2_h264_init_reflist_builder()
68 pic_order_count = min(dpb[i].top_field_order_cnt, in v4l2_h264_init_reflist_builder()
69 dpb[i].bottom_field_order_cnt); in v4l2_h264_init_reflist_builder()
[all …]
/OK3568_Linux_fs/kernel/drivers/staging/media/rkvdec/
H A Drkvdec-h264.c643 const struct v4l2_h264_dpb_entry *dpb = dec_params->dpb; in assemble_hw_pps() local
719 for (i = 0; i < ARRAY_SIZE(dec_params->dpb); i++) { in assemble_hw_pps()
722 if (dpb[i].flags & V4L2_H264_DPB_ENTRY_FLAG_LONG_TERM) in assemble_hw_pps()
735 for (i = 0; i < ARRAY_SIZE(dec_params->dpb); i++) { in lookup_ref_buf_idx()
737 const struct v4l2_h264_dpb_entry *dpb = run->decode_params->dpb; in lookup_ref_buf_idx() local
741 if (dpb[i].flags & V4L2_H264_DPB_ENTRY_FLAG_ACTIVE) in lookup_ref_buf_idx()
743 dpb[i].reference_ts, 0); in lookup_ref_buf_idx()
753 const struct v4l2_h264_dpb_entry *dpb = dec_params->dpb; in assemble_hw_rps() local
771 for (i = 0; i < ARRAY_SIZE(dec_params->dpb); i++) { in assemble_hw_rps()
772 if (!(dpb[i].flags & V4L2_H264_DPB_ENTRY_FLAG_ACTIVE)) in assemble_hw_rps()
[all …]
/OK3568_Linux_fs/external/mpp/mpp/codec/dec/avs/
H A Davsd_parse.c411 set_frame_output(p_dec, p_dec->dpb[1]); in avsd_reset_parameters()
412 set_frame_output(p_dec, p_dec->dpb[0]); in avsd_reset_parameters()
414 set_frame_unref(p_dec, p_dec->dpb[1]); in avsd_reset_parameters()
415 set_frame_unref(p_dec, p_dec->dpb[0]); in avsd_reset_parameters()
419 p_dec->dpb[0] = NULL; in avsd_reset_parameters()
420 p_dec->dpb[1] = NULL; in avsd_reset_parameters()
491 if (p_dec->dpb[0] && p_dec->dpb[0]->slot_idx >= 0 && in avsd_set_dpb()
492 (p_dec->dpb[0]->slot_idx != p_dec->cur->slot_idx)) { in avsd_set_dpb()
493 mpp_buf_slot_set_flag(p_dec->frame_slots, p_dec->dpb[0]->slot_idx, SLOT_HAL_INPUT); in avsd_set_dpb()
495 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
/OK3568_Linux_fs/external/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 …]
/OK3568_Linux_fs/kernel/drivers/staging/media/sunxi/cedrus/
H A Dcedrus_h264.c111 for (i = 0; i < ARRAY_SIZE(decode->dpb); i++) { in cedrus_write_frame_list()
112 const struct v4l2_h264_dpb_entry *dpb = &decode->dpb[i]; in cedrus_write_frame_list() local
116 if (!(dpb->flags & V4L2_H264_DPB_ENTRY_FLAG_VALID)) in cedrus_write_frame_list()
119 buf_idx = vb2_find_timestamp(cap_q, dpb->reference_ts, 0); in cedrus_write_frame_list()
127 if (run->dst->vb2_buf.timestamp == dpb->reference_ts) { in cedrus_write_frame_list()
132 if (!(dpb->flags & V4L2_H264_DPB_ENTRY_FLAG_ACTIVE)) in cedrus_write_frame_list()
136 dpb->top_field_order_cnt, in cedrus_write_frame_list()
137 dpb->bottom_field_order_cnt, in cedrus_write_frame_list()
186 const struct v4l2_h264_dpb_entry *dpb; in _cedrus_write_ref_list() local
193 dpb = &decode->dpb[dpb_idx]; in _cedrus_write_ref_list()
[all …]
H A Dcedrus_h265.c136 const struct v4l2_hevc_dpb_entry *dpb, in cedrus_h265_frame_info_write_dpb() argument
144 int buffer_index = vb2_find_timestamp(vq, dpb[i].timestamp, 0); in cedrus_h265_frame_info_write_dpb()
146 dpb[i].pic_order_cnt[0], in cedrus_h265_frame_info_write_dpb()
147 dpb[i].pic_order_cnt[1] in cedrus_h265_frame_info_write_dpb()
153 cedrus_h265_frame_info_write_single(ctx, i, dpb[i].field_pic, in cedrus_h265_frame_info_write_dpb()
160 const struct v4l2_hevc_dpb_entry *dpb, in cedrus_h265_ref_pic_list_write() argument
175 if (dpb[index].rps == V4L2_HEVC_DPB_ENTRY_RPS_LT_CURR) in cedrus_h265_ref_pic_list_write()
533 cedrus_h265_frame_info_write_dpb(ctx, slice_params->dpb, in cedrus_h265_setup()
551 cedrus_h265_ref_pic_list_write(dev, slice_params->dpb, in cedrus_h265_setup()
570 cedrus_h265_ref_pic_list_write(dev, slice_params->dpb, in cedrus_h265_setup()
/OK3568_Linux_fs/kernel/include/media/
H A Dv4l2-h264.h48 const struct v4l2_h264_dpb_entry dpb[V4L2_H264_NUM_DPB_ENTRIES]);
H A Dhevc-ctrls.h205 struct v4l2_hevc_dpb_entry dpb[V4L2_HEVC_DPB_ENTRIES_NUM_MAX]; member
H A Dh264-ctrls.h203 struct v4l2_h264_dpb_entry dpb[V4L2_H264_NUM_DPB_ENTRIES]; member
/OK3568_Linux_fs/kernel/drivers/media/platform/sti/delta/
H A Ddelta-debug.c21 s->profile, s->level, s->dpb, in delta_streaminfo_str()
/OK3568_Linux_fs/kernel/drivers/media/platform/s5p-mfc/
H A Ds5p_mfc_opr_v5.c381 unsigned int dpb; in s5p_mfc_set_dec_frame_buffer_v5() local
389 dpb = mfc_read(dev, S5P_FIMV_SI_CH0_DPB_CONF_CTRL) & in s5p_mfc_set_dec_frame_buffer_v5()
391 mfc_write(dev, ctx->total_dpb_count | dpb, in s5p_mfc_set_dec_frame_buffer_v5()
1067 unsigned int dpb; in s5p_mfc_set_flush() local
1070 dpb = mfc_read(dev, S5P_FIMV_SI_CH0_DPB_CONF_CTRL) | ( in s5p_mfc_set_flush()
1073 dpb = mfc_read(dev, S5P_FIMV_SI_CH0_DPB_CONF_CTRL) & in s5p_mfc_set_flush()
1075 mfc_write(dev, dpb, S5P_FIMV_SI_CH0_DPB_CONF_CTRL); in s5p_mfc_set_flush()

12