Lines Matching refs:overlaps

47     if (pbi->overlaps != NULL)
49 vpx_free(pbi->overlaps);
50 pbi->overlaps = NULL;
53 pbi->overlaps = vpx_calloc(pbi->common.mb_rows * pbi->common.mb_cols,
56 if (pbi->overlaps == NULL)
64 vpx_free(pbi->overlaps);
65 pbi->overlaps = NULL;
68 /* Inserts a new overlap area value to the list of overlaps of a block */
69 static void assign_overlap(OVERLAP_NODE* overlaps,
76 /* Find and assign to the next empty overlap node in the list of overlaps.
80 if (overlaps[i].bmi == NULL)
82 overlaps[i].bmi = bmi;
83 overlaps[i].overlap = overlap;
124 /* If the block partly overlaps any previous MB, these coordinates
131 /* Calculate and assign overlaps for all blocks in this MB
132 * which the motion compensated block overlaps
134 /* Avoid calculating overlaps for blocks in later MBs */
147 /* Check if the overlapping block partly overlaps a previous MB
165 assign_overlap(b_ol_ul[row * 4 + col].overlaps, bmi, overlap);
233 calculate_overlaps_mb(mb_overlap->overlaps, bmi,
247 static void estimate_mv(const OVERLAP_NODE *overlaps, union b_mode_info *bmi)
257 if (overlaps[i].bmi == NULL)
259 col_acc += overlaps[i].overlap * overlaps[i].bmi->mv.as_mv.col;
260 row_acc += overlaps[i].overlap * overlaps[i].bmi->mv.as_mv.row;
261 overlap_sum += overlaps[i].overlap;
277 * overlaps for each block. Decides whether or not the MVs must be clamped.
304 estimate_mv(block_overlaps[i].overlaps, &(bmi[i]));
326 static void calc_prev_mb_overlaps(MB_OVERLAP *overlaps, MODE_INFO *prev_mi,
337 overlaps, mb_rows, mb_cols,
347 static void estimate_missing_mvs(MB_OVERLAP *overlaps,
353 vpx_memset(overlaps, 0, sizeof(MB_OVERLAP) * mb_rows * mb_cols);
354 /* First calculate the overlaps for all blocks */
364 calc_prev_mb_overlaps(overlaps, prev_mi,
377 * and calculate new MVs using the overlaps.
388 overlaps[mb_row*mb_cols + mb_col].overlaps;
410 estimate_missing_mvs(pbi->overlaps,