change partition flags SYM -> FWD|SYM

Originally committed as revision 5749 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
Stefan Gehrer 2006-07-14 18:56:17 +00:00
parent 77f173bef5
commit c90c39190e
2 changed files with 36 additions and 44 deletions

View File

@ -1037,16 +1037,12 @@ static void decode_mb_b(AVSContext *h, enum mb_t mb_type) {
if(mb_type & 1) { /* 16x8 macroblock types */ if(mb_type & 1) { /* 16x8 macroblock types */
if(flags & FWD0) if(flags & FWD0)
mv_pred(h, MV_FWD_X0, MV_FWD_C2, MV_PRED_TOP, BLK_16X8, 1); mv_pred(h, MV_FWD_X0, MV_FWD_C2, MV_PRED_TOP, BLK_16X8, 1);
if(flags & SYM0) { if(flags & SYM0)
mv_pred(h, MV_FWD_X0, MV_FWD_C2, MV_PRED_TOP, BLK_16X8, 1);
mv_pred_sym(h, &h->mv[MV_FWD_X0], BLK_16X8); mv_pred_sym(h, &h->mv[MV_FWD_X0], BLK_16X8);
}
if(flags & FWD1) if(flags & FWD1)
mv_pred(h, MV_FWD_X2, MV_FWD_A1, MV_PRED_LEFT, BLK_16X8, 1); mv_pred(h, MV_FWD_X2, MV_FWD_A1, MV_PRED_LEFT, BLK_16X8, 1);
if(flags & SYM1) { if(flags & SYM1)
mv_pred(h, MV_FWD_X2, MV_FWD_A1, MV_PRED_LEFT, BLK_16X8, 1); mv_pred_sym(h, &h->mv[MV_FWD_X2], BLK_16X8);
mv_pred_sym(h, &h->mv[9], BLK_16X8);
}
if(flags & BWD0) if(flags & BWD0)
mv_pred(h, MV_BWD_X0, MV_BWD_C2, MV_PRED_TOP, BLK_16X8, 0); mv_pred(h, MV_BWD_X0, MV_BWD_C2, MV_PRED_TOP, BLK_16X8, 0);
if(flags & BWD1) if(flags & BWD1)
@ -1054,16 +1050,12 @@ static void decode_mb_b(AVSContext *h, enum mb_t mb_type) {
} else { /* 8x16 macroblock types */ } else { /* 8x16 macroblock types */
if(flags & FWD0) if(flags & FWD0)
mv_pred(h, MV_FWD_X0, MV_FWD_B3, MV_PRED_LEFT, BLK_8X16, 1); mv_pred(h, MV_FWD_X0, MV_FWD_B3, MV_PRED_LEFT, BLK_8X16, 1);
if(flags & SYM0) { if(flags & SYM0)
mv_pred(h, MV_FWD_X0, MV_FWD_B3, MV_PRED_LEFT, BLK_8X16, 1);
mv_pred_sym(h, &h->mv[MV_FWD_X0], BLK_8X16); mv_pred_sym(h, &h->mv[MV_FWD_X0], BLK_8X16);
}
if(flags & FWD1) if(flags & FWD1)
mv_pred(h, MV_FWD_X1, MV_FWD_C2, MV_PRED_TOPRIGHT,BLK_8X16, 1); mv_pred(h, MV_FWD_X1, MV_FWD_C2, MV_PRED_TOPRIGHT,BLK_8X16, 1);
if(flags & SYM1) { if(flags & SYM1)
mv_pred(h, MV_FWD_X1, MV_FWD_C2, MV_PRED_TOPRIGHT,BLK_8X16, 1); mv_pred_sym(h, &h->mv[MV_FWD_X1], BLK_8X16);
mv_pred_sym(h, &h->mv[6], BLK_8X16);
}
if(flags & BWD0) if(flags & BWD0)
mv_pred(h, MV_BWD_X0, MV_BWD_B3, MV_PRED_LEFT, BLK_8X16, 0); mv_pred(h, MV_BWD_X0, MV_BWD_B3, MV_PRED_LEFT, BLK_8X16, 0);
if(flags & BWD1) if(flags & BWD1)

View File

@ -130,36 +130,36 @@ enum mv_loc_t {
}; };
static const uint8_t partition_flags[30] = { static const uint8_t partition_flags[30] = {
0, //I_8X8 0, //I_8X8
0, //P_SKIP 0, //P_SKIP
0, //P_16X16 0, //P_16X16
SPLITH, //P_16X8 SPLITH, //P_16X8
SPLITV,//P_8X16 SPLITV, //P_8X16
SPLITH|SPLITV,//P_8X8 SPLITH|SPLITV, //P_8X8
SPLITH|SPLITV,//B_SKIP SPLITH|SPLITV, //B_SKIP
SPLITH|SPLITV,//B_DIRECT SPLITH|SPLITV, //B_DIRECT
0, //B_FWD_16X16 0, //B_FWD_16X16
0, //B_BWD_16X16 0, //B_BWD_16X16
0, //B_SYM_16X16 0, //B_SYM_16X16
FWD0|FWD1|SPLITH, FWD0|FWD1 |SPLITH,
FWD0|FWD1 |SPLITV, FWD0|FWD1 |SPLITV,
BWD0|BWD1|SPLITH, BWD0|BWD1 |SPLITH,
BWD0|BWD1 |SPLITV, BWD0|BWD1 |SPLITV,
FWD0|BWD1|SPLITH, FWD0|BWD1 |SPLITH,
FWD0|BWD1 |SPLITV, FWD0|BWD1 |SPLITV,
BWD0|FWD1|SPLITH, BWD0|FWD1 |SPLITH,
BWD0|FWD1 |SPLITV, BWD0|FWD1 |SPLITV,
FWD0|SYM1|SPLITH, FWD0|FWD1 |SYM1|SPLITH,
FWD0|SYM1 |SPLITV, FWD0|FWD1 |SYM1 |SPLITV,
BWD0|SYM1|SPLITH, BWD0|FWD1 |SYM1|SPLITH,
BWD0|SYM1 |SPLITV, BWD0|FWD1 |SYM1 |SPLITV,
SYM0|FWD1|SPLITH, FWD0|FWD1|SYM0 |SPLITH,
SYM0|FWD1 |SPLITV, FWD0|FWD1|SYM0 |SPLITV,
SYM0|BWD1|SPLITH, FWD0|BWD1|SYM0 |SPLITH,
SYM0|BWD1 |SPLITV, FWD0|BWD1|SYM0 |SPLITV,
SYM0|SYM1|SPLITH, FWD0|FWD1|SYM0|SYM1|SPLITH,
SYM0|SYM1 |SPLITV, FWD0|FWD1|SYM0|SYM1 |SPLITV,
SPLITH|SPLITV,//B_8X8 = 29 SPLITH|SPLITV, //B_8X8 = 29
}; };
static const uint8_t scan3x3[4] = {4,5,7,8}; static const uint8_t scan3x3[4] = {4,5,7,8};