diff options
Diffstat (limited to 'lib/rbcodec/codecs/libopus/celt/vq.h')
-rw-r--r-- | lib/rbcodec/codecs/libopus/celt/vq.h | 29 |
1 files changed, 21 insertions, 8 deletions
diff --git a/lib/rbcodec/codecs/libopus/celt/vq.h b/lib/rbcodec/codecs/libopus/celt/vq.h index 84115cbcbb..0dfe6af058 100644 --- a/lib/rbcodec/codecs/libopus/celt/vq.h +++ b/lib/rbcodec/codecs/libopus/celt/vq.h | |||
@@ -37,6 +37,23 @@ | |||
37 | #include "entdec.h" | 37 | #include "entdec.h" |
38 | #include "modes.h" | 38 | #include "modes.h" |
39 | 39 | ||
40 | #if (defined(OPUS_X86_MAY_HAVE_SSE2) && !defined(FIXED_POINT)) | ||
41 | #include "x86/vq_sse.h" | ||
42 | #endif | ||
43 | |||
44 | #if defined(MIPSr1_ASM) | ||
45 | #include "mips/vq_mipsr1.h" | ||
46 | #endif | ||
47 | |||
48 | void exp_rotation(celt_norm *X, int len, int dir, int stride, int K, int spread); | ||
49 | |||
50 | opus_val16 op_pvq_search_c(celt_norm *X, int *iy, int K, int N, int arch); | ||
51 | |||
52 | #if !defined(OVERRIDE_OP_PVQ_SEARCH) | ||
53 | #define op_pvq_search(x, iy, K, N, arch) \ | ||
54 | (op_pvq_search_c(x, iy, K, N, arch)) | ||
55 | #endif | ||
56 | |||
40 | /** Algebraic pulse-vector quantiser. The signal x is replaced by the sum of | 57 | /** Algebraic pulse-vector quantiser. The signal x is replaced by the sum of |
41 | * the pitch and a combination of pulses such that its norm is still equal | 58 | * the pitch and a combination of pulses such that its norm is still equal |
42 | * to 1. This is the function that will typically require the most CPU. | 59 | * to 1. This is the function that will typically require the most CPU. |
@@ -46,12 +63,8 @@ | |||
46 | * @param enc Entropy encoder state | 63 | * @param enc Entropy encoder state |
47 | * @ret A mask indicating which blocks in the band received pulses | 64 | * @ret A mask indicating which blocks in the band received pulses |
48 | */ | 65 | */ |
49 | unsigned alg_quant(celt_norm *X, int N, int K, int spread, int B, | 66 | unsigned alg_quant(celt_norm *X, int N, int K, int spread, int B, ec_enc *enc, |
50 | ec_enc *enc | 67 | opus_val16 gain, int resynth, int arch); |
51 | #ifdef RESYNTH | ||
52 | , opus_val16 gain | ||
53 | #endif | ||
54 | ); | ||
55 | 68 | ||
56 | /** Algebraic pulse decoder | 69 | /** Algebraic pulse decoder |
57 | * @param X Decoded normalised spectrum (returned) | 70 | * @param X Decoded normalised spectrum (returned) |
@@ -63,8 +76,8 @@ unsigned alg_quant(celt_norm *X, int N, int K, int spread, int B, | |||
63 | unsigned alg_unquant(celt_norm *X, int N, int K, int spread, int B, | 76 | unsigned alg_unquant(celt_norm *X, int N, int K, int spread, int B, |
64 | ec_dec *dec, opus_val16 gain); | 77 | ec_dec *dec, opus_val16 gain); |
65 | 78 | ||
66 | void renormalise_vector(celt_norm *X, int N, opus_val16 gain); | 79 | void renormalise_vector(celt_norm *X, int N, opus_val16 gain, int arch); |
67 | 80 | ||
68 | int stereo_itheta(const celt_norm *X, const celt_norm *Y, int stereo, int N); | 81 | int stereo_itheta(const celt_norm *X, const celt_norm *Y, int stereo, int N, int arch); |
69 | 82 | ||
70 | #endif /* VQ_H */ | 83 | #endif /* VQ_H */ |