aboutsummaryrefslogtreecommitdiffstats
path: root/libavcodec/cavsdec.c
diff options
context:
space:
mode:
authorMans Rullgard <mans@mansr.com>2012-09-04 13:52:01 +0100
committerMans Rullgard <mans@mansr.com>2012-09-07 11:42:35 +0100
commit6efb698883507b13e90eb9ca03813f928066e5dd (patch)
tree66a981ead10f27bb3f7f8a1a361bd00f920221a5 /libavcodec/cavsdec.c
parent5fe64d88f67637af6037fa864b1c66e41148597c (diff)
downloadffmpeg-6efb698883507b13e90eb9ca03813f928066e5dd.tar.gz
cavsdsp: set idct permutation independently of dsputil
CAVS uses its own idct so using dsputil to set the permutation is fragile. Signed-off-by: Mans Rullgard <mans@mansr.com>
Diffstat (limited to 'libavcodec/cavsdec.c')
-rw-r--r--libavcodec/cavsdec.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/libavcodec/cavsdec.c b/libavcodec/cavsdec.c
index e70dad038a..33e639b9ae 100644
--- a/libavcodec/cavsdec.c
+++ b/libavcodec/cavsdec.c
@@ -915,9 +915,10 @@ static int decode_pic(AVSContext *h) {
enum cavs_mb mb_type;
if (!s->context_initialized) {
- s->avctx->idct_algo = FF_IDCT_CAVS;
if (ff_MPV_common_init(s) < 0)
return -1;
+ ff_init_scantable_permutation(s->dsp.idct_permutation,
+ h->cdsp.idct_perm);
ff_init_scantable(s->dsp.idct_permutation,&h->scantable,ff_zigzag_direct);
}
skip_bits(&s->gb,16);//bbv_dwlay