2 * Copyright (c) 2010 The WebM project authors. All Rights Reserved.
4 * Use of this source code is governed by a BSD-style license
5 * that can be found in the LICENSE file in the root of the source
6 * tree. An additional intellectual property rights grant can be found
7 * in the file PATENTS. All contributing project authors may
8 * be found in the AUTHORS file in the root of the source tree.
11 #ifndef VP9_ENCODER_VP9_ENCODEMB_H_
12 #define VP9_ENCODER_VP9_ENCODEMB_H_
14 #include "./vpx_config.h"
15 #include "vp9/encoder/vp9_block.h"
21 struct encode_b_args {
28 int vp9_optimize_b(MACROBLOCK *mb, int plane, int block, TX_SIZE tx_size,
30 void vp9_encode_sb(MACROBLOCK *x, BLOCK_SIZE bsize);
31 void vp9_encode_sby_pass1(MACROBLOCK *x, BLOCK_SIZE bsize);
32 void vp9_xform_quant_fp(MACROBLOCK *x, int plane, int block, int row, int col,
33 BLOCK_SIZE plane_bsize, TX_SIZE tx_size);
34 void vp9_xform_quant_dc(MACROBLOCK *x, int plane, int block, int row, int col,
35 BLOCK_SIZE plane_bsize, TX_SIZE tx_size);
36 void vp9_xform_quant(MACROBLOCK *x, int plane, int block, int row, int col,
37 BLOCK_SIZE plane_bsize, TX_SIZE tx_size);
39 void vp9_subtract_plane(MACROBLOCK *x, BLOCK_SIZE bsize, int plane);
41 void vp9_encode_block_intra(int plane, int block, int row, int col,
42 BLOCK_SIZE plane_bsize, TX_SIZE tx_size, void *arg);
44 void vp9_encode_intra_block_plane(MACROBLOCK *x, BLOCK_SIZE bsize, int plane,
45 int enable_optimize_b);
51 #endif // VP9_ENCODER_VP9_ENCODEMB_H_