mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-12-23 12:43:46 +02:00
qdm2: initialize coeff_per_sb_select from bit_rate
The value of coeff_per_sb_select depends on the bit rate, not on sub_sampling. Also remove the calculation of tmp, no longer needed. Fixes tickets #1868 and #742 (only audio part) Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
parent
578d9cf7cc
commit
8017683647
@ -1862,18 +1862,9 @@ static av_cold int qdm2_decode_init(AVCodecContext *avctx)
|
|||||||
if ((tmp * 2240) < avctx->bit_rate) tmp_val = 4;
|
if ((tmp * 2240) < avctx->bit_rate) tmp_val = 4;
|
||||||
s->cm_table_select = tmp_val;
|
s->cm_table_select = tmp_val;
|
||||||
|
|
||||||
if (s->sub_sampling == 0)
|
if (avctx->bit_rate <= 8000)
|
||||||
tmp = 7999;
|
|
||||||
else
|
|
||||||
tmp = ((-(s->sub_sampling -1)) & 8000) + 20000;
|
|
||||||
/*
|
|
||||||
0: 7999 -> 0
|
|
||||||
1: 20000 -> 2
|
|
||||||
2: 28000 -> 2
|
|
||||||
*/
|
|
||||||
if (tmp < 8000)
|
|
||||||
s->coeff_per_sb_select = 0;
|
s->coeff_per_sb_select = 0;
|
||||||
else if (tmp <= 16000)
|
else if (avctx->bit_rate < 16000)
|
||||||
s->coeff_per_sb_select = 1;
|
s->coeff_per_sb_select = 1;
|
||||||
else
|
else
|
||||||
s->coeff_per_sb_select = 2;
|
s->coeff_per_sb_select = 2;
|
||||||
|
Loading…
Reference in New Issue
Block a user