FFmpeg
4.0
|
AMR wideband data and definitions. More...
#include <stdint.h>
#include <stddef.h>
Go to the source code of this file.
Data Structures | |
struct | AMRWBSubFrame |
struct | AMRWBFrame |
Macros | |
#define | LP_ORDER 16 |
linear predictive coding filter order More... | |
#define | LP_ORDER_16k 20 |
lpc filter order at 16kHz More... | |
#define | HB_FIR_SIZE 30 |
amount of past data needed by HB filters More... | |
#define | UPS_FIR_SIZE 12 |
upsampling filter size More... | |
#define | UPS_MEM_SIZE (2 * UPS_FIR_SIZE) |
#define | MIN_ISF_SPACING (128.0 / 32768.0) |
minimum isf gap More... | |
#define | PRED_FACTOR (1.0 / 3.0) |
#define | MIN_ENERGY -14.0 |
initial innovation energy (dB) More... | |
#define | ENERGY_MEAN 30.0 |
mean innovation energy (dB) in all modes More... | |
#define | PREEMPH_FAC 0.68 |
factor used to de-emphasize synthesis More... | |
#define | AMRWB_SFR_SIZE 64 |
samples per subframe at 12.8 kHz More... | |
#define | AMRWB_SFR_SIZE_16k 80 |
samples per subframe at 16 kHz More... | |
#define | AMRWB_P_DELAY_MAX 231 |
maximum pitch delay value More... | |
#define | AMRWB_P_DELAY_MIN 34 |
#define | AMR_BIT(field) (offsetof(AMRWBFrame, 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 } |
Variables | |
static const uint16_t | order_MODE_6k60 [] |
static const uint16_t | order_MODE_8k85 [] |
static const uint16_t | order_MODE_12k65 [] |
static const uint16_t | order_MODE_14k25 [] |
static const uint16_t | order_MODE_15k85 [] |
static const uint16_t | order_MODE_18k25 [] |
static const uint16_t | order_MODE_19k85 [] |
static const uint16_t | order_MODE_23k05 [] |
static const uint16_t | order_MODE_23k85 [] |
static const uint16_t *const | amr_bit_orderings_by_mode [] |
Reordering array addresses for each mode. More... | |
static const int16_t | dico1_isf [256][9] |
Indexed tables for retrieval of quantized ISF vectors in Q15. More... | |
static const int16_t | dico2_isf [256][7] |
static const int16_t | dico21_isf [64][3] |
static const int16_t | dico22_isf [128][3] |
static const int16_t | dico23_isf [128][3] |
static const int16_t | dico24_isf [32][3] |
static const int16_t | dico25_isf [32][4] |
static const int16_t | dico21_isf_36b [128][5] |
static const int16_t | dico22_isf_36b [128][4] |
static const int16_t | dico23_isf_36b [64][7] |
static const int16_t | isf_mean [LP_ORDER] |
Means of ISF vectors in Q15. More... | |
static const int16_t | isf_init [LP_ORDER] |
Initialization tables for the processed ISF vector in Q15. More... | |
static const float | isfp_inter [4] = { 0.45, 0.8, 0.96, 1.0 } |
ISF/ISP interpolation coefficients for each subframe. More... | |
static const float | ac_inter [65] |
Coefficients for FIR interpolation of excitation vector at pitch lag resulting the adaptive codebook vector. More... | |
static const uint8_t | pulses_nb_per_mode_tr [][4] |
[i][j] is the number of pulses present in track j at mode i More... | |
static const int16_t | qua_gain_6b [64][2] |
Tables for decoding quantized gains { pitch (Q14), fixed factor (Q11) }. More... | |
static const int16_t | qua_gain_7b [128][2] |
static const float | energy_pred_fac [4] = { 0.2, 0.3, 0.4, 0.5 } |
4-tap moving average prediction coefficients in reverse order More... | |
static const float | ir_filter_str [64] |
impulse response filter tables converted to float from Q15 used for anti-sparseness processing More... | |
static const float | ir_filter_mid [64] |
static const float *const | ir_filters_lookup [2] |
static const float | hpf_zeros [2] = { -2.0, 1.0 } |
High-pass filters coefficients for 31 Hz and 400 Hz cutoff. More... | |
static const float | hpf_31_poles [2] = { -1.978881836, 0.979125977 } |
static const float | hpf_31_gain = 0.989501953 |
static const float | hpf_400_poles [2] = { -1.787109375, 0.864257812 } |
static const float | hpf_400_gain = 0.893554687 |
static const float | upsample_fir [4][24] |
Interpolation coefficients for 5/4 signal upsampling Table from the reference source was reordered for efficiency. More... | |
static const uint16_t | qua_hb_gain [16] |
High band quantized gains for 23k85 in Q14. More... | |
static const float | bpf_6_7_coef [31] |
High-band post-processing FIR filters coefficients from Q15. More... | |
static const float | lpf_7_coef [31] |
static const uint16_t | cf_sizes_wb [] |
Core frame sizes in each mode. More... | |
AMR wideband data and definitions.
Definition in file amrwbdata.h.
#define LP_ORDER 16 |
linear predictive coding filter order
Definition at line 33 of file amrwbdata.h.
Referenced by amrwb_decode_frame(), amrwb_decode_init(), auto_correlation(), decode_pitch_vector(), extrapolate_isf(), hb_synthesis(), interpolate_isp(), isf_add_mean_and_past(), stability_factor(), synthesis(), and update_sub_state().
#define LP_ORDER_16k 20 |
lpc filter order at 16kHz
Definition at line 34 of file amrwbdata.h.
Referenced by amrwb_decode_frame(), hb_synthesis(), and update_sub_state().
#define HB_FIR_SIZE 30 |
amount of past data needed by HB filters
Definition at line 35 of file amrwbdata.h.
Referenced by hb_fir_filter().
#define UPS_FIR_SIZE 12 |
upsampling filter size
Definition at line 36 of file amrwbdata.h.
Referenced by amrwb_decode_frame(), and upsample_5_4().
#define UPS_MEM_SIZE (2 * UPS_FIR_SIZE) |
Definition at line 37 of file amrwbdata.h.
Referenced by amrwb_decode_frame(), update_sub_state(), and upsample_5_4().
#define MIN_ISF_SPACING (128.0 / 32768.0) |
#define PRED_FACTOR (1.0 / 3.0) |
Definition at line 40 of file amrwbdata.h.
Referenced by isf_add_mean_and_past().
#define MIN_ENERGY -14.0 |
initial innovation energy (dB)
Definition at line 41 of file amrwbdata.h.
#define ENERGY_MEAN 30.0 |
mean innovation energy (dB) in all modes
Definition at line 42 of file amrwbdata.h.
Referenced by amrwb_decode_frame().
#define PREEMPH_FAC 0.68 |
factor used to de-emphasize synthesis
Definition at line 43 of file amrwbdata.h.
Referenced by amrwb_decode_frame().
#define AMRWB_SFR_SIZE 64 |
samples per subframe at 12.8 kHz
Definition at line 45 of file amrwbdata.h.
Referenced by amrwb_decode_frame(), anti_sparseness(), de_emphasis(), decode_fixed_vector(), decode_pitch_vector(), find_hb_gain(), pitch_enhancer(), pitch_sharpening(), scaled_hb_excitation(), synthesis(), update_sub_state(), and voice_factor().
#define AMRWB_SFR_SIZE_16k 80 |
samples per subframe at 16 kHz
Definition at line 46 of file amrwbdata.h.
Referenced by amrwb_decode_frame(), hb_fir_filter(), hb_synthesis(), scaled_hb_excitation(), and update_sub_state().
#define AMRWB_P_DELAY_MAX 231 |
maximum pitch delay value
Definition at line 47 of file amrwbdata.h.
Referenced by amrwb_decode_init(), decode_pitch_lag_high(), decode_pitch_lag_low(), and update_sub_state().
#define AMRWB_P_DELAY_MIN 34 |
Definition at line 48 of file amrwbdata.h.
Referenced by decode_pitch_lag_high(), and decode_pitch_lag_low().
#define AMR_BIT | ( | field | ) | (offsetof(AMRWBFrame, field)) |
The index of a frame parameter.
Definition at line 85 of file amrwbdata.h.
#define AMR_OF | ( | frame_num, | |
variable | |||
) | AMR_BIT(subframe[frame_num].variable) |
The index of a subframe-specific parameter.
Definition at line 87 of file amrwbdata.h.
enum Mode |
Definition at line 51 of file amrwbdata.h.
|
static |
Definition at line 99 of file amrwbdata.h.
|
static |
Definition at line 125 of file amrwbdata.h.
|
static |
Definition at line 161 of file amrwbdata.h.
|
static |
Definition at line 219 of file amrwbdata.h.
|
static |
Definition at line 277 of file amrwbdata.h.
|
static |
Definition at line 335 of file amrwbdata.h.
|
static |
Definition at line 409 of file amrwbdata.h.
|
static |
Definition at line 491 of file amrwbdata.h.
|
static |
Definition at line 581 of file amrwbdata.h.
|
static |
Reordering array addresses for each mode.
Definition at line 676 of file amrwbdata.h.
Referenced by amrwb_decode_frame().
|
static |
Indexed tables for retrieval of quantized ISF vectors in Q15.
Definition at line 692 of file amrwbdata.h.
Referenced by decode_isf_indices_36b(), and decode_isf_indices_46b().
|
static |
Definition at line 951 of file amrwbdata.h.
Referenced by decode_isf_indices_36b(), and decode_isf_indices_46b().
|
static |
Definition at line 1210 of file amrwbdata.h.
Referenced by decode_isf_indices_46b().
|
static |
Definition at line 1245 of file amrwbdata.h.
Referenced by decode_isf_indices_46b().
|
static |
Definition at line 1312 of file amrwbdata.h.
Referenced by decode_isf_indices_46b().
|
static |
Definition at line 1379 of file amrwbdata.h.
Referenced by decode_isf_indices_46b().
|
static |
Definition at line 1398 of file amrwbdata.h.
Referenced by decode_isf_indices_46b().
|
static |
Definition at line 1417 of file amrwbdata.h.
Referenced by decode_isf_indices_36b().
|
static |
Definition at line 1484 of file amrwbdata.h.
Referenced by decode_isf_indices_36b().
|
static |
Definition at line 1551 of file amrwbdata.h.
Referenced by decode_isf_indices_36b().
|
static |
Means of ISF vectors in Q15.
Definition at line 1619 of file amrwbdata.h.
Referenced by isf_add_mean_and_past().
|
static |
Initialization tables for the processed ISF vector in Q15.
Definition at line 1625 of file amrwbdata.h.
Referenced by amrwb_decode_init().
|
static |
ISF/ISP interpolation coefficients for each subframe.
Definition at line 1631 of file amrwbdata.h.
Referenced by hb_synthesis(), and interpolate_isp().
|
static |
Coefficients for FIR interpolation of excitation vector at pitch lag resulting the adaptive codebook vector.
Definition at line 1635 of file amrwbdata.h.
Referenced by decode_pitch_vector().
|
static |
[i][j] is the number of pulses present in track j at mode i
Definition at line 1656 of file amrwbdata.h.
Referenced by decode_fixed_vector().
|
static |
Tables for decoding quantized gains { pitch (Q14), fixed factor (Q11) }.
Definition at line 1663 of file amrwbdata.h.
Referenced by decode_gains().
|
static |
Definition at line 1698 of file amrwbdata.h.
Referenced by decode_gains().
|
static |
4-tap moving average prediction coefficients in reverse order
Definition at line 1766 of file amrwbdata.h.
|
static |
impulse response filter tables converted to float from Q15 used for anti-sparseness processing
Definition at line 1770 of file amrwbdata.h.
|
static |
Definition at line 1789 of file amrwbdata.h.
|
static |
Definition at line 1808 of file amrwbdata.h.
|
static |
High-pass filters coefficients for 31 Hz and 400 Hz cutoff.
Definition at line 1813 of file amrwbdata.h.
Referenced by amrwb_decode_frame().
|
static |
Definition at line 1814 of file amrwbdata.h.
Referenced by amrwb_decode_frame().
|
static |
Definition at line 1815 of file amrwbdata.h.
Referenced by amrwb_decode_frame().
|
static |
Definition at line 1817 of file amrwbdata.h.
Referenced by amrwb_decode_frame().
|
static |
Definition at line 1818 of file amrwbdata.h.
Referenced by amrwb_decode_frame().
|
static |
Interpolation coefficients for 5/4 signal upsampling Table from the reference source was reordered for efficiency.
Definition at line 1822 of file amrwbdata.h.
Referenced by upsample_5_4().
|
static |
High band quantized gains for 23k85 in Q14.
Definition at line 1850 of file amrwbdata.h.
Referenced by find_hb_gain().
|
static |
High-band post-processing FIR filters coefficients from Q15.
Definition at line 1856 of file amrwbdata.h.
Referenced by amrwb_decode_frame().
|
static |
Definition at line 1870 of file amrwbdata.h.
Referenced by amrwb_decode_frame().
|
static |
Core frame sizes in each mode.
Definition at line 1885 of file amrwbdata.h.
Referenced by amrwb_decode_frame().