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

View File

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