summaryrefslogtreecommitdiff
path: root/libavcodec/mdec.c
diff options
context:
space:
mode:
authorDiego Biurrun <diego@biurrun.de>2014-01-14 10:33:47 +0100
committerDiego Biurrun <diego@biurrun.de>2014-06-18 14:07:23 -0700
commite74433a8e6fc00c8dbde293c97a3e45384c2c1d9 (patch)
treef975b37a58a7c6e62c84c12349610ce6f40ad4d1 /libavcodec/mdec.c
parent869fc416f7c78ed4e397e0208acd1545771c0502 (diff)
dsputil: Split clear_block*/fill_block* off into a separate context
Diffstat (limited to 'libavcodec/mdec.c')
-rw-r--r--libavcodec/mdec.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/libavcodec/mdec.c b/libavcodec/mdec.c
index d6c6060f04..b4213972b7 100644
--- a/libavcodec/mdec.c
+++ b/libavcodec/mdec.c
@@ -28,12 +28,14 @@
*/
#include "avcodec.h"
+#include "blockdsp.h"
#include "mpegvideo.h"
#include "mpeg12.h"
#include "thread.h"
typedef struct MDECContext {
AVCodecContext *avctx;
+ BlockDSPContext bdsp;
DSPContext dsp;
ThreadFrame frame;
GetBitContext gb;
@@ -123,7 +125,7 @@ static inline int decode_mb(MDECContext *a, int16_t block[6][64])
int i, ret;
const int block_index[6] = { 5, 4, 0, 1, 2, 3 };
- a->dsp.clear_blocks(block[0]);
+ a->bdsp.clear_blocks(block[0]);
for (i = 0; i < 6; i++) {
if ((ret = mdec_decode_block_intra(a, block[block_index[i]],
@@ -212,6 +214,7 @@ static av_cold int decode_init(AVCodecContext *avctx)
a->avctx = avctx;
+ ff_blockdsp_init(&a->bdsp, avctx);
ff_dsputil_init(&a->dsp, avctx);
ff_mpeg12_init_vlcs();
ff_init_scantable(a->dsp.idct_permutation, &a->scantable, ff_zigzag_direct);