summaryrefslogtreecommitdiff
path: root/libavcodec/svq3.c
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2014-03-22 23:26:23 +0100
committerMichael Niedermayer <michaelni@gmx.at>2014-03-22 23:26:23 +0100
commit9d6a27d5336550c131d2a45fc4b0e90c93e46aca (patch)
tree07fe3d8437eda2db2343a9d7d0932870e8018e8e /libavcodec/svq3.c
parent74fed968d1b6f0aec9c08b9ac4fcad4314e0460a (diff)
parent57f09608e1600d1cf1679885a46f5004d522d68f (diff)
Merge commit '57f09608e1600d1cf1679885a46f5004d522d68f'
* commit '57f09608e1600d1cf1679885a46f5004d522d68f': dsputil: Move thirdpel-related bits into their own context Conflicts: libavcodec/svq3.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavcodec/svq3.c')
-rw-r--r--libavcodec/svq3.c18
1 files changed, 11 insertions, 7 deletions
diff --git a/libavcodec/svq3.c b/libavcodec/svq3.c
index 01a2e6a159..bf8c68882e 100644
--- a/libavcodec/svq3.c
+++ b/libavcodec/svq3.c
@@ -54,6 +54,7 @@
#include "golomb.h"
#include "hpeldsp.h"
#include "rectangle.h"
+#include "tpeldsp.h"
#include "vdpau_internal.h"
#if CONFIG_ZLIB
@@ -71,6 +72,7 @@
typedef struct {
H264Context h;
HpelDSPContext hdsp;
+ TpelDSPContext tdsp;
H264Picture *cur_pic;
H264Picture *next_pic;
H264Picture *last_pic;
@@ -328,9 +330,9 @@ static inline void svq3_mc_dir_part(SVQ3Context *s,
src = h->edge_emu_buffer;
}
if (thirdpel)
- (avg ? h->dsp.avg_tpel_pixels_tab
- : h->dsp.put_tpel_pixels_tab)[dxy](dest, src, h->linesize,
- width, height);
+ (avg ? s->tdsp.avg_tpel_pixels_tab
+ : s->tdsp.put_tpel_pixels_tab)[dxy](dest, src, h->linesize,
+ width, height);
else
(avg ? s->hdsp.avg_pixels_tab
: s->hdsp.put_pixels_tab)[blocksize][dxy](dest, src, h->linesize,
@@ -356,10 +358,10 @@ static inline void svq3_mc_dir_part(SVQ3Context *s,
src = h->edge_emu_buffer;
}
if (thirdpel)
- (avg ? h->dsp.avg_tpel_pixels_tab
- : h->dsp.put_tpel_pixels_tab)[dxy](dest, src,
- h->uvlinesize,
- width, height);
+ (avg ? s->tdsp.avg_tpel_pixels_tab
+ : s->tdsp.put_tpel_pixels_tab)[dxy](dest, src,
+ h->uvlinesize,
+ width, height);
else
(avg ? s->hdsp.avg_pixels_tab
: s->hdsp.put_pixels_tab)[blocksize][dxy](dest, src,
@@ -887,6 +889,8 @@ static av_cold int svq3_decode_init(AVCodecContext *avctx)
goto fail;
ff_hpeldsp_init(&s->hdsp, avctx->flags);
+ ff_tpeldsp_init(&s->tdsp);
+
h->flags = avctx->flags;
h->is_complex = 1;
h->sps.chroma_format_idc = 1;