From b67a0e99ee82bc30af0b0d5f5e3a40bf584470f2 Mon Sep 17 00:00:00 2001 From: James Almer Date: Tue, 15 Jul 2014 22:37:25 -0300 Subject: [PATCH] diracdec: don't call ff_emulated_edge_mc_8 directly Use the videodsp function pointer instead. Signed-off-by: James Almer Signed-off-by: Michael Niedermayer --- libavcodec/diracdec.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/libavcodec/diracdec.c b/libavcodec/diracdec.c index a18c867a3a..30e6138d81 100644 --- a/libavcodec/diracdec.c +++ b/libavcodec/diracdec.c @@ -38,7 +38,7 @@ #include "dirac_dwt.h" #include "dirac.h" #include "diracdsp.h" -#include "videodsp.h" // for ff_emulated_edge_mc_8 +#include "videodsp.h" /** * The spec limits the number of wavelet decompositions to 4 for both @@ -73,8 +73,6 @@ */ #define DELAYED_PIC_REF 4 -#define ff_emulated_edge_mc ff_emulated_edge_mc_8 /* Fix: change the calls to this function regarding bit depth */ - #define CALC_PADDING(size, depth) \ (((size + (1 << depth) - 1) >> depth) << depth) @@ -138,6 +136,7 @@ typedef struct Plane { typedef struct DiracContext { AVCodecContext *avctx; MpegvideoEncDSPContext mpvencdsp; + VideoDSPContext vdsp; DiracDSPContext diracdsp; GetBitContext gb; dirac_source_params source; @@ -425,6 +424,7 @@ static av_cold int dirac_decode_init(AVCodecContext *avctx) ff_diracdsp_init(&s->diracdsp); ff_mpegvideoencdsp_init(&s->mpvencdsp, avctx); + ff_videodsp_init(&s->vdsp, 8); for (i = 0; i < MAX_FRAMES; i++) { s->all_frames[i].avframe = av_frame_alloc(); @@ -1451,10 +1451,10 @@ static int mc_subpel(DiracContext *s, DiracBlock *block, const uint8_t *src[5], y + p->yblen > p->height+EDGE_WIDTH/2 || x < 0 || y < 0) { for (i = 0; i < nplanes; i++) { - ff_emulated_edge_mc(s->edge_emu_buffer[i], src[i], - p->stride, p->stride, - p->xblen, p->yblen, x, y, - p->width+EDGE_WIDTH/2, p->height+EDGE_WIDTH/2); + s->vdsp.emulated_edge_mc(s->edge_emu_buffer[i], src[i], + p->stride, p->stride, + p->xblen, p->yblen, x, y, + p->width+EDGE_WIDTH/2, p->height+EDGE_WIDTH/2); src[i] = s->edge_emu_buffer[i]; } }