Home | History | Annotate | Download | only in decoder

Lines Matching defs:ps_pred

51 void ih264d_pad_on_demand(pred_info_t *ps_pred, UWORD8 lum_chrom_blk);
205 pred_info_t * ps_pred = ps_dec->ps_pred + ps_dec->u4_pred_info_idx;
293 ps_pred->u2_u1_ref_buf_wd = u1_dma_wd;
294 ps_pred->i1_dma_ht = u1_dma_ht;
295 ps_pred->i1_mc_wd = i1_mc_wd;
296 ps_pred->u2_frm_wd = u2_frm_wd;
297 ps_pred->pu1_rec_y_u = pu1_rec;
298 ps_pred->u2_dst_stride = u2_rec_wd;
300 ps_pred->i1_mb_partwidth = u1_part_wd << 2;
301 ps_pred->i1_mb_partheight = u1_part_ht << 2;
302 ps_pred->u1_dydx = (u1_dy << 2) + u1_dx;
304 ps_pred->pu1_y_ref = pu1_pred;
308 /* Increment ps_pred index */
309 ps_pred++;
382 ps_pred->pu1_rec_y_u = ps_frame_buf->pu1_dest_u + i4_rec_offset;
383 ps_pred->u1_pi1_wt_ofst_rec_v = ps_frame_buf->pu1_dest_v
392 ps_pred->u2_u1_ref_buf_wd = u1_dma_wd;
393 ps_pred->i1_dma_ht = u1_dma_ht;
394 ps_pred->i1_mc_wd = i1_mc_wd;
396 ps_pred->u2_frm_wd = u2_frm_wd;
397 ps_pred->u2_dst_stride = u2_rec_wd;
399 ps_pred->i1_mb_partwidth = u1_part_wd << 1;
400 ps_pred->i1_mb_partheight = u1_part_ht << 1;
401 ps_pred->u1_dydx = (u1_dy << 3) + u1_dx;
407 ps_pred->pu1_u_ref = pu1_pred_u;
410 ps_pred->pu1_v_ref = pu1_pred_v;
413 /* Increment ps_pred index */
475 pred_info_t * ps_pred ;
500 ps_pred = ps_dec->ps_pred + ps_dec->u4_pred_info_idx;
653 ps_pred->pu1_dma_dest_addr = pu1_ref_buf;
654 ps_pred->u2_u1_ref_buf_wd = u1_dma_wd;
655 ps_pred->u2_frm_wd = u2_frm_wd;
656 ps_pred->i1_dma_ht = u1_dma_ht;
657 ps_pred->i1_mc_wd = i1_mc_wd;
658 ps_pred->pu1_rec_y_u = pu1_rec;
659 ps_pred->u2_dst_stride = u2_rec_wd;
661 ps_pred->i1_mb_partwidth = u1_part_wd << 2;
662 ps_pred->i1_mb_partheight = u1_part_ht << 2;
663 ps_pred->u1_dydx = (u1_dy << 2) + u1_dx;
664 ps_pred->u1_is_bi_direct = u1_is_bi_dir;
665 ps_pred->u1_pi1_wt_ofst_rec_v = (UWORD8 *)pu4_wt_offset;
666 ps_pred->u1_wght_pred_type = u1_wght_pred_type;
667 ps_pred->i1_pod_ht = 0;
677 ps_pred->i1_pod_ht = (WORD8)(-i2_pod_ht);
688 ps_pred->i1_pod_ht = (WORD8)i2_pod_ht;
695 * ps_pred->i1_pod_ht is non zero when MBAFF is present. In case of MBAFF the reference data
698 if(ps_pred->i1_pod_ht)
700 ps_pred->pu1_pred = pu1_pred;
701 ps_pred->u1_dma_ht_y = u1_dma_ht;
702 ps_pred->u1_dma_wd_y = u1_dma_wd;
704 ps_pred->pu1_y_ref = pu1_pred;
709 /* Increment ps_pred index */
710 ps_pred++;
794 ps_pred->pu1_rec_y_u = ps_frame_buf->pu1_dest_u + i4_rec_offset;
795 ps_pred->u1_pi1_wt_ofst_rec_v = ps_frame_buf->pu1_dest_v
805 ps_pred->u2_u1_ref_buf_wd = u1_dma_wd;
806 ps_pred->u2_frm_wd = u2_frm_wd;
807 ps_pred->i1_dma_ht = u1_dma_ht;
808 ps_pred->i1_mc_wd = i1_mc_wd;
809 ps_pred->u2_dst_stride = u2_rec_wd;
811 ps_pred->i1_mb_partwidth = u1_part_wd << 1;
812 ps_pred->i1_mb_partheight = u1_part_ht << 1;
813 ps_pred->u1_dydx = (u1_dy << 3) + u1_dx;
814 ps_pred->u1_is_bi_direct = u1_is_bi_dir;
815 ps_pred->u1_wght_pred_type = u1_wght_pred_type;
816 ps_pred->i1_pod_ht = 0;
818 ps_pred->pu1_dma_dest_addr = pu1_ref_buf;
826 ps_pred->i1_pod_ht = (WORD8)(-i2_pod_ht);
835 ps_pred->i1_pod_ht = (WORD8)i2_pod_ht;
843 if(ps_pred->i1_pod_ht)
845 ps_pred->pu1_pred_u = pu1_pred_u;
846 ps_pred->u1_dma_ht_uv = u1_dma_ht;
847 ps_pred->u1_dma_wd_uv = u1_dma_wd;
850 ps_pred->pu1_u_ref = pu1_pred_u;
855 if(ps_pred->i1_pod_ht)
857 ps_pred->pu1_pred_v = pu1_pred_v;
858 ps_pred->u1_dma_ht_uv = u1_dma_ht;
859 ps_pred->u1_dma_wd_uv = u1_dma_wd;
862 ps_pred->pu1_v_ref = pu1_pred_v;
865 /* Increment ps_pred index */
905 pred_info_t *ps_pred ;
917 ps_pred = ps_dec->ps_pred ;
926 * ps_pred->i1_pod_ht is non zero when MBAFF is present. In case of MBAFF the reference data
930 u2_ref_wd_y = ps_pred->u2_frm_wd;
931 puc_ref = ps_pred->pu1_y_ref;
932 if(ps_pred->u1_dydx & 0x3)
934 if(ps_pred->u1_dydx >> 2)
937 u4_wd_y = ps_pred->i1_mb_partwidth;
938 u4_ht_y = ps_pred->i1_mb_partheight;
939 uc_dx = ps_pred->u1_dydx;
943 pu1_dest_y = ps_pred->pu1_rec_y_u;
944 u2_dst_wd = ps_pred->u2_dst_stride;
946 ps_dec->apf_inter_pred_luma[ps_pred->u1_dydx](puc_ref, pu1_dest_y,
951 ps_pred->u1_dydx);
953 ps_pred++;
959 u2_ref_wd_uv = ps_pred->u2_frm_wd;
960 pu1_ref_u = ps_pred->pu1_u_ref;
962 u4_wd_uv = ps_pred->i1_mb_partwidth;
963 u4_ht_uv = ps_pred->i1_mb_partheight;
964 uc_dx = ps_pred->u1_dydx; /* 8*dy + dx */
968 pu1_dest_u = ps_pred->pu1_rec_y_u;
969 u2_dst_wd = ps_pred->u2_dst_stride;
971 ps_pred++;
1007 pred_info_t *ps_pred ;
1035 ps_pred = ps_dec->ps_pred ;
1038 ps_pred_y_forw = ps_pred;
1039 ps_pred_y_back = ps_pred;
1040 ps_pred_cr_forw = ps_pred;
1059 const UWORD8 u1_is_bi_direct = ps_pred->u1_is_bi_direct;
1066 * ps_pred->i1_pod_ht is non zero when MBAFF is present. In case of MBAFF the reference data
1070 if(ps_pred->i1_pod_ht)
1072 u2_ref_wd_y = ps_pred->u2_u1_ref_buf_wd;
1073 puc_ref = ps_pred->pu1_dma_dest_addr;
1077 u2_ref_wd_y = ps_pred->u2_frm_wd;
1078 puc_ref = ps_pred->pu1_y_ref;
1082 if(ps_pred->u1_dydx & 0x3)
1084 if(ps_pred->u1_dydx >> 2)
1086 u4_wd_y = ps_pred->i1_mb_partwidth;
1087 u4_ht_y = ps_pred->i1_mb_partheight;
1089 uc_dx = ps_pred->u1_dydx;
1094 pu1_dest_y = ps_pred->pu1_rec_y_u;
1095 u2_row_buf_wd_y = ps_pred->u2_dst_stride;
1096 u2_dst_wd = ps_pred->u2_dst_stride;
1098 ps_pred_y_forw = ps_pred;
1105 ps_pred_y_back = ps_pred;
1111 if(ps_pred->i1_pod_ht)
1113 pu1_pred = ps_pred->pu1_pred;
1114 pu1_dma_dst = ps_pred->pu1_dma_dest_addr;
1115 u1_dma_wd = ps_pred->u1_dma_wd_y;
1116 u1_dma_ht = ps_pred->u1_dma_ht_y;
1118 if(ps_pred->i1_pod_ht < 0)
1120 pu1_dma_dst = pu1_dma_dst - (ps_pred->i1_pod_ht * ps_pred->u2_u1_ref_buf_wd);
1124 ih264d_pad_on_demand(ps_pred, LUM_BLK);
1126 ps_dec->apf_inter_pred_luma[ps_pred->u1_dydx](puc_ref, pu1_dest_y,
1132 ps_pred->u1_dydx);
1133 ps_pred++;
1141 u1_dma_ht = ps_pred->i1_dma_ht;
1143 if(ps_pred->i1_pod_ht)
1145 pu1_pred = ps_pred->pu1_pred_u;
1146 pu1_dma_dst = ps_pred->pu1_dma_dest_addr;
1147 u1_dma_ht = ps_pred->u1_dma_ht_uv;
1148 u1_dma_wd = ps_pred->u1_dma_wd_uv * YUV420SP_FACTOR;
1150 if(ps_pred->i1_pod_ht < 0)
1153 pu1_dma_dst -= (ps_pred->i1_pod_ht
1154 * ps_pred->u2_u1_ref_buf_wd
1161 pu1_dma_dst += (ps_pred->i1_dma_ht
1162 * ps_pred->u2_u1_ref_buf_wd);
1163 pu1_pred = ps_pred->pu1_pred_v;
1165 ih264d_pad_on_demand(ps_pred, CHROM_BLK);
1168 if(ps_pred->i1_pod_ht)
1170 pu1_ref_u = ps_pred->pu1_dma_dest_addr;
1172 u2_ref_wd_uv = ps_pred->u2_u1_ref_buf_wd
1177 u2_ref_wd_uv = ps_pred->u2_frm_wd;
1178 pu1_ref_u = ps_pred->pu1_u_ref;
1182 u4_wd_uv = ps_pred->i1_mb_partwidth;
1183 u4_ht_uv = ps_pred->i1_mb_partheight;
1184 uc_dx = ps_pred->u1_dydx; /* 8*dy + dx */
1189 pu1_dest_u = ps_pred->pu1_rec_y_u;
1191 pu1_dest_v = ps_pred->u1_pi1_wt_ofst_rec_v;
1192 u2_row_buf_wd_uv = ps_pred->u2_dst_stride;
1193 u2_dst_wd = ps_pred->u2_dst_stride;
1195 ps_pred_cr_forw = ps_pred;
1204 ps_pred->pu1_rec_y_u = pu1_dest_u;
1205 ps_pred->u1_pi1_wt_ofst_rec_v = pu1_dest_v;
1208 ps_pred++;
1218 /* ps_pred now points to the Y entry of the 0,0 component */
1224 if((ps_pred + 1)->i1_pod_ht)
1226 pu1_pred = (ps_pred + 1)->pu1_pred_u;
1227 pu1_dma_dst = (ps_pred + 1)->pu1_dma_dest_addr;
1228 u1_dma_ht = (ps_pred + 1)->u1_dma_ht_uv;
1229 u1_dma_wd = (ps_pred + 1)->u1_dma_wd_uv
1232 if((ps_pred + 1)->i1_pod_ht < 0)
1235 pu1_dma_dst -= ((ps_pred + 1)->i1_pod_ht
1236 * (ps_pred + 1)->u2_u1_ref_buf_wd
1241 pu1_dma_dst += ((ps_pred + 1)->i1_dma_ht
1242 * (ps_pred + 1)->u2_u1_ref_buf_wd); //(u1_dma_ht * u1_dma_wd);//
1243 pu1_pred = (ps_pred + 1)->pu1_pred_v;
1244 ih264d_pad_on_demand(ps_pred + 1, CHROM_BLK);
1248 ih264d_multiplex_ref_data(ps_dec, ps_pred, pu1_dest_y,
1252 ps_pred += 2;
1391 pred_info_t *ps_pred,
1406 if(ps_pred->i1_pod_ht)
1408 pu1_ref_y = ps_pred->pu1_dma_dest_addr;
1410 u2_ref_wd_y = ps_pred->u2_u1_ref_buf_wd;
1414 pu1_ref_y = ps_pred->pu1_y_ref;
1415 u2_ref_wd_y = ps_pred->u2_frm_wd;
1418 ps_pred++;
1419 if(ps_pred->i1_pod_ht)
1421 pu1_ref_u = ps_pred->pu1_dma_dest_addr;
1422 u2_ref_wd_uv = ps_pred->u2_u1_ref_buf_wd * YUV420SP_FACTOR;
1427 pu1_ref_u = ps_pred->pu1_u_ref;
1428 u2_ref_wd_uv = ps_pred->u2_frm_wd;
1432 u1_dydx = ps_pred->u1_dydx;
1442 pred_info_t * ps_prv_pred = ps_pred - 2;
1510 void ih264d_pad_on_demand(pred_info_t *ps_pred, UWORD8 lum_chrom_blk)
1519 u1_wd_stride = (ps_pred->u2_u1_ref_buf_wd >> 2) * YUV420SP_FACTOR;
1520 u1_dma_ht = ps_pred->i1_dma_ht;
1522 pu4_pod_src_u = (UWORD32 *)ps_pred->pu1_dma_dest_addr;
1528 i1_ht = ps_pred->i1_pod_ht;
1555 pu4_pod_src = (UWORD32 *)ps_pred->pu1_dma_dest_addr;
1557 u1_wd_stride = ps_pred->u2_u1_ref_buf_wd >> 2;
1558 i1_ht = ps_pred->i1_pod_ht;
1566 pu4_pod_src += (ps_pred->i1_dma_ht - 1) * u1_wd_stride;
1567 pu4_pod_dst += (ps_pred->i1_dma_ht - i1_ht) * u1_wd_stride;