hevc_deblock: Fix compilation with nasm
[ffmpeg.git] / libavcodec / error_resilience.h
index f979656..611b529 100644 (file)
@@ -23,7 +23,8 @@
 #include <stdint.h>
 
 #include "avcodec.h"
-#include "dsputil.h"
+#include "me_cmp.h"
+#include "thread.h"
 
 ///< current MB is the first after a resync marker
 #define VP_START               1
 #define ER_MB_ERROR (ER_AC_ERROR|ER_DC_ERROR|ER_MV_ERROR)
 #define ER_MB_END   (ER_AC_END|ER_DC_END|ER_MV_END)
 
+typedef struct ERPicture {
+    AVFrame *f;
+    ThreadFrame *tf;
+
+    // it's the caller responsability to allocate these buffers
+    int16_t (*motion_val[2])[2];
+    int8_t *ref_index[2];
+
+    uint32_t *mb_type;
+    int field_picture;
+} ERPicture;
+
 typedef struct ERContext {
     AVCodecContext *avctx;
-    DSPContext *dsp;
+    MECmpContext mecc;
+    int mecc_inited;
 
     int *mb_index2xy;
     int mb_num;
@@ -55,9 +69,9 @@ typedef struct ERContext {
     uint8_t *mbintra_table;
     int mv[2][4][2];
 
-    struct Picture *cur_pic;
-    struct Picture *last_pic;
-    struct Picture *next_pic;
+    ERPicture cur_pic;
+    ERPicture last_pic;
+    ERPicture next_pic;
 
     uint16_t pp_time;
     uint16_t pb_time;