blob: 0d5c5bd5b19f93868fcb9e246813e5257e4cbd6d
1 | /* |
2 | *=================================================================== |
3 | * 3GPP AMR Wideband Floating-point Speech Codec |
4 | *=================================================================== |
5 | */ |
6 | #ifndef DEC_UTIL_H |
7 | #define DEC_UTIL_H |
8 | |
9 | #include "typedef.h" |
10 | #include "dec_main.h" |
11 | |
12 | Word16 D_UTIL_random(Word16 *seed); |
13 | |
14 | Word32 D_UTIL_pow2(Word16 exponant, Word16 fraction); |
15 | Word16 D_UTIL_norm_l(Word32 L_var1); |
16 | Word16 D_UTIL_norm_s(Word16 var1); |
17 | Word32 D_UTIL_dot_product12(Word16 x[], Word16 y[], Word16 lg, Word16 *exp); |
18 | void D_UTIL_normalised_inverse_sqrt(Word32 *frac, Word16 *exp); |
19 | Word32 D_UTIL_inverse_sqrt(Word32 L_x); |
20 | void D_UTIL_log2(Word32 L_x, Word16 *exponent, Word16 *fraction); |
21 | void D_UTIL_l_extract(Word32 L_32, Word16 *hi, Word16 *lo); |
22 | Word32 D_UTIL_mpy_32_16(Word16 hi, Word16 lo, Word16 n); |
23 | Word32 D_UTIL_mpy_32(Word16 hi1, Word16 lo1, Word16 hi2, Word16 lo2); |
24 | Word16 D_UTIL_saturate(Word32 inp); |
25 | void D_UTIL_signal_up_scale(Word16 x[], Word16 lg, Word16 exp); |
26 | void D_UTIL_signal_down_scale(Word16 x[], Word16 lg, Word16 exp); |
27 | void D_UTIL_dec_synthesis(Word16 Aq[], Word16 exc[], Word16 Q_new, |
28 | Word16 synth16k[], Word16 prms, Word16 HfIsf[], |
29 | Word16 mode, Word16 newDTXState, Word16 bfi, |
30 | Decoder_State *st); |
31 | void D_UTIL_preemph(Word16 x[], Word16 mu, Word16 lg, Word16 *mem); |
32 | |
33 | #endif |
34 |