fix bigger-by-1 array

and use enums for that.
props to Nigel Tao (at google dot com) for the fix

Change-Id: I68194cb510760dd82a2ae83359154bf622502991
This commit is contained in:
Pascal Massimino 2011-03-13 22:38:44 -07:00
parent 7c5267e36e
commit 5c69e1bb4d
2 changed files with 8 additions and 7 deletions

View File

@ -468,16 +468,16 @@ static void DC8uvNoTopLeft(uint8_t *dst) { // DC with nothing
//-----------------------------------------------------------------------------
// default C implementations
VP8PredFunc VP8PredLuma4[11] = {
VP8PredFunc VP8PredLuma4[NUM_BMODES] = {
DC4, TM4, VE4, HE4, RD4, VR4, LD4, VL4, HD4, HU4
};
VP8PredFunc VP8PredLuma16[7] = {
VP8PredFunc VP8PredLuma16[NUM_B_DC_MODES] = {
DC16, TM16, VE16, HE16,
DC16NoTop, DC16NoLeft, DC16NoTopLeft
};
VP8PredFunc VP8PredChroma8[7] = {
VP8PredFunc VP8PredChroma8[NUM_B_DC_MODES] = {
DC8uv, TM8uv, VE8uv, HE8uv,
DC8uvNoTop, DC8uvNoLeft, DC8uvNoTopLeft
};

View File

@ -45,7 +45,8 @@ enum { B_DC_PRED = 0, // 4x4 modes
// special modes
B_DC_PRED_NOTOP = 4,
B_DC_PRED_NOLEFT = 5,
B_DC_PRED_NOTOPLEFT = 6 };
B_DC_PRED_NOTOPLEFT = 6,
NUM_B_DC_MODES = 7 };
enum { MB_FEATURE_TREE_PROBS = 3,
NUM_MB_SEGMENTS = 4,
@ -279,9 +280,9 @@ extern void (*VP8TransformWHT)(const int16_t* in, int16_t* out);
// *dst is the destination block, with stride BPS. Boundary samples are
// assumed accessible when needed.
typedef void (*VP8PredFunc)(uint8_t *dst);
extern VP8PredFunc VP8PredLuma16[7];
extern VP8PredFunc VP8PredChroma8[7];
extern VP8PredFunc VP8PredLuma4[11];
extern VP8PredFunc VP8PredLuma16[NUM_B_DC_MODES];
extern VP8PredFunc VP8PredChroma8[NUM_B_DC_MODES];
extern VP8PredFunc VP8PredLuma4[NUM_BMODES];
void VP8DspInit(); // must be called before anything using the above
void VP8DspInitTables(); // needs to be called no matter what.