mirror of
https://github.com/nyanmisaka/ffmpeg-rockchip.git
synced 2026-04-26 17:20:17 +08:00
bink: make IDCT take 32-bit input
Since IDCT transforming 32-bit input to 8-bit output is unusual and unpractical for most codecs, move Bink IDCT into separate context. Get rid of an additional permutation table while at it since SIMD support for Bink IDCT is unlikely to be implemented in foreseeable future. Quantisation tables also have to change type to signed for proper dequantisation of DCT coefficients. Signed-off-by: Mans Rullgard <mans@mansr.com>
This commit is contained in:
committed by
Mans Rullgard
parent
001e600c3b
commit
2968bedf12
@@ -2894,11 +2894,6 @@ av_cold void dsputil_init(DSPContext* c, AVCodecContext *avctx)
|
||||
}else if(CONFIG_EATGQ_DECODER && avctx->idct_algo==FF_IDCT_EA) {
|
||||
c->idct_put= ff_ea_idct_put_c;
|
||||
c->idct_permutation_type= FF_NO_IDCT_PERM;
|
||||
}else if(CONFIG_BINK_DECODER && avctx->idct_algo==FF_IDCT_BINK) {
|
||||
c->idct = ff_bink_idct_c;
|
||||
c->idct_add = ff_bink_idct_add_c;
|
||||
c->idct_put = ff_bink_idct_put_c;
|
||||
c->idct_permutation_type = FF_NO_IDCT_PERM;
|
||||
}else{ //accurate/default
|
||||
c->idct_put = ff_simple_idct_put_8;
|
||||
c->idct_add = ff_simple_idct_add_8;
|
||||
|
||||
Reference in New Issue
Block a user