Simplify MV parsing, removes laying out 2 or 4 (16x8/8x8/8x16) MVs over all
[ffmpeg.git] / libavcodec / vp8data.h
index 5c9dc6e..e8bd82d 100644 (file)
@@ -67,6 +67,7 @@ enum inter_splitmvmode {
     VP8_SPLITMVMODE_8x16,        ///< 2 8x16 blocks (horizontal)
     VP8_SPLITMVMODE_8x8,         ///< 2x2 blocks of 8x8px each
     VP8_SPLITMVMODE_4x4,         ///< 4x4 blocks of 4x4px each
+    VP8_SPLITMVMODE_NONE,        ///< (only used in prediction) no split MVs
 };
 
 static const uint8_t vp8_pred4x4_mode[] =
@@ -119,7 +120,7 @@ static const int8_t vp8_small_mvtree[7][2] = {
       { -6, -7 }                            // '110', '111'
 };
 
-static const uint8_t vp8_mbsplits[4][16] = {
+static const uint8_t vp8_mbsplits[5][16] = {
     {  0,  0,  0,  0,  0,  0,  0,  0,
        1,  1,  1,  1,  1,  1,  1,  1  },
     {  0,  0,  1,  1,  0,  0,  1,  1,
@@ -127,7 +128,9 @@ static const uint8_t vp8_mbsplits[4][16] = {
     {  0,  0,  1,  1,  0,  0,  1,  1,
        2,  2,  3,  3,  2,  2,  3,  3  },
     {  0,  1,  2,  3,  4,  5,  6,  7,
-       8,  9, 10, 11, 12, 13, 14, 15  }
+       8,  9, 10, 11, 12, 13, 14, 15  },
+    {  0,  0,  0,  0,  0,  0,  0,  0,
+       0,  0,  0,  0,  0,  0,  0,  0  }
 };
 
 static const uint8_t vp8_mbfirstidx[4][16] = {