webkit
2cdf99a9e3038c7e01b3c37e8ad903ecbe5eecf1
https://github.com/WebKit/webkit
|
Vector quantisation of the residual. More...
Go to the source code of this file.
Functions | |
unsigned | alg_quant (celt_norm *X, int N, int K, int spread, int B, ec_enc *enc) |
unsigned | alg_unquant (celt_norm *X, int N, int K, int spread, int B, ec_dec *dec, opus_val16 gain) |
void | renormalise_vector (celt_norm *X, int N, opus_val16 gain, int arch) |
int | stereo_itheta (const celt_norm *X, const celt_norm *Y, int stereo, int N, int arch) |
Vector quantisation of the residual.
Algebraic pulse-vector quantiser. The signal x is replaced by the sum of the pitch and a combination of pulses such that its norm is still equal to 1. This is the function that will typically require the most CPU.
X | Residual signal to quantise/encode (returns quantised version) |
N | Number of samples to encode |
K | Number of pulses to use |
enc | Entropy encoder state A mask indicating which blocks in the band received pulses |
unsigned alg_unquant | ( | celt_norm * | X, |
int | N, | ||
int | K, | ||
int | spread, | ||
int | B, | ||
ec_dec * | dec, | ||
opus_val16 | gain | ||
) |
Algebraic pulse decoder
X | Decoded normalised spectrum (returned) |
N | Number of samples to decode |
K | Number of pulses to use |
dec | Entropy decoder state A mask indicating which blocks in the band received pulses |
Decode pulse vector and combine the result with the pitch vector to produce the final normalised signal in the current band.
void renormalise_vector | ( | celt_norm * | X, |
int | N, | ||
opus_val16 | gain, | ||
int | arch | ||
) |