Lines Matching defs:col
92 int row = td->row, col = td->col, row7 = td->row7;
94 int bw4 = ff_vp9_bwh_tab[1][b->bs][0], w4 = FFMIN(s->cols - col, bw4);
96 int have_a = row > 0, have_l = col > td->tile_col_start;
107 s->s.h.segmentation.pred_prob[s->above_segpred_ctx[col] +
116 int idx_base = (y + row) * 8 * s->sb_cols + col;
126 memset(&s->above_segpred_ctx[col], 1, w4);
132 memset(&s->above_segpred_ctx[col], 0, w4);
137 setctx_2d(&s->s.frames[CUR_FRAME].segmentation_map[row * 8 * s->sb_cols + col],
144 int c = td->left_skip_ctx[row7] + s->above_skip_ctx[col];
157 c = s->above_intra_ctx[col] + td->left_intra_ctx[row7];
160 c = have_a ? 2 * s->above_intra_ctx[col] :
172 c = (s->above_skip_ctx[col] ? max_tx :
173 s->above_txfm_ctx[col]) +
177 c = s->above_skip_ctx[col] ? 1 :
178 (s->above_txfm_ctx[col] * 2 > max_tx);
215 uint8_t *a = &s->above_mode_ctx[col * 2];
344 if (s->above_comp_ctx[col] && td->left_comp_ctx[row7]) {
346 } else if (s->above_comp_ctx[col]) {
350 c = 2 + (s->above_intra_ctx[col] ||
351 s->above_ref_ctx[col] == s->s.h.fixcompref);
353 c = (!s->above_intra_ctx[col] &&
354 s->above_ref_ctx[col] == s->s.h.fixcompref) ^
359 c = s->above_comp_ctx[col] ? 3 :
360 (!s->above_intra_ctx[col] && s->above_ref_ctx[col] == s->s.h.fixcompref);
382 if (s->above_intra_ctx[col]) {
389 c = 1 + 2 * (s->above_ref_ctx[col] != s->s.h.varcompref[1]);
391 int refl = td->left_ref_ctx[row7], refa = s->above_ref_ctx[col];
395 } else if (!td->left_comp_ctx[row7] && !s->above_comp_ctx[col]) {
409 } else if (!s->above_comp_ctx[col]) {
421 if (s->above_intra_ctx[col]) {
423 } else if (s->above_comp_ctx[col]) {
424 c = 4 * (s->above_ref_ctx[col] != s->s.h.varcompref[1]);
426 c = 3 * (s->above_ref_ctx[col] != s->s.h.varcompref[1]);
446 if (have_a && !s->above_intra_ctx[col]) {
449 if (s->above_comp_ctx[col]) {
451 !s->above_ref_ctx[col]);
453 c = (3 * !s->above_ref_ctx[col]) +
456 } else if (s->above_comp_ctx[col]) {
458 (!s->s.h.fixcompref || !s->above_ref_ctx[col]);
460 c = 2 * !td->left_ref_ctx[row7] + 2 * !s->above_ref_ctx[col];
462 } else if (s->above_intra_ctx[col]) {
464 } else if (s->above_comp_ctx[col]) {
465 c = 1 + (!s->s.h.fixcompref || !s->above_ref_ctx[col]);
467 c = 4 * (!s->above_ref_ctx[col]);
489 if (s->above_intra_ctx[col]) {
491 } else if (s->above_comp_ctx[col]) {
493 s->above_ref_ctx[col] == 1);
494 } else if (!s->above_ref_ctx[col]) {
497 c = 4 * (s->above_ref_ctx[col] == 1);
499 } else if (s->above_intra_ctx[col]) {
510 } else if (s->above_comp_ctx[col]) {
512 if (td->left_ref_ctx[row7] == s->above_ref_ctx[col]) {
520 s->above_ref_ctx[col] == 1);
523 (s->s.h.fixcompref == 1 || s->above_ref_ctx[col] == 1);
526 if (!s->above_ref_ctx[col]) {
530 c = 3 * (s->above_ref_ctx[col] == 1) +
533 } else if (!s->above_ref_ctx[col]) {
540 c = 4 * (s->above_ref_ctx[col] == 1);
543 2 * (s->above_ref_ctx[col] == 1);
546 if (s->above_intra_ctx[col] ||
547 (!s->above_comp_ctx[col] && !s->above_ref_ctx[col])) {
549 } else if (s->above_comp_ctx[col]) {
550 c = 3 * (s->s.h.fixcompref == 1 || s->above_ref_ctx[col] == 1);
552 c = 4 * (s->above_ref_ctx[col] == 1);
587 int c = inter_mode_ctx_lut[s->above_mode_ctx[col + off[b->bs]]]
602 if (have_a && s->above_mode_ctx[col] >= NEARESTMV) {
604 c = s->above_filter_ctx[col] == td->left_filter_ctx[row7] ?
607 c = s->above_filter_ctx[col];
624 int c = inter_mode_ctx_lut[s->above_mode_ctx[col]][td->left_mode_ctx[row7]];
734 case 1: SET_CTXS(s, above, col, 1); break;
735 case 2: SET_CTXS(s, above, col, 2); break;
736 case 4: SET_CTXS(s, above, col, 4); break;
737 case 8: SET_CTXS(s, above, col, 8); break;
756 AV_COPY32(&s->above_mv_ctx[col * 2 + 0][0], &b->mv[2][0]);
757 AV_COPY32(&s->above_mv_ctx[col * 2 + 0][1], &b->mv[2][1]);
758 AV_WN32A(&s->above_mv_ctx[col * 2 + 1][0], mv0);
759 AV_WN32A(&s->above_mv_ctx[col * 2 + 1][1], mv1);
764 AV_WN32A(&s->above_mv_ctx[col * 2 + n][0], mv0);
765 AV_WN32A(&s->above_mv_ctx[col * 2 + n][1], mv1);
776 int x, o = (row + y) * s->sb_cols * 8 + col;
966 int row = td->row, col = td->col;
971 int end_x = FFMIN(2 * (s->cols - col), w4);
980 uint8_t *a = &s->above_y_nnz_ctx[col * 2];
1102 a = &s->above_uv_nnz_ctx[pl][col << !s->ss_h];
1148 // we make VP9Filter.mask uint64_t (i.e. row/col all single variable)
1149 // and make the LUT 5-indexed (bl, bp, is_uv, tx and row/col), and then
1182 // for odd lines, if the odd col is not being filtered,
1190 // if a/c are even row/col and b/d are odd, and d is skipped,
1215 // at odd UV col/row edges tx16/tx32 loopfilter edges, force
1261 void ff_vp9_decode_block(VP9TileData *td, int row, int col,
1275 td->col = col;
1276 td->col7 = col & 7;
1278 td->min_mv.x = -(128 + col * 64);
1280 td->max_mv.x = 128 + (s->cols - col - w4) * 64;
1293 td->block_structure[td->nb_block_structure].col = col;
1309 memset(&s->above_skip_ctx[col], 1, w4);
1336 case 1: SPLAT_ZERO_YUV(s->above, nnz_ctx, col, 1, h); break;
1337 case 2: SPLAT_ZERO_YUV(s->above, nnz_ctx, col, 2, h); break;
1338 case 4: SPLAT_ZERO_YUV(s->above, nnz_ctx, col, 4, h); break;
1339 case 8: SPLAT_ZERO_YUV(s->above, nnz_ctx, col, 8, h); break;
1365 emu[0] = (col + w4) * 8 * bytesperpixel > f->linesize[0] ||
1367 emu[1] = ((col + w4) * 8 >> s->ss_h) * bytesperpixel > f->linesize[1] ||
1399 int w = FFMIN(s->cols - col, w4) * 8, h = FFMIN(s->rows - row, h4) * 8, n, o = 0;
1413 int w = FFMIN(s->cols - col, w4) * 8 >> s->ss_h;
1434 int x_end = FFMIN(s->cols - col, w4), y_end = FFMIN(s->rows - row, h4);
1441 s->cols & 1 && col + w4 >= s->cols ? s->cols & 7 : 0,