FFmpeg
|
Go to the source code of this file.
Data Structures | |
struct | QCELPFrame |
QCELP unpacked data frame. More... | |
struct | QCELPBitmap |
Macros | |
#define | QCELP_OF(variable, bit, len) {offsetof(QCELPFrame, variable), bit, len} |
#define | QCELP_SCALE 8192. |
The final gain scalefactor before clipping into a usable output float. More... | |
#define | QCELP_RATE_FULL_CODEBOOK_RATIO .01 |
#define | QCELP_RATE_HALF_CODEBOOK_RATIO 0.5 |
#define | QCELP_SQRT1887 1.373681186 |
sqrt(1.887) is the maximum of the pseudorandom white sequence used to generate the scaled codebook vector for bitrate 1/4. More... | |
#define | QCELP_LSP_SPREAD_FACTOR 0.02 |
This spread factor is used, for bitrate 1/8 and I_F_Q, to force LSP frequencies to be at least 80 Hz apart. More... | |
#define | QCELP_LSP_OCTAVE_PREDICTOR 29.0/32 |
Predictor coefficient for the conversion of LSP codes to LSP frequencies for 1/8 and I_F_Q. More... | |
#define | QCELP_BANDWIDTH_EXPANSION_COEFF 0.9883 |
Initial coefficient to perform bandwidth expansion on LPC. More... | |
Typedefs | |
typedef uint16_t | qcelp_vector[2] |
Variables | |
static const float | qcelp_hammsinc_table [4] = { -0.006822, 0.041249, -0.143459, 0.588863} |
Pre-calculated table for hammsinc function. More... | |
static const QCELPBitmap | qcelp_rate_full_bitmap [] |
Bitmap unpacking tables for RATE_FULL. More... | |
static const QCELPBitmap | qcelp_rate_half_bitmap [] |
Bitmap unpacking tables for RATE_HALF. More... | |
static const QCELPBitmap | qcelp_rate_quarter_bitmap [] |
Bitmap unpacking tables for RATE_QUARTER. More... | |
static const QCELPBitmap | qcelp_rate_octave_bitmap [] |
Bitmap unpacking tables for RATE_OCTAVE. More... | |
static const QCELPBitmap *const | qcelp_unpacking_bitmaps_per_rate [5] |
Bitmapping data position for each packet type in the QCELPContext. More... | |
static const uint16_t | qcelp_unpacking_bitmaps_lengths [5] |
static const qcelp_vector | qcelp_lspvq1 [64] |
LSP vector quantization tables in x*10000 form. More... | |
static const qcelp_vector | qcelp_lspvq2 [128] |
static const qcelp_vector | qcelp_lspvq3 [128] |
static const qcelp_vector | qcelp_lspvq4 [64] |
static const qcelp_vector | qcelp_lspvq5 [64] |
static const qcelp_vector *const | qcelp_lspvq [5] |
static const float | qcelp_g12ga [61] |
Table for computing Ga (decoded linear codebook gain magnitude) More... | |
static const int16_t | qcelp_rate_full_codebook [128] |
Circular codebook for rate 1 frames in x*100 form. More... | |
static const int8_t | qcelp_rate_half_codebook [128] |
Circular codebook for rate 1/2 frames in x*2 form. More... | |
static const double | qcelp_rnd_fir_coefs [11] |
Table for impulse response of BPF used to filter the white excitation for bitrate 1/4 synthesis. More... | |
Data tables for the QCELP decoder
Definition in file qcelpdata.h.
#define QCELP_OF | ( | variable, | |
bit, | |||
len | |||
) | {offsetof(QCELPFrame, variable), bit, len} |
Definition at line 82 of file qcelpdata.h.
#define QCELP_SCALE 8192. |
The final gain scalefactor before clipping into a usable output float.
Definition at line 425 of file qcelpdata.h.
#define QCELP_RATE_FULL_CODEBOOK_RATIO .01 |
Definition at line 477 of file qcelpdata.h.
#define QCELP_RATE_HALF_CODEBOOK_RATIO 0.5 |
Definition at line 502 of file qcelpdata.h.
#define QCELP_SQRT1887 1.373681186 |
sqrt(1.887) is the maximum of the pseudorandom white sequence used to generate the scaled codebook vector for bitrate 1/4.
TIA/EIA/IS-733 2.4.8.1.2
Definition at line 511 of file qcelpdata.h.
#define QCELP_LSP_SPREAD_FACTOR 0.02 |
This spread factor is used, for bitrate 1/8 and I_F_Q, to force LSP frequencies to be at least 80 Hz apart.
TIA/EIA/IS-733 2.4.3.3.2
Definition at line 533 of file qcelpdata.h.
#define QCELP_LSP_OCTAVE_PREDICTOR 29.0/32 |
Predictor coefficient for the conversion of LSP codes to LSP frequencies for 1/8 and I_F_Q.
TIA/EIA/IS-733 2.4.3.2.7-2
Definition at line 541 of file qcelpdata.h.
#define QCELP_BANDWIDTH_EXPANSION_COEFF 0.9883 |
Initial coefficient to perform bandwidth expansion on LPC.
TIA/EIA/IS-733 2.4.3.3.6 6
Definition at line 550 of file qcelpdata.h.
typedef uint16_t qcelp_vector[2] |
Definition at line 284 of file qcelpdata.h.
|
static |
Pre-calculated table for hammsinc function.
Only half of the table is needed because of symmetry.
TIA/EIA/IS-733 2.4.5.2-2/3
Definition at line 74 of file qcelpdata.h.
Referenced by do_pitchfilter().
|
static |
Bitmap unpacking tables for RATE_FULL.
TIA/EIA/IS-733 Table 2.4.7.1-1
Definition at line 89 of file qcelpdata.h.
|
static |
Bitmap unpacking tables for RATE_HALF.
TIA/EIA/IS-733 Table 2.4.7.2-1
Definition at line 176 of file qcelpdata.h.
|
static |
Bitmap unpacking tables for RATE_QUARTER.
TIA/EIA/IS-733 Table 2.4.7.3-1
Definition at line 218 of file qcelpdata.h.
|
static |
Bitmap unpacking tables for RATE_OCTAVE.
trick: CBSEED is written into QCELPContext.cbsign[15], which is not used for RATE_OCTAVE. CBSEED is only used to ensure the occurrence of random bit patterns in the 16 first bits that are used as the seed.
TIA/EIA/IS-733 Table 2.4.7.4-1
Definition at line 244 of file qcelpdata.h.
|
static |
Bitmapping data position for each packet type in the QCELPContext.
Definition at line 268 of file qcelpdata.h.
Referenced by qcelp_decode_frame().
|
static |
Definition at line 276 of file qcelpdata.h.
Referenced by qcelp_decode_frame().
|
static |
LSP vector quantization tables in x*10000 form.
TIA/EIA/IS-733 tables 2.4.3.2.6.3-1 through 2.4.3.2.6.3-5
Definition at line 292 of file qcelpdata.h.
|
static |
Definition at line 310 of file qcelpdata.h.
|
static |
Definition at line 344 of file qcelpdata.h.
|
static |
Definition at line 378 of file qcelpdata.h.
|
static |
Definition at line 396 of file qcelpdata.h.
|
static |
Definition at line 414 of file qcelpdata.h.
Referenced by decode_lspf().
|
static |
Table for computing Ga (decoded linear codebook gain magnitude)
TIA/EIA/IS-733 2.4.6.2.1-3
Definition at line 436 of file qcelpdata.h.
Referenced by decode_gain_and_index().
|
static |
Circular codebook for rate 1 frames in x*100 form.
TIA/EIA/IS-733 2.4.6.1-2
Definition at line 459 of file qcelpdata.h.
Referenced by compute_svector().
|
static |
Circular codebook for rate 1/2 frames in x*2 form.
TIA/EIA/IS-733 2.4.6.1-1
Definition at line 484 of file qcelpdata.h.
Referenced by compute_svector().
|
static |
Table for impulse response of BPF used to filter the white excitation for bitrate 1/4 synthesis.
Only half the tables are needed because of symmetry.
TIA/EIA/IS-733 2.4.8.1.2-1.1
Definition at line 521 of file qcelpdata.h.
Referenced by compute_svector().