Commit 4b642ab1 authored by Ronald S. Bultje's avatar Ronald S. Bultje Committed by Michael Niedermayer

indeo3: use hpeldsp instead of dsputil for half-pel functions.

This makes indeo3 independent of dsputil.
parent 704c9874
...@@ -1740,7 +1740,7 @@ huffyuv_decoder_select="dsputil" ...@@ -1740,7 +1740,7 @@ huffyuv_decoder_select="dsputil"
huffyuv_encoder_select="huffman" huffyuv_encoder_select="huffman"
iac_decoder_select="fft mdct sinewin" iac_decoder_select="fft mdct sinewin"
imc_decoder_select="dsputil fft mdct sinewin" imc_decoder_select="dsputil fft mdct sinewin"
indeo3_decoder_select="dsputil" indeo3_decoder_select="hpeldsp"
interplayvideo_decoder_select="dsputil" interplayvideo_decoder_select="dsputil"
jpegls_decoder_select="golomb" jpegls_decoder_select="golomb"
jpegls_encoder_select="golomb" jpegls_encoder_select="golomb"
......
...@@ -33,9 +33,9 @@ ...@@ -33,9 +33,9 @@
#include "libavutil/intreadwrite.h" #include "libavutil/intreadwrite.h"
#include "avcodec.h" #include "avcodec.h"
#include "copy_block.h" #include "copy_block.h"
#include "dsputil.h"
#include "bytestream.h" #include "bytestream.h"
#include "get_bits.h" #include "get_bits.h"
#include "hpeldsp.h"
#include "internal.h" #include "internal.h"
#include "indeo3data.h" #include "indeo3data.h"
...@@ -82,7 +82,7 @@ typedef struct Cell { ...@@ -82,7 +82,7 @@ typedef struct Cell {
typedef struct Indeo3DecodeContext { typedef struct Indeo3DecodeContext {
AVCodecContext *avctx; AVCodecContext *avctx;
DSPContext dsp; HpelDSPContext hdsp;
GetBitContext gb; GetBitContext gb;
int need_resync; int need_resync;
...@@ -248,12 +248,12 @@ static void copy_cell(Indeo3DecodeContext *ctx, Plane *plane, Cell *cell) ...@@ -248,12 +248,12 @@ static void copy_cell(Indeo3DecodeContext *ctx, Plane *plane, Cell *cell)
/* copy using 16xH blocks */ /* copy using 16xH blocks */
if (!((cell->xpos << 2) & 15) && w >= 4) { if (!((cell->xpos << 2) & 15) && w >= 4) {
for (; w >= 4; src += 16, dst += 16, w -= 4) for (; w >= 4; src += 16, dst += 16, w -= 4)
ctx->dsp.put_no_rnd_pixels_tab[0][0](dst, src, plane->pitch, h); ctx->hdsp.put_no_rnd_pixels_tab[0][0](dst, src, plane->pitch, h);
} }
/* copy using 8xH blocks */ /* copy using 8xH blocks */
if (!((cell->xpos << 2) & 7) && w >= 2) { if (!((cell->xpos << 2) & 7) && w >= 2) {
ctx->dsp.put_no_rnd_pixels_tab[1][0](dst, src, plane->pitch, h); ctx->hdsp.put_no_rnd_pixels_tab[1][0](dst, src, plane->pitch, h);
w -= 2; w -= 2;
src += 8; src += 8;
dst += 8; dst += 8;
...@@ -1050,7 +1050,7 @@ static av_cold int decode_init(AVCodecContext *avctx) ...@@ -1050,7 +1050,7 @@ static av_cold int decode_init(AVCodecContext *avctx)
build_requant_tab(); build_requant_tab();
ff_dsputil_init(&ctx->dsp, avctx); ff_hpeldsp_init(&ctx->hdsp, avctx->flags);
return allocate_frame_buffers(ctx, avctx, avctx->width, avctx->height); return allocate_frame_buffers(ctx, avctx, avctx->width, avctx->height);
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment