• Home
  • Raw
  • Download

Lines Matching refs:ps_dec

48 void impeg2d_format_convert(dec_state_t *ps_dec,  in impeg2d_format_convert()  argument
61 pu1_src_y = ps_src_pic->pu1_y + (u4_start_row * ps_dec->u2_frame_width); in impeg2d_format_convert()
62 pu1_src_u = ps_src_pic->pu1_u + ((u4_start_row >> 1) * (ps_dec->u2_frame_width >> 1)); in impeg2d_format_convert()
63 pu1_src_v = ps_src_pic->pu1_v + ((u4_start_row >> 1) *(ps_dec->u2_frame_width >> 1)); in impeg2d_format_convert()
65 pu1_dst_y = (UWORD8 *)ps_disp_frm_buf->pv_y_buf + (u4_start_row * ps_dec->u4_frm_buf_stride); in impeg2d_format_convert()
66 …pu1_dst_u = (UWORD8 *)ps_disp_frm_buf->pv_u_buf +((u4_start_row >> 1)*(ps_dec->u4_frm_buf_stride… in impeg2d_format_convert()
67 …pu1_dst_v = (UWORD8 *)ps_disp_frm_buf->pv_v_buf +((u4_start_row >> 1)*(ps_dec->u4_frm_buf_stride… in impeg2d_format_convert()
69 if (IV_YUV_420P == ps_dec->i4_chromaFormat) in impeg2d_format_convert()
71 ps_dec->pf_copy_yuv420p_buf(pu1_src_y, pu1_src_u, pu1_src_v, pu1_dst_y, in impeg2d_format_convert()
73 ps_dec->u2_horizontal_size, in impeg2d_format_convert()
75 ps_dec->u2_frame_width, in impeg2d_format_convert()
76 (ps_dec->u2_frame_width >> 1), in impeg2d_format_convert()
77 (ps_dec->u2_frame_width >> 1), in impeg2d_format_convert()
78 ps_dec->u4_frm_buf_stride, in impeg2d_format_convert()
79 (ps_dec->u4_frm_buf_stride >> 1), in impeg2d_format_convert()
80 (ps_dec->u4_frm_buf_stride >> 1)); in impeg2d_format_convert()
82 else if (IV_YUV_422ILE == ps_dec->i4_chromaFormat) in impeg2d_format_convert()
89 …_yuv422i = (UWORD8 *)ps_disp_frm_buf->pv_y_buf + ((ps_dec->u2_vertical_size)*(ps_dec->u4_… in impeg2d_format_convert()
91 u2_width = ps_dec->u2_horizontal_size; in impeg2d_format_convert()
92 u2_stride_y = ps_dec->u2_frame_width; in impeg2d_format_convert()
95 …u2_stride_yuv422i = (0 == ps_dec->u4_frm_buf_stride) ? ps_dec->u2_horizontal_size : ps_dec->u4_f… in impeg2d_format_convert()
97 ps_dec->pf_fmt_conv_yuv420p_to_yuv422ile(pu1_src_y, in impeg2d_format_convert()
109 else if((ps_dec->i4_chromaFormat == IV_YUV_420SP_UV) || in impeg2d_format_convert()
110 (ps_dec->i4_chromaFormat == IV_YUV_420SP_VU)) in impeg2d_format_convert()
116 …pu1_dst_u = (UWORD8 *)ps_disp_frm_buf->pv_u_buf +((u4_start_row >> 1)*(ps_dec->u4_frm_buf_stride… in impeg2d_format_convert()
117 dest_inc_Y = ps_dec->u4_frm_buf_stride; in impeg2d_format_convert()
118 dest_inc_UV = ((ps_dec->u4_frm_buf_stride + 1) >> 1) << 1; in impeg2d_format_convert()
121 if(1 == ps_dec->u4_share_disp_buf) in impeg2d_format_convert()
127 if(ps_dec->i4_chromaFormat == IV_YUV_420SP_UV) in impeg2d_format_convert()
129 ps_dec->pf_fmt_conv_yuv420p_to_yuv420sp_uv(pu1_src_y, in impeg2d_format_convert()
135 ps_dec->u2_horizontal_size, in impeg2d_format_convert()
136 ps_dec->u2_frame_width, in impeg2d_format_convert()
137 ps_dec->u2_frame_width >> 1, in impeg2d_format_convert()
138 ps_dec->u2_frame_width >> 1, in impeg2d_format_convert()
145 ps_dec->pf_fmt_conv_yuv420p_to_yuv420sp_vu(pu1_src_y, in impeg2d_format_convert()
151 ps_dec->u2_horizontal_size, in impeg2d_format_convert()
152 ps_dec->u2_frame_width, in impeg2d_format_convert()
153 ps_dec->u2_frame_width >> 1, in impeg2d_format_convert()
154 ps_dec->u2_frame_width >> 1, in impeg2d_format_convert()
249 IMPEG2D_ERROR_CODES_T impeg2d_init_video_state(dec_state_t *ps_dec, e_video_type_t e_video_type) in impeg2d_init_video_state() argument
256 ps_dec->u2_is_mpeg2 = 0; in impeg2d_init_video_state()
262 ps_dec->u2_progressive_sequence = 1; in impeg2d_init_video_state()
263 ps_dec->u2_intra_dc_precision = 0; in impeg2d_init_video_state()
264 ps_dec->u2_picture_structure = FRAME_PICTURE; in impeg2d_init_video_state()
265 ps_dec->u2_frame_pred_frame_dct = 1; in impeg2d_init_video_state()
266 ps_dec->u2_concealment_motion_vectors = 0; in impeg2d_init_video_state()
267 ps_dec->u2_q_scale_type = 0; in impeg2d_init_video_state()
268 ps_dec->u2_intra_vlc_format = 0; in impeg2d_init_video_state()
269 ps_dec->u2_alternate_scan = 0; in impeg2d_init_video_state()
270 ps_dec->u2_repeat_first_field = 0; in impeg2d_init_video_state()
271 ps_dec->u2_progressive_frame = 1; in impeg2d_init_video_state()
272 ps_dec->u2_frame_rate_extension_n = 0; in impeg2d_init_video_state()
273 ps_dec->u2_frame_rate_extension_d = 0; in impeg2d_init_video_state()
274 ps_dec->u2_forw_f_code = 7; in impeg2d_init_video_state()
275 ps_dec->u2_back_f_code = 7; in impeg2d_init_video_state()
277 ps_dec->pf_vld_inv_quant = impeg2d_vld_inv_quant_mpeg1; in impeg2d_init_video_state()
288 ps_dec->u2_is_mpeg2 = 1; in impeg2d_init_video_state()
289 ps_dec->u2_full_pel_forw_vector = 0; in impeg2d_init_video_state()
290 ps_dec->u2_forw_f_code = 7; in impeg2d_init_video_state()
291 ps_dec->u2_full_pel_back_vector = 0; in impeg2d_init_video_state()
292 ps_dec->u2_back_f_code = 7; in impeg2d_init_video_state()
293 ps_dec->pf_vld_inv_quant = impeg2d_vld_inv_quant_mpeg2; in impeg2d_init_video_state()
299 impeg2d_init_function_ptr(ps_dec); in impeg2d_init_video_state()
302 ps_dec->u2_frame_height = ALIGN16(ps_dec->u2_vertical_size); in impeg2d_init_video_state()
303 ps_dec->u2_frame_width = ALIGN16(ps_dec->u2_horizontal_size); in impeg2d_init_video_state()
304 ps_dec->u2_num_horiz_mb = (ps_dec->u2_horizontal_size + 15) >> 4; in impeg2d_init_video_state()
306 …if (ps_dec->u2_frame_height > ps_dec->u2_create_max_height || ps_dec->u2_frame_width > ps_dec->u2_… in impeg2d_init_video_state()
311 ps_dec->u2_num_flds_decoded = 0; in impeg2d_init_video_state()
317 numer = (UWORD32)gau2_impeg2_frm_rate_code[ps_dec->u2_frame_rate_code][1] * in impeg2d_init_video_state()
318 (UWORD32)(ps_dec->u2_frame_rate_extension_d + 1); in impeg2d_init_video_state()
320 denom = (UWORD32)gau2_impeg2_frm_rate_code[ps_dec->u2_frame_rate_code][0] * in impeg2d_init_video_state()
321 (UWORD32)(ps_dec->u2_frame_rate_extension_n + 1); in impeg2d_init_video_state()
322 ps_dec->u2_framePeriod = (numer * 1000 * 100) / denom; in impeg2d_init_video_state()
326 if(VERTICAL_SCAN == ps_dec->u2_alternate_scan) in impeg2d_init_video_state()
328 ps_dec->pu1_inv_scan_matrix = (UWORD8 *)gau1_impeg2_inv_scan_vertical; in impeg2d_init_video_state()
332 ps_dec->pu1_inv_scan_matrix = (UWORD8 *)gau1_impeg2_inv_scan_zig_zag; in impeg2d_init_video_state()
347 IMPEG2D_ERROR_CODES_T impeg2d_pre_pic_dec_proc(dec_state_t *ps_dec) in impeg2d_pre_pic_dec_proc() argument
357 if(ps_dec->u2_picture_structure != FRAME_PICTURE) in impeg2d_pre_pic_dec_proc()
359 ps_dec->u2_num_vert_mb = (ps_dec->u2_vertical_size + 31) >> 5; in impeg2d_pre_pic_dec_proc()
361 if(ps_dec->u2_num_flds_decoded == 0) in impeg2d_pre_pic_dec_proc()
366 … ps_pic_buf = impeg2_buf_mgr_get_next_free(ps_dec->pv_pic_buf_mg, &ps_dec->i4_cur_buf_id); in impeg2d_pre_pic_dec_proc()
373 …impeg2_buf_mgr_set_status((buf_mgr_t *)ps_dec->pv_pic_buf_mg, ps_dec->i4_cur_buf_id, BUF_MGR_DISP); in impeg2d_pre_pic_dec_proc()
374 … impeg2_buf_mgr_set_status((buf_mgr_t *)ps_dec->pv_pic_buf_mg, ps_dec->i4_cur_buf_id, BUF_MGR_REF); in impeg2d_pre_pic_dec_proc()
375 if(ps_dec->u4_deinterlace) in impeg2d_pre_pic_dec_proc()
376 …impeg2_buf_mgr_set_status((buf_mgr_t *)ps_dec->pv_pic_buf_mg, ps_dec->i4_cur_buf_id, MPEG2_BUF_MGR… in impeg2d_pre_pic_dec_proc()
378 ps_pic_buf->u4_ts = ps_dec->u4_inp_ts; in impeg2d_pre_pic_dec_proc()
379 ps_pic_buf->e_pic_type = ps_dec->e_pic_type; in impeg2d_pre_pic_dec_proc()
380 ps_dec->ps_cur_pic = ps_pic_buf; in impeg2d_pre_pic_dec_proc()
381 ps_dec->s_cur_frm_buf.pu1_y = ps_pic_buf->pu1_y; in impeg2d_pre_pic_dec_proc()
382 ps_dec->s_cur_frm_buf.pu1_u = ps_pic_buf->pu1_u; in impeg2d_pre_pic_dec_proc()
383 ps_dec->s_cur_frm_buf.pu1_v = ps_pic_buf->pu1_v; in impeg2d_pre_pic_dec_proc()
386 if(ps_dec->u2_picture_structure == TOP_FIELD) in impeg2d_pre_pic_dec_proc()
388 ps_dec->u2_fld_parity = TOP; in impeg2d_pre_pic_dec_proc()
392 ps_dec->u2_fld_parity = BOTTOM; in impeg2d_pre_pic_dec_proc()
394 ps_dec->u2_field_dct = 0; in impeg2d_pre_pic_dec_proc()
395 ps_dec->u2_read_dct_type = 0; in impeg2d_pre_pic_dec_proc()
396 ps_dec->u2_read_motion_type = 1; in impeg2d_pre_pic_dec_proc()
397 ps_dec->u2_fld_pic = 1; in impeg2d_pre_pic_dec_proc()
398 ps_dec->u2_frm_pic = 0; in impeg2d_pre_pic_dec_proc()
399 ps_dec->ps_func_forw_or_back = gas_impeg2d_func_fld_fw_or_bk; in impeg2d_pre_pic_dec_proc()
400 ps_dec->ps_func_bi_direct = gas_impeg2d_func_fld_bi_direct; in impeg2d_pre_pic_dec_proc()
408 ps_dec->u2_num_vert_mb = (ps_dec->u2_vertical_size + 15) >> 4; in impeg2d_pre_pic_dec_proc()
410 ps_pic_buf = impeg2_buf_mgr_get_next_free(ps_dec->pv_pic_buf_mg, &ps_dec->i4_cur_buf_id); in impeg2d_pre_pic_dec_proc()
416 …impeg2_buf_mgr_set_status((buf_mgr_t *)ps_dec->pv_pic_buf_mg, ps_dec->i4_cur_buf_id, BUF_MGR_DISP); in impeg2d_pre_pic_dec_proc()
417 … impeg2_buf_mgr_set_status((buf_mgr_t *)ps_dec->pv_pic_buf_mg, ps_dec->i4_cur_buf_id, BUF_MGR_REF); in impeg2d_pre_pic_dec_proc()
418 if(ps_dec->u4_deinterlace) in impeg2d_pre_pic_dec_proc()
419 …impeg2_buf_mgr_set_status((buf_mgr_t *)ps_dec->pv_pic_buf_mg, ps_dec->i4_cur_buf_id, MPEG2_BUF_MGR… in impeg2d_pre_pic_dec_proc()
421 ps_pic_buf->u4_ts = ps_dec->u4_inp_ts; in impeg2d_pre_pic_dec_proc()
422 ps_pic_buf->e_pic_type = ps_dec->e_pic_type; in impeg2d_pre_pic_dec_proc()
423 ps_dec->ps_cur_pic = ps_pic_buf; in impeg2d_pre_pic_dec_proc()
424 ps_dec->s_cur_frm_buf.pu1_y = ps_pic_buf->pu1_y; in impeg2d_pre_pic_dec_proc()
425 ps_dec->s_cur_frm_buf.pu1_u = ps_pic_buf->pu1_u; in impeg2d_pre_pic_dec_proc()
426 ps_dec->s_cur_frm_buf.pu1_v = ps_pic_buf->pu1_v; in impeg2d_pre_pic_dec_proc()
429 if(ps_dec->u2_frame_pred_frame_dct == 0) in impeg2d_pre_pic_dec_proc()
431 ps_dec->u2_read_dct_type = 1; in impeg2d_pre_pic_dec_proc()
432 ps_dec->u2_read_motion_type = 1; in impeg2d_pre_pic_dec_proc()
436 ps_dec->u2_read_dct_type = 0; in impeg2d_pre_pic_dec_proc()
437 ps_dec->u2_read_motion_type = 0; in impeg2d_pre_pic_dec_proc()
438 ps_dec->u2_motion_type = 2; in impeg2d_pre_pic_dec_proc()
439 ps_dec->u2_field_dct = 0; in impeg2d_pre_pic_dec_proc()
442 ps_dec->u2_fld_parity = TOP; in impeg2d_pre_pic_dec_proc()
443 ps_dec->u2_fld_pic = 0; in impeg2d_pre_pic_dec_proc()
444 ps_dec->u2_frm_pic = 1; in impeg2d_pre_pic_dec_proc()
445 ps_dec->ps_func_forw_or_back = gas_impeg2d_func_frm_fw_or_bk; in impeg2d_pre_pic_dec_proc()
446 ps_dec->ps_func_bi_direct = gas_impeg2d_func_frm_bi_direct; in impeg2d_pre_pic_dec_proc()
448 ps_dec->u2_def_dc_pred[Y_LUMA] = 128 << ps_dec->u2_intra_dc_precision; in impeg2d_pre_pic_dec_proc()
449 ps_dec->u2_def_dc_pred[U_CHROMA] = 128 << ps_dec->u2_intra_dc_precision; in impeg2d_pre_pic_dec_proc()
450 ps_dec->u2_def_dc_pred[V_CHROMA] = 128 << ps_dec->u2_intra_dc_precision; in impeg2d_pre_pic_dec_proc()
451 ps_dec->u2_num_mbs_left = ps_dec->u2_num_horiz_mb * ps_dec->u2_num_vert_mb; in impeg2d_pre_pic_dec_proc()
454 if(ps_dec->u4_num_frames_decoded > 1) in impeg2d_pre_pic_dec_proc()
456 ps_disp_pic = impeg2_disp_mgr_get(&ps_dec->s_disp_mgr, &ps_dec->i4_disp_buf_id); in impeg2d_pre_pic_dec_proc()
458 ps_dec->ps_disp_pic = ps_disp_pic; in impeg2d_pre_pic_dec_proc()
461 if(1 == ps_dec->u4_share_disp_buf) in impeg2d_pre_pic_dec_proc()
463 ps_dec->ps_disp_frm_buf->pv_y_buf = ps_disp_pic->pu1_y; in impeg2d_pre_pic_dec_proc()
464 if(IV_YUV_420P == ps_dec->i4_chromaFormat) in impeg2d_pre_pic_dec_proc()
466 ps_dec->ps_disp_frm_buf->pv_u_buf = ps_disp_pic->pu1_u; in impeg2d_pre_pic_dec_proc()
467 ps_dec->ps_disp_frm_buf->pv_v_buf = ps_disp_pic->pu1_v; in impeg2d_pre_pic_dec_proc()
473 pu1_buf = ps_dec->as_disp_buffers[ps_disp_pic->i4_buf_id].pu1_bufs[1]; in impeg2d_pre_pic_dec_proc()
474 ps_dec->ps_disp_frm_buf->pv_u_buf = pu1_buf; in impeg2d_pre_pic_dec_proc()
476 pu1_buf = ps_dec->as_disp_buffers[ps_disp_pic->i4_buf_id].pu1_bufs[2]; in impeg2d_pre_pic_dec_proc()
477 ps_dec->ps_disp_frm_buf->pv_v_buf = pu1_buf; in impeg2d_pre_pic_dec_proc()
484 switch(ps_dec->e_pic_type) in impeg2d_pre_pic_dec_proc()
488 ps_dec->pf_decode_slice = impeg2d_dec_i_slice; in impeg2d_pre_pic_dec_proc()
493 ps_dec->pf_decode_slice = impeg2d_dec_d_slice; in impeg2d_pre_pic_dec_proc()
498 ps_dec->pf_decode_slice = impeg2d_dec_p_b_slice; in impeg2d_pre_pic_dec_proc()
499 ps_dec->pu2_mb_type = gau2_impeg2d_p_mb_type; in impeg2d_pre_pic_dec_proc()
504 ps_dec->pf_decode_slice = impeg2d_dec_p_b_slice; in impeg2d_pre_pic_dec_proc()
505 ps_dec->pu2_mb_type = gau2_impeg2d_b_mb_type; in impeg2d_pre_pic_dec_proc()
520 if(ps_dec->e_pic_type == P_PIC) in impeg2d_pre_pic_dec_proc()
522 if (NULL == ps_dec->as_recent_fld[1][0].pu1_y) in impeg2d_pre_pic_dec_proc()
524 ps_dec->as_recent_fld[1][0] = ps_dec->s_cur_frm_buf; in impeg2d_pre_pic_dec_proc()
526 if (NULL == ps_dec->as_recent_fld[1][1].pu1_y) in impeg2d_pre_pic_dec_proc()
528 impeg2d_get_bottom_field_buf(&ps_dec->s_cur_frm_buf, &ps_dec->as_recent_fld[1][1], in impeg2d_pre_pic_dec_proc()
529 ps_dec->u2_frame_width); in impeg2d_pre_pic_dec_proc()
532 ps_dec->as_ref_buf[FORW][TOP] = ps_dec->as_recent_fld[1][0]; in impeg2d_pre_pic_dec_proc()
533 ps_dec->as_ref_buf[FORW][BOTTOM] = ps_dec->as_recent_fld[1][1]; in impeg2d_pre_pic_dec_proc()
537 else if(ps_dec->e_pic_type == B_PIC) in impeg2d_pre_pic_dec_proc()
539 … if((NULL == ps_dec->as_recent_fld[1][0].pu1_y) && (NULL == ps_dec->as_recent_fld[0][0].pu1_y)) in impeg2d_pre_pic_dec_proc()
542 ps_dec->as_recent_fld[1][0] = ps_dec->s_cur_frm_buf; in impeg2d_pre_pic_dec_proc()
543 impeg2d_get_bottom_field_buf(&ps_dec->s_cur_frm_buf, &ps_dec->as_recent_fld[1][1], in impeg2d_pre_pic_dec_proc()
544 ps_dec->u2_frame_width); in impeg2d_pre_pic_dec_proc()
545 ps_dec->as_recent_fld[0][0] = ps_dec->s_cur_frm_buf; in impeg2d_pre_pic_dec_proc()
546 ps_dec->as_recent_fld[0][1] = ps_dec->as_recent_fld[1][1]; in impeg2d_pre_pic_dec_proc()
549 …else if ((NULL != ps_dec->as_recent_fld[1][0].pu1_y) && (NULL == ps_dec->as_recent_fld[0][0].pu1_y… in impeg2d_pre_pic_dec_proc()
551 ps_dec->as_recent_fld[0][0] = ps_dec->as_recent_fld[1][0]; in impeg2d_pre_pic_dec_proc()
552 ps_dec->as_recent_fld[0][1] = ps_dec->as_recent_fld[1][1]; in impeg2d_pre_pic_dec_proc()
554 …else if ((NULL == ps_dec->as_recent_fld[1][0].pu1_y) && (NULL != ps_dec->as_recent_fld[0][0].pu1_y… in impeg2d_pre_pic_dec_proc()
556 ps_dec->as_recent_fld[1][0] = ps_dec->as_recent_fld[0][0]; in impeg2d_pre_pic_dec_proc()
557 ps_dec->as_recent_fld[1][1] = ps_dec->as_recent_fld[0][1]; in impeg2d_pre_pic_dec_proc()
564 … if((NULL == ps_dec->as_recent_fld[0][1].pu1_y) && (NULL == ps_dec->as_recent_fld[1][1].pu1_y)) in impeg2d_pre_pic_dec_proc()
567 ps_dec->as_recent_fld[1][0] = ps_dec->s_cur_frm_buf; in impeg2d_pre_pic_dec_proc()
568 impeg2d_get_bottom_field_buf(&ps_dec->s_cur_frm_buf, &ps_dec->as_recent_fld[1][1], in impeg2d_pre_pic_dec_proc()
569 ps_dec->u2_frame_width); in impeg2d_pre_pic_dec_proc()
570 ps_dec->as_recent_fld[0][0] = ps_dec->s_cur_frm_buf; in impeg2d_pre_pic_dec_proc()
571 ps_dec->as_recent_fld[0][1] = ps_dec->as_recent_fld[1][1]; in impeg2d_pre_pic_dec_proc()
575 …else if((NULL == ps_dec->as_recent_fld[0][1].pu1_y) && (NULL != ps_dec->as_recent_fld[1][1].pu1_y)) in impeg2d_pre_pic_dec_proc()
577 ps_dec->as_recent_fld[0][0] = ps_dec->as_recent_fld[1][0]; in impeg2d_pre_pic_dec_proc()
578 ps_dec->as_recent_fld[0][1] = ps_dec->as_recent_fld[1][1]; in impeg2d_pre_pic_dec_proc()
581 …else if((NULL == ps_dec->as_recent_fld[1][1].pu1_y) && (NULL != ps_dec->as_recent_fld[0][1].pu1_y)) in impeg2d_pre_pic_dec_proc()
583 ps_dec->as_recent_fld[1][0] = ps_dec->as_recent_fld[0][0]; in impeg2d_pre_pic_dec_proc()
584 ps_dec->as_recent_fld[1][1] = ps_dec->as_recent_fld[0][1]; in impeg2d_pre_pic_dec_proc()
586 ps_dec->as_ref_buf[FORW][TOP] = ps_dec->as_recent_fld[0][0]; in impeg2d_pre_pic_dec_proc()
587 ps_dec->as_ref_buf[FORW][BOTTOM] = ps_dec->as_recent_fld[0][1]; in impeg2d_pre_pic_dec_proc()
588 ps_dec->as_ref_buf[BACK][TOP] = ps_dec->as_recent_fld[1][0]; in impeg2d_pre_pic_dec_proc()
589 ps_dec->as_ref_buf[BACK][BOTTOM] = ps_dec->as_recent_fld[1][1]; in impeg2d_pre_pic_dec_proc()
609 void impeg2d_post_pic_dec_proc(dec_state_t *ps_dec) in impeg2d_post_pic_dec_proc() argument
616 if(ps_dec->u2_picture_structure != FRAME_PICTURE) in impeg2d_post_pic_dec_proc()
618 ps_dec->u2_num_vert_mb = (ps_dec->u2_vertical_size + 31) >> 5; in impeg2d_post_pic_dec_proc()
620 if(ps_dec->u2_num_flds_decoded == 1) in impeg2d_post_pic_dec_proc()
622 ps_dec->u2_num_flds_decoded = 0; in impeg2d_post_pic_dec_proc()
627 ps_dec->u2_num_flds_decoded = 1; in impeg2d_post_pic_dec_proc()
637 ps_dec->i4_frame_decoded = 1; in impeg2d_post_pic_dec_proc()
638 if(ps_dec->e_pic_type != B_PIC) in impeg2d_post_pic_dec_proc()
642 if(ps_dec->aps_ref_pics[0] == NULL) in impeg2d_post_pic_dec_proc()
644 ps_dec->aps_ref_pics[0] = ps_dec->ps_cur_pic; in impeg2d_post_pic_dec_proc()
648 else if(ps_dec->aps_ref_pics[1] == NULL) in impeg2d_post_pic_dec_proc()
650 ps_dec->aps_ref_pics[1] = ps_dec->ps_cur_pic; in impeg2d_post_pic_dec_proc()
651 …impeg2_disp_mgr_add(&ps_dec->s_disp_mgr, ps_dec->aps_ref_pics[0], ps_dec->aps_ref_pics[0]->i4_buf_… in impeg2d_post_pic_dec_proc()
656 …impeg2_disp_mgr_add(&ps_dec->s_disp_mgr, ps_dec->aps_ref_pics[1], ps_dec->aps_ref_pics[1]->i4_buf_… in impeg2d_post_pic_dec_proc()
657 … impeg2_buf_mgr_release(ps_dec->pv_pic_buf_mg, ps_dec->aps_ref_pics[0]->i4_buf_id, BUF_MGR_REF); in impeg2d_post_pic_dec_proc()
658 ps_dec->aps_ref_pics[0] = ps_dec->aps_ref_pics[1]; in impeg2d_post_pic_dec_proc()
659 ps_dec->aps_ref_pics[1] = ps_dec->ps_cur_pic; in impeg2d_post_pic_dec_proc()
665 … impeg2_disp_mgr_add(&ps_dec->s_disp_mgr, ps_dec->ps_cur_pic, ps_dec->ps_cur_pic->i4_buf_id); in impeg2d_post_pic_dec_proc()
667 … impeg2_buf_mgr_release(ps_dec->pv_pic_buf_mg, ps_dec->ps_cur_pic->i4_buf_id, BUF_MGR_REF); in impeg2d_post_pic_dec_proc()
674 if(ps_dec->e_pic_type != B_PIC) in impeg2d_post_pic_dec_proc()
676 switch(ps_dec->u2_picture_structure) in impeg2d_post_pic_dec_proc()
680 ps_dec->as_recent_fld[0][0] = ps_dec->as_recent_fld[1][0]; in impeg2d_post_pic_dec_proc()
681 ps_dec->as_recent_fld[0][1] = ps_dec->as_recent_fld[1][1]; in impeg2d_post_pic_dec_proc()
683 ps_dec->as_recent_fld[1][0] = ps_dec->s_cur_frm_buf; in impeg2d_post_pic_dec_proc()
684 impeg2d_get_bottom_field_buf(&ps_dec->s_cur_frm_buf, &ps_dec->as_recent_fld[1][1], in impeg2d_post_pic_dec_proc()
685 ps_dec->u2_frame_width); in impeg2d_post_pic_dec_proc()
690 ps_dec->as_recent_fld[0][0] = ps_dec->as_recent_fld[1][0]; in impeg2d_post_pic_dec_proc()
691 ps_dec->as_recent_fld[1][0] = ps_dec->s_cur_frm_buf; in impeg2d_post_pic_dec_proc()
696 ps_dec->as_recent_fld[0][1] = ps_dec->as_recent_fld[1][1]; in impeg2d_post_pic_dec_proc()
697 impeg2d_get_bottom_field_buf(&ps_dec->s_cur_frm_buf, &ps_dec->as_recent_fld[1][1], in impeg2d_post_pic_dec_proc()
698 ps_dec->u2_frame_width); in impeg2d_post_pic_dec_proc()