Combine vp9_encode_block_intra and encode_block_intra

Change-Id: I79091fb677b64892ecca2fb466fde14602d8cdfc
This commit is contained in:
Hui Su 2014-10-22 13:01:40 -07:00
Родитель 982dab6050
Коммит 0928da3b6e
3 изменённых файлов: 12 добавлений и 21 удалений

Просмотреть файл

@ -29,12 +29,6 @@ struct optimize_ctx {
ENTROPY_CONTEXT tl[MAX_MB_PLANE][16]; ENTROPY_CONTEXT tl[MAX_MB_PLANE][16];
}; };
struct encode_b_args {
MACROBLOCK *x;
struct optimize_ctx *ctx;
int8_t *skip;
};
void vp9_subtract_block_c(int rows, int cols, void vp9_subtract_block_c(int rows, int cols,
int16_t *diff, ptrdiff_t diff_stride, int16_t *diff, ptrdiff_t diff_stride,
const uint8_t *src, ptrdiff_t src_stride, const uint8_t *src, ptrdiff_t src_stride,
@ -802,7 +796,7 @@ void vp9_encode_sb(MACROBLOCK *x, BLOCK_SIZE bsize) {
} }
} }
static void encode_block_intra(int plane, int block, BLOCK_SIZE plane_bsize, void vp9_encode_block_intra(int plane, int block, BLOCK_SIZE plane_bsize,
TX_SIZE tx_size, void *arg) { TX_SIZE tx_size, void *arg) {
struct encode_b_args* const args = arg; struct encode_b_args* const args = arg;
MACROBLOCK *const x = args->x; MACROBLOCK *const x = args->x;
@ -1040,18 +1034,10 @@ static void encode_block_intra(int plane, int block, BLOCK_SIZE plane_bsize,
*(args->skip) = 0; *(args->skip) = 0;
} }
void vp9_encode_block_intra(MACROBLOCK *x, int plane, int block,
BLOCK_SIZE plane_bsize, TX_SIZE tx_size,
int8_t *skip) {
struct encode_b_args arg = {x, NULL, skip};
encode_block_intra(plane, block, plane_bsize, tx_size, &arg);
}
void vp9_encode_intra_block_plane(MACROBLOCK *x, BLOCK_SIZE bsize, int plane) { void vp9_encode_intra_block_plane(MACROBLOCK *x, BLOCK_SIZE bsize, int plane) {
const MACROBLOCKD *const xd = &x->e_mbd; const MACROBLOCKD *const xd = &x->e_mbd;
struct encode_b_args arg = {x, NULL, &xd->mi[0].src_mi->mbmi.skip}; struct encode_b_args arg = {x, NULL, &xd->mi[0].src_mi->mbmi.skip};
vp9_foreach_transformed_block_in_plane(xd, bsize, plane, encode_block_intra, vp9_foreach_transformed_block_in_plane(xd, bsize, plane,
&arg); vp9_encode_block_intra, &arg);
} }

Просмотреть файл

@ -18,6 +18,11 @@
extern "C" { extern "C" {
#endif #endif
struct encode_b_args {
MACROBLOCK *x;
struct optimize_ctx *ctx;
int8_t *skip;
};
void vp9_encode_sb(MACROBLOCK *x, BLOCK_SIZE bsize); void vp9_encode_sb(MACROBLOCK *x, BLOCK_SIZE bsize);
void vp9_encode_sby_pass1(MACROBLOCK *x, BLOCK_SIZE bsize); void vp9_encode_sby_pass1(MACROBLOCK *x, BLOCK_SIZE bsize);
void vp9_xform_quant_fp(MACROBLOCK *x, int plane, int block, void vp9_xform_quant_fp(MACROBLOCK *x, int plane, int block,
@ -29,9 +34,8 @@ void vp9_xform_quant(MACROBLOCK *x, int plane, int block,
void vp9_subtract_plane(MACROBLOCK *x, BLOCK_SIZE bsize, int plane); void vp9_subtract_plane(MACROBLOCK *x, BLOCK_SIZE bsize, int plane);
void vp9_encode_block_intra(MACROBLOCK *x, int plane, int block, void vp9_encode_block_intra(int plane, int block, BLOCK_SIZE plane_bsize,
BLOCK_SIZE plane_bsize, TX_SIZE tx_size, TX_SIZE tx_size, void *arg);
int8_t *skip);
void vp9_encode_intra_block_plane(MACROBLOCK *x, BLOCK_SIZE bsize, int plane); void vp9_encode_intra_block_plane(MACROBLOCK *x, BLOCK_SIZE bsize, int plane);

Просмотреть файл

@ -478,7 +478,8 @@ static void block_rd_txfm(int plane, int block, BLOCK_SIZE plane_bsize,
return; return;
if (!is_inter_block(mbmi)) { if (!is_inter_block(mbmi)) {
vp9_encode_block_intra(x, plane, block, plane_bsize, tx_size, &mbmi->skip); struct encode_b_args arg = {x, NULL, &mbmi->skip};
vp9_encode_block_intra(plane, block, plane_bsize, tx_size, &arg);
#if CONFIG_VP9_HIGHBITDEPTH #if CONFIG_VP9_HIGHBITDEPTH
if (xd->cur_buf->flags & YV12_FLAG_HIGHBITDEPTH) { if (xd->cur_buf->flags & YV12_FLAG_HIGHBITDEPTH) {
dist_block(plane, block, tx_size, args, xd->bd); dist_block(plane, block, tx_size, args, xd->bd);