The Intel IPP functions described in this section if properly combined can be used to construct the Adaptive Multi-Rate Wideband (AMR WB) Speech Codec compliant to 3rd Generation Partnership Project (3GPP) specification TS 26.173: “AMR Wideband Speech Codec; ANSI-C code". The description of AMR WB codec may be found in 3GPP TS 26.190: “AMR Wideband Speech Codec; Transcoding functions". Also it is known as ITU-T G.722.2 AMR WB codec.
The primitives are primarily designed to implement the well-defined, computationally expensive core operations that comprise the codec portion of the AMR WB system. The AMR WB codec comprises an adaptive multi-rate algorithm intended for encoding 7 kHz bandwidth speech signals at the sampling rate of 16 000 samples per second, which results in bit rates for the encoded bit stream of 6.60, 8.85, 12.65, 14.25, 15.85, 18.25, 19.85, 23.05 or 23.85 kbit/s.
The list of the Intel IPP primitives for the AMR WB codec is given in the table below.
Function Base Name | Operation |
---|---|
ResidualFilter_AMRWB | Computes the LPC residual |
LPCToISP_AMRWB | Performs LP to ISP coefficients conversion |
ISPToLPC_AMRWB | Performs ISP to LP coefficients conversion. |
ISPToISF_Norm_AMRWB | Performs ISP to ISF coefficients conversion |
ISFToISP_AMRWB | Performs ISF conversion to ISP |
OpenLoopPitchSearch_AMRWB | Extracts an OLP lag estimate from the weighted input speech |
HighPassFilterGetSize_AMRWB | Calculates the size of the high-pass filter state memory |
HighPassFilterInit_AMRWB | Initializes the state memory of high-pass filter |
HighPassFilter_AMRWB | Performs high-pass filtering |
HighPassFilterGetDlyLine_AMRWB | Receives the parameters of delay line of high-pass filter |
HighPassFilterSetDlyLine_AMRWB | Sets the parameters of delay line of high-pass filter |
Preemphasize_AMRWB | Computes pre-emphasis of a speech signal |
Deemphasize_AMRWB | Performs de-emphasis filtering |
SynthesisFilter_AMRWB | Reconstructs the speech signal from LP coefficients and residuals |
VADGetSize_AMRWB | Returns the size of the VAD module state memory |
VADInit_AMRWB | Initializes the VAD module state memory |
VAD_AMRWB | Performs VAD in AMR WB encoder |
VADGetEnergyLevel_AMRWB | Gets the vector of energy levels from VAD memory. |
AlgebraicCodebookSearch_AMRWB | Performs the fixed (algebraic) codebook search |
AlgebraicCodebookDecode_AMRWB | Decodes the fixed (algebraic) codebook indexes |
AdaptiveCodebookGainCoeff_AMRWB | Computes the adaptive codebook gain |
AdaptiveCodebookSearch_AMRWB | Performs the adaptive codebook search |
AdaptiveCodebookDecodeGetSize_AMRWB | Queries the memory length of the adaptive codebook decode module |
AdaptiveCodebookDecodeInit_AMRWB | Initializes the adaptive codebook decode module memory |
AdaptiveCodebookDecodeUpdate_AMRWB | Updates the adaptive codebook decode module memory |
AdaptiveCodebookDecode_AMRWB | Performs the adaptive codebook decoding |
ISFQuant_AMRWB | Quantizes the ISF |
ISFQuantDecode_AMRWB | Decodes quantized ISFs from the received codebook index |
ISFQuantDTX_AMRWB | Quantizes the ISF coefficient vector in case of DTX mode |
ISFQuantDecodeDTX_AMRWB | Decodes quantized ISFs in case of DTX mode |
GainQuant_AMRWB | Quantizes the adaptive codebook gains |
DecodeGain_AMRWB | Decodes adaptive and fixed-codebook gains |
EncDTXBuffer_AMRWB | Buffers the ISP coefficients and previous logarithm energy coefficients |
DecDTXBuffer_AMRWB | Buffers the ISF coefficients and previous logarithm energy coefficients. |
The use of these functions is demonstrated in the Intel IPP GSM/AMR Wideband/G.722.2 Speech Encoder-Decoder sample downloadable from http://www.intel.com/cd/software/products/asmo-na/eng/220046.htm.
Copyright © 2000 - 2011, Intel Corporation. All rights reserved.