FFmpeg
4.0
|
AMR narrowband data and definitions. More...
Go to the source code of this file.
Data Structures | |
struct | AMRNBSubframe |
AMRNB unpacked data subframe. More... | |
struct | AMRNBFrame |
AMRNB unpacked data frame. More... | |
Macros | |
#define | AMR_SUBFRAME_SIZE 40 |
samples per subframe More... | |
#define | LP_FILTER_ORDER 10 |
linear predictive coding filter order More... | |
#define | AMR_BIT(field) (offsetof(AMRNBFrame, field)) |
The index of a frame parameter. More... | |
#define | AMR_OF(frame_num, variable) AMR_BIT(subframe[frame_num].variable) |
The index of a subframe-specific parameter. More... | |
Enumerations | |
enum | Mode { MODE_4k75 = 0, MODE_5k15, MODE_5k9, MODE_6k7, MODE_7k4, MODE_7k95, MODE_10k2, MODE_12k2, MODE_DTX, N_MODES, NO_DATA = 15, MODE_6k60 = 0, MODE_8k85, MODE_12k65, MODE_14k25, MODE_15k85, MODE_18k25, MODE_19k85, MODE_23k05, MODE_23k85, MODE_SID, SP_LOST = 14, NO_DATA } |
Frame type (Table 1a in 3GPP TS 26.101) More... | |
Variables | |
static const uint8_t | order_MODE_4k75 [] |
static const uint8_t | order_MODE_5k15 [] |
static const uint8_t | order_MODE_5k9 [] |
static const uint8_t | order_MODE_6k7 [] |
static const uint8_t | order_MODE_7k4 [] |
static const uint8_t | order_MODE_7k95 [] |
static const uint8_t | order_MODE_10k2 [] |
static const uint8_t | order_MODE_12k2 [] |
static const uint8_t *const | amr_unpacking_bitmaps_per_mode [N_MODES] |
position of the bitmapping data for each packet type in the AMRNBFrame More... | |
static const uint8_t | frame_sizes_nb [N_MODES] |
number of bytes for each mode More... | |
static const uint8_t | base_five_table [128][3] |
Base-5 representation for values 0-124. More... | |
static const int8_t | lsp_sub4_init [LP_FILTER_ORDER] |
Values for the lsp vector from the 4th subframe of the previous subframe values. More... | |
static const int16_t | lsp_avg_init [LP_FILTER_ORDER] |
Mean lsp values. More... | |
static const int16_t | lsf_3_3_MODE_5k15 [128][4] |
static const int16_t | lsf_3_1_MODE_7k95 [512][3] |
static const int16_t | lsf_3_1 [256][3] |
static const int16_t | lsf_3_2 [512][3] |
static const int16_t | lsf_3_3 [512][4] |
static const int16_t | lsf_5_1 [128][4] |
static const int16_t | lsf_5_2 [256][4] |
static const int16_t | lsf_5_3 [256][4] |
static const int16_t | lsf_5_4 [256][4] |
static const int16_t | lsf_5_5 [64][4] |
static const float | lsf_3_mean [LP_FILTER_ORDER] |
static const float | lsf_5_mean [LP_FILTER_ORDER] |
static const float | pred_fac [LP_FILTER_ORDER] |
Prediction factor table for modes other than 12.2kbit/s. More... | |
static const uint8_t | pulses_nb_per_mode [] = {2, 2, 2, 3, 4, 4, 8, 10} |
number of pulses per mode More... | |
static const uint8_t | track_position [16] |
track start positions for algebraic code book routines More... | |
static const uint8_t | gray_decode [8] = { 0, 5, 15, 10, 25, 30, 20, 35 } |
3-bit Gray code to binary lookup table More... | |
static const uint16_t | qua_gain_pit [16] |
scalar quantized pitch gain table for 7.95 and 12.2 kbps modes More... | |
static const uint16_t | qua_gain_code [32] |
scalar quantized fixed gain table for 7.95 and 12.2 kbps modes More... | |
static const float | energy_mean [8] |
desired mean innovation energy, indexed by active mode More... | |
static const float | energy_pred_fac [4] = { 0.19, 0.34, 0.58, 0.68 } |
4-tap moving average prediction coefficients in reverse order More... | |
static const uint16_t | gains_MODE_4k75 [512][2] |
gain table for 4.75 kbps mode More... | |
static const uint16_t | gains_high [128][2] |
gain table for 6.70, 7.40 and 10.2 kbps modes More... | |
static const uint16_t | gains_low [64][2] |
gain table for 5.15 and 5.90 kbps modes More... | |
static const float | ir_filter_strong_MODE_7k95 [AMR_SUBFRAME_SIZE] |
impulse response filter tables converted to float from Q15 int32_t used for anti-sparseness processing More... | |
static const float | ir_filter_strong [AMR_SUBFRAME_SIZE] |
static const float | ir_filter_medium [AMR_SUBFRAME_SIZE] |
static const float *const | ir_filters_lookup [2] |
static const float *const | ir_filters_lookup_MODE_7k95 [2] |
static const float | highpass_zeros [2] = { -2.0, 1.0 } |
static const float | highpass_poles [2] = { -1.933105469, 0.935913085 } |
static const float | highpass_gain = 0.939819335 |
AMR narrowband data and definitions.
Definition in file amrnbdata.h.
#define AMR_SUBFRAME_SIZE 40 |
samples per subframe
Definition at line 36 of file amrnbdata.h.
Referenced by amrnb_decode_frame(), apply_ir_filter(), decode_pitch_vector(), postfilter(), synthesis(), and update_state().
#define LP_FILTER_ORDER 10 |
linear predictive coding filter order
Definition at line 53 of file amrnbdata.h.
Referenced by amrnb_decode_frame(), amrnb_decode_init(), decode_frame(), eval_ir(), ff_sipr_decode_frame_16k(), fixed_gain_smooth(), lsf2lsp_3(), lsf2lsp_5(), lsf2lsp_for_mode12k2(), lsf_decode_fp(), postfilter(), postfilter_5k0(), sipr_decode_lp(), sipr_decoder_init(), synthesis(), tilt_factor(), and update_state().
#define AMR_BIT | ( | field | ) | (offsetof(AMRNBFrame, field)) |
The index of a frame parameter.
Definition at line 74 of file amrnbdata.h.
#define AMR_OF | ( | frame_num, | |
variable | |||
) | AMR_BIT(subframe[frame_num].variable) |
The index of a subframe-specific parameter.
Definition at line 76 of file amrnbdata.h.
enum Mode |
Frame type (Table 1a in 3GPP TS 26.101)
Definition at line 39 of file amrnbdata.h.
|
static |
Definition at line 85 of file amrnbdata.h.
|
static |
Definition at line 106 of file amrnbdata.h.
|
static |
Definition at line 129 of file amrnbdata.h.
|
static |
Definition at line 152 of file amrnbdata.h.
|
static |
Definition at line 179 of file amrnbdata.h.
|
static |
Definition at line 206 of file amrnbdata.h.
|
static |
Definition at line 237 of file amrnbdata.h.
|
static |
Definition at line 280 of file amrnbdata.h.
position of the bitmapping data for each packet type in the AMRNBFrame
Definition at line 345 of file amrnbdata.h.
Referenced by unpack_bitstream().
number of bytes for each mode
Definition at line 357 of file amrnbdata.h.
Referenced by amrnb_decode_frame(), and unpack_bitstream().
|
static |
Base-5 representation for values 0-124.
This is useful for decoding pulse positions in 10.2 kbit/s frames. Safe values are provided for out of range positions 125-127.
Definition at line 367 of file amrnbdata.h.
Referenced by decode_10bit_pulse().
|
static |
Values for the lsp vector from the 4th subframe of the previous subframe values.
Definition at line 395 of file amrnbdata.h.
Referenced by amrnb_decode_init().
|
static |
Mean lsp values.
Definition at line 404 of file amrnbdata.h.
Referenced by amrnb_decode_init().
|
static |
Definition at line 413 of file amrnbdata.h.
Referenced by lsf2lsp_3().
|
static |
Definition at line 459 of file amrnbdata.h.
Referenced by lsf2lsp_3().
|
static |
Definition at line 633 of file amrnbdata.h.
Referenced by lsf2lsp_3().
|
static |
Definition at line 723 of file amrnbdata.h.
Referenced by lsf2lsp_3().
|
static |
Definition at line 897 of file amrnbdata.h.
Referenced by lsf2lsp_3().
|
static |
Definition at line 1071 of file amrnbdata.h.
Referenced by lsf2lsp_5().
|
static |
Definition at line 1117 of file amrnbdata.h.
Referenced by lsf2lsp_5().
|
static |
Definition at line 1206 of file amrnbdata.h.
Referenced by lsf2lsp_5().
|
static |
Definition at line 1295 of file amrnbdata.h.
Referenced by lsf2lsp_5().
|
static |
Definition at line 1384 of file amrnbdata.h.
Referenced by lsf2lsp_5().
|
static |
Definition at line 1409 of file amrnbdata.h.
Referenced by lsf2lsp_3().
|
static |
Definition at line 1414 of file amrnbdata.h.
Referenced by lsf2lsp_5().
|
static |
Prediction factor table for modes other than 12.2kbit/s.
Definition at line 1420 of file amrnbdata.h.
Referenced by lsf2lsp_3().
|
static |
number of pulses per mode
Definition at line 1430 of file amrnbdata.h.
|
static |
track start positions for algebraic code book routines
Definition at line 1433 of file amrnbdata.h.
Referenced by decode_fixed_sparse().
|
static |
3-bit Gray code to binary lookup table
Definition at line 1438 of file amrnbdata.h.
Referenced by decode_fixed_sparse().
|
static |
scalar quantized pitch gain table for 7.95 and 12.2 kbps modes
Definition at line 1444 of file amrnbdata.h.
Referenced by decode_gains().
|
static |
scalar quantized fixed gain table for 7.95 and 12.2 kbps modes
Definition at line 1450 of file amrnbdata.h.
Referenced by decode_gains().
|
static |
desired mean innovation energy, indexed by active mode
Definition at line 1458 of file amrnbdata.h.
Referenced by amrnb_decode_frame().
|
static |
4-tap moving average prediction coefficients in reverse order
Definition at line 1463 of file amrnbdata.h.
Referenced by amrnb_decode_frame(), and amrwb_decode_frame().
|
static |
gain table for 4.75 kbps mode
first index has even/odd indexes for subframes 0,2/1,3 second index is {pitch_gain, fixed_gain_factor}
Definition at line 1469 of file amrnbdata.h.
Referenced by decode_gains().
|
static |
gain table for 6.70, 7.40 and 10.2 kbps modes
second index is {pitch_gain, fixed_gain_factor}
Definition at line 1578 of file amrnbdata.h.
Referenced by decode_gains().
|
static |
gain table for 5.15 and 5.90 kbps modes
second index is {pitch_gain, fixed_gain_factor}
Definition at line 1610 of file amrnbdata.h.
Referenced by decode_gains().
|
static |
impulse response filter tables converted to float from Q15 int32_t used for anti-sparseness processing
Definition at line 1631 of file amrnbdata.h.
|
static |
Definition at line 1640 of file amrnbdata.h.
|
static |
Definition at line 1649 of file amrnbdata.h.
|
static |
|
static |
Definition at line 1661 of file amrnbdata.h.
Referenced by anti_sparseness().
|
static |
Definition at line 1667 of file amrnbdata.h.
Referenced by amrnb_decode_frame().
|
static |
Definition at line 1668 of file amrnbdata.h.
Referenced by amrnb_decode_frame().
|
static |
Definition at line 1669 of file amrnbdata.h.
Referenced by amrnb_decode_frame().