aboutsummaryrefslogtreecommitdiffstats
path: root/libavcodec/proresdec.c
diff options
context:
space:
mode:
authorRonald S. Bultje <rsbultje@gmail.com>2011-09-30 14:37:11 +0200
committerRonald S. Bultje <rsbultje@gmail.com>2011-10-11 07:50:48 -0700
commite3f530feca80627e278e15fbe3b60cef7a6b630d (patch)
tree83a8baa47aae275182f4da7cb9268c0d7be82e83 /libavcodec/proresdec.c
parent6aa3cac6bf561712086ae413a36b5f05087c8887 (diff)
downloadffmpeg-e3f530feca80627e278e15fbe3b60cef7a6b630d.tar.gz
prores: idct sse2/sse4 optimizations.
~3.0-3.5x as fast as original C version, 1.6x as fast overall.
Diffstat (limited to 'libavcodec/proresdec.c')
-rw-r--r--libavcodec/proresdec.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/libavcodec/proresdec.c b/libavcodec/proresdec.c
index cbbd068a10..3b539a1c49 100644
--- a/libavcodec/proresdec.c
+++ b/libavcodec/proresdec.c
@@ -545,8 +545,8 @@ static int decode_slice(ProresContext *ctx, int pic_num, int slice_num,
if (ctx->qmat_changed || sf != ctx->prev_slice_sf) {
ctx->prev_slice_sf = sf;
for (i = 0; i < 64; i++) {
- ctx->qmat_luma_scaled[i] = ctx->qmat_luma[i] * sf;
- ctx->qmat_chroma_scaled[i] = ctx->qmat_chroma[i] * sf;
+ ctx->qmat_luma_scaled[ctx->dsp.idct_permutation[i]] = ctx->qmat_luma[i] * sf;
+ ctx->qmat_chroma_scaled[ctx->dsp.idct_permutation[i]] = ctx->qmat_chroma[i] * sf;
}
}