diff options
author | Diego Biurrun <diego@biurrun.de> | 2014-01-08 17:00:10 +0400 |
---|---|---|
committer | Diego Biurrun <diego@biurrun.de> | 2014-05-29 17:48:31 +0400 |
commit | 368f50359eb328b0b9d67451f56fda20b3255f9a (patch) | |
tree | 17df2c6f56e73b6ec64e02f570eb0df35afce28d /libavcodec/mpegvideo_enc.c | |
parent | cb52a17cb62297802b0a77e5af9850d87c3f925b (diff) |
dsputil: Split off quarterpel bits into their own context
Diffstat (limited to 'libavcodec/mpegvideo_enc.c')
-rw-r--r-- | libavcodec/mpegvideo_enc.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/libavcodec/mpegvideo_enc.c b/libavcodec/mpegvideo_enc.c index c6b7cc8316..3550fdedc2 100644 --- a/libavcodec/mpegvideo_enc.c +++ b/libavcodec/mpegvideo_enc.c @@ -46,6 +46,7 @@ #include "mpegutils.h" #include "mjpegenc.h" #include "msmpeg4.h" +#include "qpeldsp.h" #include "faandct.h" #include "thread.h" #include "aandcttab.h" @@ -687,6 +688,8 @@ av_cold int ff_MPV_encode_init(AVCodecContext *avctx) if (ARCH_X86) ff_MPV_encode_init_x86(s); + ff_qpeldsp_init(&s->qdsp); + s->avctx->coded_frame = s->current_picture.f; if (s->msmpeg4_version) { @@ -1944,10 +1947,10 @@ static av_always_inline void encode_mb_internal(MpegEncContext *s, if ((!s->no_rounding) || s->pict_type == AV_PICTURE_TYPE_B) { op_pix = s->hdsp.put_pixels_tab; - op_qpix = s->dsp.put_qpel_pixels_tab; + op_qpix = s->qdsp.put_qpel_pixels_tab; } else { op_pix = s->hdsp.put_no_rnd_pixels_tab; - op_qpix = s->dsp.put_no_rnd_qpel_pixels_tab; + op_qpix = s->qdsp.put_no_rnd_qpel_pixels_tab; } if (s->mv_dir & MV_DIR_FORWARD) { @@ -1955,7 +1958,7 @@ static av_always_inline void encode_mb_internal(MpegEncContext *s, s->last_picture.f->data, op_pix, op_qpix); op_pix = s->hdsp.avg_pixels_tab; - op_qpix = s->dsp.avg_qpel_pixels_tab; + op_qpix = s->qdsp.avg_qpel_pixels_tab; } if (s->mv_dir & MV_DIR_BACKWARD) { ff_MPV_motion(s, dest_y, dest_cb, dest_cr, 1, |