Lines Matching full:plane

55 void av1_subtract_txb(MACROBLOCK *x, int plane, BLOCK_SIZE plane_bsize,  in av1_subtract_txb()  argument
59 struct macroblock_plane *const p = &x->plane[plane]; in av1_subtract_txb()
60 const struct macroblockd_plane *const pd = &x->e_mbd.plane[plane]; in av1_subtract_txb()
74 void av1_subtract_plane(MACROBLOCK *x, BLOCK_SIZE plane_bsize, int plane) { in av1_subtract_plane() argument
75 struct macroblock_plane *const p = &x->plane[plane]; in av1_subtract_plane()
76 const struct macroblockd_plane *const pd = &x->e_mbd.plane[plane]; in av1_subtract_plane()
87 int av1_optimize_b(const struct AV1_COMP *cpi, MACROBLOCK *x, int plane, in av1_optimize_b() argument
91 struct macroblock_plane *const p = &x->plane[plane]; in av1_optimize_b()
97 *rate_cost = av1_cost_skip_txb(&x->coeff_costs, txb_ctx, plane, tx_size); in av1_optimize_b()
101 return av1_optimize_txb(cpi, x, plane, block, tx_size, tx_type, txb_ctx, in av1_optimize_b()
143 void av1_dropout_qcoeff(MACROBLOCK *mb, int plane, int block, TX_SIZE tx_size, in av1_dropout_qcoeff() argument
164 av1_dropout_qcoeff_num(mb, plane, block, tx_size, tx_type, dropout_num_before, in av1_dropout_qcoeff()
168 void av1_dropout_qcoeff_num(MACROBLOCK *mb, int plane, int block, in av1_dropout_qcoeff_num() argument
171 const struct macroblock_plane *const p = &mb->plane[plane]; in av1_dropout_qcoeff_num()
284 void av1_xform_dc_only(MACROBLOCK *x, int plane, int block, in av1_xform_dc_only() argument
287 const struct macroblock_plane *const p = &x->plane[plane]; in av1_xform_dc_only()
296 void av1_xform_quant(MACROBLOCK *x, int plane, int block, int blk_row, in av1_xform_quant() argument
299 av1_xform(x, plane, block, blk_row, blk_col, plane_bsize, txfm_param); in av1_xform_quant()
300 av1_quant(x, plane, block, txfm_param, qparam); in av1_xform_quant()
303 void av1_xform(MACROBLOCK *x, int plane, int block, int blk_row, int blk_col, in av1_xform() argument
305 const struct macroblock_plane *const p = &x->plane[plane]; in av1_xform()
316 void av1_quant(MACROBLOCK *x, int plane, int block, TxfmParam *txfm_param, in av1_quant() argument
318 const struct macroblock_plane *const p = &x->plane[plane]; in av1_quant()
383 const MACROBLOCKD *xd, int plane, TX_SIZE tx_size, in av1_setup_qmatrix() argument
385 qparam->qmatrix = av1_get_qmatrix(quant_params, xd, plane, tx_size, tx_type); in av1_setup_qmatrix()
387 av1_get_iqmatrix(quant_params, xd, plane, tx_size, tx_type); in av1_setup_qmatrix()
390 static void encode_block(int plane, int block, int blk_row, int blk_col, in encode_block() argument
400 struct macroblock_plane *const p = &x->plane[plane]; in encode_block()
401 struct macroblockd_plane *const pd = &xd->plane[plane]; in encode_block()
415 if (!is_blk_skip(x->txfm_search_info.blk_skip, plane, blk_skip_idx) && in encode_block()
431 av1_setup_qmatrix(&cm->quant_params, xd, plane, tx_size, tx_type, in encode_block()
433 av1_xform_quant(x, plane, block, blk_row, blk_col, plane_bsize, &txfm_param, in encode_block()
444 get_txb_ctx(plane_bsize, tx_size, plane, a, l, &txb_ctx); in encode_block()
445 av1_optimize_b(args->cpi, x, plane, block, tx_size, tx_type, &txb_ctx, in encode_block()
449 av1_dropout_qcoeff(x, plane, block, tx_size, tx_type, in encode_block()
457 av1_set_txb_context(x, plane, block, tx_size, a, l); in encode_block()
460 // As long as any YUV plane has non-zero quantized transform coefficients, in encode_block()
463 av1_inverse_transform_block(xd, dqcoeff, plane, tx_type, tx_size, dst, in encode_block()
477 if (p->eobs[block] == 0 && plane == 0) { in encode_block()
502 plane, pixel_c, pixel_r, blk_w, blk_h, in encode_block()
508 static void encode_block_inter(int plane, int block, int blk_row, int blk_col, in encode_block_inter() argument
515 const struct macroblockd_plane *const pd = &xd->plane[plane]; in encode_block_inter()
516 const int max_blocks_high = max_block_high(xd, plane_bsize, plane); in encode_block_inter()
517 const int max_blocks_wide = max_block_wide(xd, plane_bsize, plane); in encode_block_inter()
522 plane ? av1_get_max_uv_txsize(mbmi->bsize, pd->subsampling_x, in encode_block_inter()
526 if (!plane) { in encode_block_inter()
531 if (tx_size == plane_tx_size || plane) { in encode_block_inter()
532 encode_block(plane, block, blk_row, blk_col, plane_bsize, tx_size, arg, in encode_block_inter()
554 encode_block_inter(plane, block, offsetr, offsetc, plane_bsize, sub_txs, in encode_block_inter()
563 const MACROBLOCKD *const xd, BLOCK_SIZE plane_bsize, int plane, in av1_foreach_transformed_block_in_plane() argument
565 const struct macroblockd_plane *const pd = &xd->plane[plane]; in av1_foreach_transformed_block_in_plane()
568 // transform size varies per plane, look it up in a common way. in av1_foreach_transformed_block_in_plane()
569 const TX_SIZE tx_size = av1_get_tx_size(plane, xd); in av1_foreach_transformed_block_in_plane()
574 visit(plane, 0, 0, 0, plane_bsize, tx_size, arg); in av1_foreach_transformed_block_in_plane()
584 const int max_blocks_wide = max_block_wide(xd, plane_bsize, plane); in av1_foreach_transformed_block_in_plane()
585 const int max_blocks_high = max_block_high(xd, plane_bsize, plane); in av1_foreach_transformed_block_in_plane()
603 visit(plane, i, blk_row, blk_col, plane_bsize, tx_size, arg); in av1_foreach_transformed_block_in_plane()
618 static void encode_block_pass1(int plane, int block, int blk_row, int blk_col, in encode_block_pass1() argument
626 struct macroblock_plane *const p = &x->plane[plane]; in encode_block_pass1()
627 struct macroblockd_plane *const pd = &xd->plane[plane]; in encode_block_pass1()
639 av1_setup_qmatrix(&cm->quant_params, xd, plane, tx_size, DCT_DCT, in encode_block_pass1()
642 av1_xform_quant(x, plane, block, blk_row, blk_col, plane_bsize, &txfm_param, in encode_block_pass1()
683 for (int plane = 0; plane < num_planes; ++plane) { in av1_encode_sb() local
684 const struct macroblockd_plane *const pd = &xd->plane[plane]; in av1_encode_sb()
687 if (plane && !xd->is_chroma_ref) break; in av1_encode_sb()
693 const TX_SIZE max_tx_size = get_vartx_max_txsize(xd, plane_bsize, plane); in av1_encode_sb()
700 av1_get_entropy_contexts(plane_bsize, pd, ctx.ta[plane], ctx.tl[plane]); in av1_encode_sb()
701 av1_subtract_plane(x, plane_bsize, plane); in av1_encode_sb()
702 arg.ta = ctx.ta[plane]; in av1_encode_sb()
703 arg.tl = ctx.tl[plane]; in av1_encode_sb()
718 encode_block_inter(plane, block, blk_row, blk_col, plane_bsize, in av1_encode_sb()
728 static void encode_block_intra(int plane, int block, int blk_row, int blk_col, in encode_block_intra() argument
737 struct macroblock_plane *const p = &x->plane[plane]; in encode_block_intra()
738 struct macroblockd_plane *const pd = &xd->plane[plane]; in encode_block_intra()
740 PLANE_TYPE plane_type = get_plane_type(plane); in encode_block_intra()
746 av1_predict_intra_block_facade(cm, xd, plane, blk_col, blk_row, tx_size); in encode_block_intra()
750 if (plane == 0 && is_blk_skip(x->txfm_search_info.blk_skip, plane, in encode_block_intra()
755 av1_subtract_txb(x, plane, plane_bsize, blk_col, blk_row, tx_size); in encode_block_intra()
775 av1_setup_qmatrix(&cm->quant_params, xd, plane, tx_size, tx_type, in encode_block_intra()
778 av1_xform_quant(x, plane, block, blk_row, blk_col, plane_bsize, &txfm_param, in encode_block_intra()
798 get_txb_ctx(plane_bsize, tx_size, plane, a, l, &txb_ctx); in encode_block_intra()
799 av1_optimize_b(args->cpi, x, plane, block, tx_size, tx_type, &txb_ctx, in encode_block_intra()
803 av1_dropout_qcoeff(x, plane, block, tx_size, tx_type, in encode_block_intra()
809 av1_inverse_transform_block(xd, dqcoeff, plane, tx_type, tx_size, dst, in encode_block_intra()
819 if (*eob == 0 && plane == 0) { in encode_block_intra()
835 if (plane == AOM_PLANE_Y && xd->cfl.store_y) { in encode_block_intra()
841 static void encode_block_intra_and_set_context(int plane, int block, in encode_block_intra_and_set_context() argument
845 encode_block_intra(plane, block, blk_row, blk_col, plane_bsize, tx_size, arg); in encode_block_intra_and_set_context()
851 av1_set_txb_context(x, plane, block, tx_size, a, l); in encode_block_intra_and_set_context()
855 BLOCK_SIZE bsize, int plane, RUN_TYPE dry_run, in av1_encode_intra_block_plane() argument
859 if (plane && !xd->is_chroma_ref) return; in av1_encode_intra_block_plane()
861 const struct macroblockd_plane *const pd = &xd->plane[plane]; in av1_encode_intra_block_plane()
874 xd, plane_bsize, plane, encode_block_intra_and_set_context, &arg); in av1_encode_intra_block_plane()