intrax8: Add a local BlockDSPContext and initialize it
authorVittorio Giovara <vittorio.giovara@gmail.com>
Sat, 20 Feb 2016 05:46:49 +0000 (00:46 -0500)
committerVittorio Giovara <vittorio.giovara@gmail.com>
Fri, 25 Mar 2016 19:55:49 +0000 (15:55 -0400)
Helps in decoupling this code from mpegvideo.

configure
libavcodec/intrax8.c
libavcodec/intrax8.h

index 99b9405..e5f5046 100755 (executable)
--- a/configure
+++ b/configure
@@ -1863,7 +1863,7 @@ error_resilience_select="me_cmp"
 faandct_deps="faan fdctdsp"
 faanidct_deps="faan idctdsp"
 h264dsp_select="startcode"
-intrax8_select="idctdsp"
+intrax8_select="blockdsp idctdsp"
 mdct_select="fft"
 rdft_select="fft"
 me_cmp_select="fdctdsp idctdsp pixblockdsp"
index b35d252..e7eda24 100644 (file)
@@ -587,7 +587,7 @@ static int x8_decode_intra_mb(IntraX8Context *const w, const int chroma)
     int sign;
 
     assert(w->orient < 12);
-    s->bdsp.clear_block(s->block[0]);
+    w->bdsp.clear_block(s->block[0]);
 
     if (chroma)
         dc_mode = 2;
@@ -762,6 +762,7 @@ av_cold int ff_intrax8_common_init(AVCodecContext *avctx,
                       ff_wmv1_scantable[3]);
 
     ff_intrax8dsp_init(&w->dsp);
+    ff_blockdsp_init(&w->bdsp, avctx);
 
     return 0;
 }
index 7a0eaf7..44954e1 100644 (file)
@@ -19,6 +19,7 @@
 #ifndef AVCODEC_INTRAX8_H
 #define AVCODEC_INTRAX8_H
 
+#include "blockdsp.h"
 #include "get_bits.h"
 #include "mpegvideo.h"
 #include "idctdsp.h"
@@ -41,6 +42,7 @@ typedef struct IntraX8Context {
     MpegEncContext *s;
     IntraX8DSPContext dsp;
     IDCTDSPContext idsp;
+    BlockDSPContext bdsp;
     int quant;
     int dquant;
     int qsum;