summaryrefslogtreecommitdiff
path: root/libavcodec/eamad.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/eamad.c
parent869fc416f7c78ed4e397e0208acd1545771c0502 (diff)
dsputil: Split clear_block*/fill_block* off into a separate context
Diffstat (limited to 'libavcodec/eamad.c')
-rw-r--r--libavcodec/eamad.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/libavcodec/eamad.c b/libavcodec/eamad.c
index 22070a45f7..4bc07394c8 100644
--- a/libavcodec/eamad.c
+++ b/libavcodec/eamad.c
@@ -44,6 +44,7 @@
typedef struct MadContext {
AVCodecContext *avctx;
+ BlockDSPContext bdsp;
DSPContext dsp;
AVFrame *last_frame;
GetBitContext gb;
@@ -61,6 +62,7 @@ static av_cold int decode_init(AVCodecContext *avctx)
MadContext *s = avctx->priv_data;
s->avctx = avctx;
avctx->pix_fmt = AV_PIX_FMT_YUV420P;
+ ff_blockdsp_init(&s->bdsp, avctx);
ff_dsputil_init(&s->dsp, avctx);
ff_init_scantable_permutation(s->dsp.idct_permutation, FF_NO_IDCT_PERM);
ff_init_scantable(s->dsp.idct_permutation, &s->scantable, ff_zigzag_direct);
@@ -207,7 +209,7 @@ static void decode_mb(MadContext *s, AVFrame *frame, int inter)
int add = 2*decode_motion(&s->gb);
comp_block(s, frame, s->mb_x, s->mb_y, j, mv_x, mv_y, add);
} else {
- s->dsp.clear_block(s->block);
+ s->bdsp.clear_block(s->block);
decode_block_intra(s, s->block);
idct_put(s, frame, s->block, s->mb_x, s->mb_y, j);
}