]> git.sesse.net Git - ffmpeg/blobdiff - libavcodec/vp8.h
ac3enc: allow Dolby Pro Logic IIz as the Dolby Surround EX mode.
[ffmpeg] / libavcodec / vp8.h
index 1eb0512626df69708d90e06d4ab0b59df04f7550..365e7b76cb2133cac8e31bd1e6482ceb9218a114 100644 (file)
@@ -3,7 +3,7 @@
  *
  * Copyright (C) 2010 David Conrad
  * Copyright (C) 2010 Ronald S. Bultje
- * Copyright (C) 2010 Jason Garrett-Glaser
+ * Copyright (C) 2010 Fiona Glaser
  * Copyright (C) 2012 Daniel Kang
  *
  * This file is part of Libav.
@@ -91,7 +91,7 @@ typedef struct VP8Macroblock {
     uint8_t chroma_pred_mode;
     uint8_t segment;
     uint8_t intra4x4_pred_mode_mb[16];
-    uint8_t intra4x4_pred_mode_top[4];
+    DECLARE_ALIGNED(4, uint8_t, intra4x4_pred_mode_top)[4];
     VP56mv mv;
     VP56mv bmv[16];
 } VP8Macroblock;
@@ -237,6 +237,7 @@ typedef struct VP8Context {
         uint8_t pred8x8c[3];
         uint8_t token[4][16][3][NUM_DCT_TOKENS - 1];
         uint8_t mvc[2][19];
+        uint8_t scan[16];
     } prob[2];
 
     VP8Macroblock *macroblocks_base;
@@ -270,6 +271,26 @@ typedef struct VP8Context {
      * 1 -> Macroblocks for entire frame alloced (sliced thread).
      */
     int mb_layout;
+
+    /**
+     * Fade bit present in bitstream (VP7)
+     */
+    int fade_present;
+
+    /**
+     * Interframe DC prediction (VP7)
+     * [0] VP56_FRAME_PREVIOUS
+     * [1] VP56_FRAME_GOLDEN
+     */
+    uint16_t inter_dc_pred[2][2];
+
+    /**
+     * Macroblock features (VP7)
+     */
+    uint8_t feature_enabled[4];
+    uint8_t feature_present_prob[4];
+    uint8_t feature_index_prob[4][3];
+    uint8_t feature_value[4][4];
 } VP8Context;
 
 int ff_vp8_decode_init(AVCodecContext *avctx);