ref: 1fbc81a970f5b027386d17aba45e2bd4e3574593
parent: a0c11928dbefb30a76d5ec47514b8bc1f1cbbf9f
parent: a4c69e9a0f4e7d8a46433c4b6f1d0cca66328fd6
author: Yaowu Xu <yaowu@google.com>
date: Fri May 20 03:45:42 EDT 2011
Merge "revise two function definitions with less parameters"
--- a/vp8/encoder/encodeintra.c
+++ b/vp8/encoder/encodeintra.c
@@ -27,10 +27,16 @@
#else
#define IF_RTCD(x) NULL
#endif
-void vp8_encode_intra4x4block(const VP8_ENCODER_RTCD *rtcd, MACROBLOCK *x, BLOCK *be, BLOCKD *b, int best_mode)
+
+
+void vp8_encode_intra4x4block(const VP8_ENCODER_RTCD *rtcd,
+ MACROBLOCK *x, int ib)
{
+ BLOCKD *b = &x->e_mbd.block[ib];
+ BLOCK *be = &x->block[ib];
+
RECON_INVOKE(&rtcd->common->recon, intra4x4_predict)
- (b, best_mode, b->predictor);
+ (b, b->bmi.mode, b->predictor);
ENCODEMB_INVOKE(&rtcd->encodemb, subb)(be, b, 16);
@@ -51,13 +57,7 @@
vp8_intra_prediction_down_copy(x);
for (i = 0; i < 16; i++)
- {
- BLOCK *be = &mb->block[i];
- BLOCKD *b = &x->block[i];
-
- vp8_encode_intra4x4block(rtcd, mb, be, b, b->bmi.mode);
- }
-
+ vp8_encode_intra4x4block(rtcd, mb, i);
return;
}
--- a/vp8/encoder/encodeintra.h
+++ b/vp8/encoder/encodeintra.h
@@ -16,6 +16,6 @@
void vp8_encode_intra16x16mby(const VP8_ENCODER_RTCD *, MACROBLOCK *x);
void vp8_encode_intra16x16mbuv(const VP8_ENCODER_RTCD *, MACROBLOCK *x);
void vp8_encode_intra4x4mby(const VP8_ENCODER_RTCD *, MACROBLOCK *mb);
-void vp8_encode_intra4x4block(const VP8_ENCODER_RTCD *, MACROBLOCK *x, BLOCK *be, BLOCKD *b, int best_mode);
-
+void vp8_encode_intra4x4block(const VP8_ENCODER_RTCD *rtcd,
+ MACROBLOCK *x, int ib);
#endif
--- a/vp8/encoder/firstpass.c
+++ b/vp8/encoder/firstpass.c
@@ -100,10 +100,8 @@
{
for (i = 0; i < 16; i++)
{
- BLOCKD *b = &x->e_mbd.block[i];
- BLOCK *be = &x->block[i];
-
- vp8_encode_intra4x4block(IF_RTCD(&cpi->rtcd), x, be, b, B_DC_PRED);
+ x->e_mbd.block[i].bmi.mode = B_DC_PRED;
+ vp8_encode_intra4x4block(IF_RTCD(&cpi->rtcd), x, i);
}
}
--- a/vp8/encoder/pickinter.c
+++ b/vp8/encoder/pickinter.c
@@ -170,8 +170,7 @@
static int pick_intra4x4block(
const VP8_ENCODER_RTCD *rtcd,
MACROBLOCK *x,
- BLOCK *be,
- BLOCKD *b,
+ int ib,
B_PREDICTION_MODE *best_mode,
B_PREDICTION_MODE above,
B_PREDICTION_MODE left,
@@ -179,6 +178,9 @@
int *bestrate,
int *bestdistortion)
{
+
+ BLOCKD *b = &x->e_mbd.block[ib];
+ BLOCK *be = &x->block[ib];
B_PREDICTION_MODE mode;
int best_rd = INT_MAX; // 1<<30
int rate;
@@ -214,8 +216,7 @@
}
b->bmi.mode = (B_PREDICTION_MODE)(*best_mode);
- vp8_encode_intra4x4block(rtcd, x, be, b, b->bmi.mode);
-
+ vp8_encode_intra4x4block(rtcd, x, ib);
return best_rd;
}
@@ -245,8 +246,7 @@
B_PREDICTION_MODE UNINITIALIZED_IS_SAFE(best_mode);
int UNINITIALIZED_IS_SAFE(r), UNINITIALIZED_IS_SAFE(d);
- pick_intra4x4block(rtcd, mb, mb->block + i, xd->block + i,
- &best_mode, A, L, &r, &d);
+ pick_intra4x4block(rtcd, mb, i, &best_mode, A, L, &r, &d);
cost += r;
distortion += d;