summaryrefslogtreecommitdiffstats
path: root/libavcodec/aic.c
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2014-07-01 14:38:57 +0200
committerMichael Niedermayer <michaelni@gmx.at>2014-07-01 15:22:11 +0200
commit581b5f0b9b93969712e73e0ae6324bbd03e85d4e (patch)
treed1319dc7744ac67e6ebd3379f11ff6e4a8178dc1 /libavcodec/aic.c
parent909f53f2b285bc7dbe77d4690a03f3d114417297 (diff)
parente3fcb14347466095839c2a3c47ebecff02da891e (diff)
downloadffmpeg-streaming-581b5f0b9b93969712e73e0ae6324bbd03e85d4e.zip
ffmpeg-streaming-581b5f0b9b93969712e73e0ae6324bbd03e85d4e.tar.gz
Merge commit 'e3fcb14347466095839c2a3c47ebecff02da891e'
* commit 'e3fcb14347466095839c2a3c47ebecff02da891e': dsputil: Split off IDCT bits into their own context Conflicts: configure libavcodec/aic.c libavcodec/arm/Makefile libavcodec/arm/dsputil_init_arm.c libavcodec/arm/dsputil_init_armv6.c libavcodec/asvdec.c libavcodec/dnxhdenc.c libavcodec/dsputil.c libavcodec/dvdec.c libavcodec/dxva2_mpeg2.c libavcodec/intrax8.c libavcodec/mdec.c libavcodec/mjpegdec.c libavcodec/mjpegenc_common.h libavcodec/mpegvideo.c libavcodec/ppc/dsputil_altivec.h libavcodec/ppc/dsputil_ppc.c libavcodec/ppc/idctdsp.c libavcodec/x86/Makefile libavcodec/x86/dsputil_init.c libavcodec/x86/dsputil_mmx.c libavcodec/x86/dsputil_x86.h Merged-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavcodec/aic.c')
-rw-r--r--libavcodec/aic.c25
1 files changed, 12 insertions, 13 deletions
diff --git a/libavcodec/aic.c b/libavcodec/aic.c
index 23bfa0b..00be08b 100644
--- a/libavcodec/aic.c
+++ b/libavcodec/aic.c
@@ -24,10 +24,10 @@
#include "avcodec.h"
#include "bytestream.h"
-#include "dsputil.h"
#include "internal.h"
#include "get_bits.h"
#include "golomb.h"
+#include "idctdsp.h"
#include "unary.h"
#define AIC_HDR_SIZE 24
@@ -139,7 +139,7 @@ static const uint8_t *aic_scan[NUM_BANDS] = {
typedef struct AICContext {
AVCodecContext *avctx;
AVFrame *frame;
- DSPContext dsp;
+ IDCTDSPContext idsp;
ScanTable scantable;
int num_x_slices;
@@ -338,16 +338,15 @@ static int aic_decode_slice(AICContext *ctx, int mb_x, int mb_y,
recombine_block_il(ctx->block, ctx->scantable.permutated,
&base_y, &ext_y, blk);
unquant_block(ctx->block, ctx->quant, ctx->quant_matrix);
- ctx->dsp.idct(ctx->block);
+ ctx->idsp.idct(ctx->block);
if (!ctx->interlaced) {
dst = Y + (blk >> 1) * 8 * ystride + (blk & 1) * 8;
- ctx->dsp.put_signed_pixels_clamped(ctx->block, dst,
- ystride);
+ ctx->idsp.put_signed_pixels_clamped(ctx->block, dst, ystride);
} else {
dst = Y + (blk & 1) * 8 + (blk >> 1) * ystride;
- ctx->dsp.put_signed_pixels_clamped(ctx->block, dst,
- ystride * 2);
+ ctx->idsp.put_signed_pixels_clamped(ctx->block, dst,
+ ystride * 2);
}
}
Y += 16;
@@ -356,9 +355,9 @@ static int aic_decode_slice(AICContext *ctx, int mb_x, int mb_y,
recombine_block(ctx->block, ctx->scantable.permutated,
&base_c, &ext_c);
unquant_block(ctx->block, ctx->quant, ctx->quant_matrix);
- ctx->dsp.idct(ctx->block);
- ctx->dsp.put_signed_pixels_clamped(ctx->block, C[blk],
- ctx->frame->linesize[blk + 1]);
+ ctx->idsp.idct(ctx->block);
+ ctx->idsp.put_signed_pixels_clamped(ctx->block, C[blk],
+ ctx->frame->linesize[blk + 1]);
C[blk] += 8;
}
}
@@ -428,13 +427,13 @@ static av_cold int aic_decode_init(AVCodecContext *avctx)
avctx->pix_fmt = AV_PIX_FMT_YUV420P;
- ff_dsputil_init(&ctx->dsp, avctx);
+ ff_idctdsp_init(&ctx->idsp, avctx);
for (i = 0; i < 64; i++)
scan[i] = i;
- ff_init_scantable(ctx->dsp.idct_permutation, &ctx->scantable, scan);
+ ff_init_scantable(ctx->idsp.idct_permutation, &ctx->scantable, scan);
for (i = 0; i < 64; i++)
- ctx->quant_matrix[ctx->dsp.idct_permutation[i]] = aic_quant_matrix[i];
+ ctx->quant_matrix[ctx->idsp.idct_permutation[i]] = aic_quant_matrix[i];
ctx->mb_width = FFALIGN(avctx->width, 16) >> 4;
ctx->mb_height = FFALIGN(avctx->height, 16) >> 4;
OpenPOWER on IntegriCloud