Skip to content

Commit

Permalink
svq3: Use hpeldsp instead of dsputil for half-pel functions
Browse files Browse the repository at this point in the history
Signed-off-by: Martin Storsjö <[email protected]>
  • Loading branch information
rbultje authored and mstorsjo committed Apr 19, 2013
1 parent f4fed5a commit 2f6bc5f
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 8 deletions.
2 changes: 1 addition & 1 deletion configure
Original file line number Diff line number Diff line change
Expand Up @@ -1642,7 +1642,7 @@ sipr_decoder_select="lsp"
sp5x_decoder_select="dsputil"
svq1_decoder_select="hpeldsp"
svq1_encoder_select="aandcttables dsputil mpegvideoenc"
svq3_decoder_select="golomb h264chroma h264dsp h264pred h264qpel mpegvideo videodsp"
svq3_decoder_select="golomb h264chroma h264dsp h264pred h264qpel hpeldsp mpegvideo videodsp"
svq3_decoder_suggest="error_resilience zlib"
tak_decoder_select="dsputil"
theora_decoder_select="vp3_decoder"
Expand Down
17 changes: 10 additions & 7 deletions libavcodec/svq3.c
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,7 @@

#include "h264_mvpred.h"
#include "golomb.h"
#include "hpeldsp.h"
#include "rectangle.h"
#include "vdpau_internal.h"

Expand All @@ -65,6 +66,7 @@

typedef struct {
H264Context h;
HpelDSPContext hdsp;
Picture *cur_pic;
Picture *next_pic;
Picture *last_pic;
Expand Down Expand Up @@ -312,9 +314,9 @@ static inline void svq3_mc_dir_part(SVQ3Context *s,
: h->dsp.put_tpel_pixels_tab)[dxy](dest, src, h->linesize,
width, height);
else
(avg ? h->dsp.avg_pixels_tab
: h->dsp.put_pixels_tab)[blocksize][dxy](dest, src, h->linesize,
height);
(avg ? s->hdsp.avg_pixels_tab
: s->hdsp.put_pixels_tab)[blocksize][dxy](dest, src, h->linesize,
height);

if (!(h->flags & CODEC_FLAG_GRAY)) {
mx = mx + (mx < (int) x) >> 1;
Expand All @@ -340,10 +342,10 @@ static inline void svq3_mc_dir_part(SVQ3Context *s,
h->uvlinesize,
width, height);
else
(avg ? h->dsp.avg_pixels_tab
: h->dsp.put_pixels_tab)[blocksize][dxy](dest, src,
h->uvlinesize,
height);
(avg ? s->hdsp.avg_pixels_tab
: s->hdsp.put_pixels_tab)[blocksize][dxy](dest, src,
h->uvlinesize,
height);
}
}
}
Expand Down Expand Up @@ -865,6 +867,7 @@ static av_cold int svq3_decode_init(AVCodecContext *avctx)
if (ff_h264_decode_init(avctx) < 0)
return -1;

ff_hpeldsp_init(&s->hdsp, avctx->flags);
h->flags = avctx->flags;
h->is_complex = 1;
h->picture_structure = PICT_FRAME;
Expand Down

0 comments on commit 2f6bc5f

Please sign in to comment.