mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-12-23 12:43:46 +02:00
g723_1dec: inline normalize_bits() in scale vector and optimize it.
many branches and cases of scale_vector are irrelevant for the case here and by inlining they can be reliably removed. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
parent
20035fa241
commit
603221ebd0
@ -257,7 +257,8 @@ static int scale_vector(int16_t *dst, const int16_t *vector, int length)
|
|||||||
for (i = 0; i < length; i++)
|
for (i = 0; i < length; i++)
|
||||||
max |= FFABS(vector[i]);
|
max |= FFABS(vector[i]);
|
||||||
|
|
||||||
bits = normalize_bits(max, 15);
|
bits= 14 - av_log2_16bit(max);
|
||||||
|
bits= FFMAX(bits, 0);
|
||||||
|
|
||||||
for (i = 0; i < length; i++)
|
for (i = 0; i < length; i++)
|
||||||
dst[i] = vector[i] << bits >> 3;
|
dst[i] = vector[i] << bits >> 3;
|
||||||
|
Loading…
Reference in New Issue
Block a user