#include <stdint.h>
#include "libavutil/common.h"
Go to the source code of this file.
Data Structures | |
struct | AMRNBSubframe |
AMRNB unpacked data subframe. More... | |
struct | AMRNBFrame |
AMRNB unpacked data frame. More... | |
Defines | |
#define | AMR_SUBFRAME_SIZE 40 |
samples per subframe | |
#define | LP_FILTER_ORDER 10 |
linear predictive coding filter order | |
#define | AMR_BIT(field) (offsetof(AMRNBFrame, field) >> 1) |
The index of a frame parameter. | |
#define | AMR_OF(frame_num, variable) AMR_BIT(subframe[frame_num].variable) |
The index of a subframe-specific parameter. | |
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 | |
static const uint8_t | frame_sizes_nb [N_MODES] |
number of bytes for each mode | |
static const uint8_t | base_five_table [128][3] |
Base-5 representation for values 0-124. | |
static const int8_t | lsp_sub4_init [LP_FILTER_ORDER] |
Values for the lsp vector from the 4th subframe of the previous subframe values. | |
static const int16_t | lsp_avg_init [LP_FILTER_ORDER] |
Mean lsp values. | |
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. | |
static const uint8_t | pulses_nb_per_mode [] = {2, 2, 2, 3, 4, 4, 8, 10} |
number of pulses per mode | |
static const uint8_t | track_position [16] |
track start positions for algebraic code book routines | |
static const uint8_t | gray_decode [8] = { 0, 5, 15, 10, 25, 30, 20, 35 } |
3-bit Gray code to binary lookup table | |
static const uint16_t | qua_gain_pit [16] |
scalar quantized pitch gain table for 7.95 and 12.2 kbps modes | |
static const uint16_t | qua_gain_code [32] |
scalar quantized fixed gain table for 7.95 and 12.2 kbps modes | |
static const float | energy_mean [8] |
desired mean innovation energy, indexed by active mode | |
static const float | energy_pred_fac [4] = { 0.19, 0.34, 0.58, 0.68 } |
4-tap moving average prediction coefficients in reverse order | |
static const uint16_t | gains_MODE_4k75 [512][2] |
gain table for 4.75 kbps mode | |
static const uint16_t | gains_high [128][2] |
gain table for 6.70, 7.40 and 10.2 kbps modes | |
static const uint16_t | gains_low [64][2] |
gain table for 5.15 and 5.90 kbps modes | |
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 | |
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 |
Definition in file amrnbdata.h.
#define AMR_BIT | ( | field | ) | (offsetof(AMRNBFrame, field) >> 1) |
#define AMR_OF | ( | frame_num, | |||
variable | ) | AMR_BIT(subframe[frame_num].variable) |
#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(), lsf_decode_fp(), postfilter(), postfilter_5k0(), sipr_decode_lp(), sipr_decoder_init(), synthesis(), tilt_factor(), and update_state().
enum Mode |
Frame type (Table 1a in 3GPP TS 26.101).
Definition at line 39 of file amrnbdata.h.
const uint8_t* const amr_unpacking_bitmaps_per_mode[N_MODES] [static] |
Initial value:
{ order_MODE_4k75, order_MODE_5k15, order_MODE_5k9, order_MODE_6k7, order_MODE_7k4, order_MODE_7k95, order_MODE_10k2, order_MODE_12k2, }
Definition at line 345 of file amrnbdata.h.
Referenced by unpack_bitstream().
const uint8_t base_five_table[128][3] [static] |
Initial value:
{ {0, 0, 0}, {0, 0, 1}, {0, 0, 2}, {0, 0, 3}, {0, 0, 4}, {0, 1, 0}, {0, 1, 1}, {0, 1, 2}, {0, 1, 3}, {0, 1, 4}, {0, 2, 0}, {0, 2, 1}, {0, 2, 2}, {0, 2, 3}, {0, 2, 4}, {0, 3, 0}, {0, 3, 1}, {0, 3, 2}, {0, 3, 3}, {0, 3, 4}, {0, 4, 0}, {0, 4, 1}, {0, 4, 2}, {0, 4, 3}, {0, 4, 4}, {1, 0, 0}, {1, 0, 1}, {1, 0, 2}, {1, 0, 3}, {1, 0, 4}, {1, 1, 0}, {1, 1, 1}, {1, 1, 2}, {1, 1, 3}, {1, 1, 4}, {1, 2, 0}, {1, 2, 1}, {1, 2, 2}, {1, 2, 3}, {1, 2, 4}, {1, 3, 0}, {1, 3, 1}, {1, 3, 2}, {1, 3, 3}, {1, 3, 4}, {1, 4, 0}, {1, 4, 1}, {1, 4, 2}, {1, 4, 3}, {1, 4, 4}, {2, 0, 0}, {2, 0, 1}, {2, 0, 2}, {2, 0, 3}, {2, 0, 4}, {2, 1, 0}, {2, 1, 1}, {2, 1, 2}, {2, 1, 3}, {2, 1, 4}, {2, 2, 0}, {2, 2, 1}, {2, 2, 2}, {2, 2, 3}, {2, 2, 4}, {2, 3, 0}, {2, 3, 1}, {2, 3, 2}, {2, 3, 3}, {2, 3, 4}, {2, 4, 0}, {2, 4, 1}, {2, 4, 2}, {2, 4, 3}, {2, 4, 4}, {3, 0, 0}, {3, 0, 1}, {3, 0, 2}, {3, 0, 3}, {3, 0, 4}, {3, 1, 0}, {3, 1, 1}, {3, 1, 2}, {3, 1, 3}, {3, 1, 4}, {3, 2, 0}, {3, 2, 1}, {3, 2, 2}, {3, 2, 3}, {3, 2, 4}, {3, 3, 0}, {3, 3, 1}, {3, 3, 2}, {3, 3, 3}, {3, 3, 4}, {3, 4, 0}, {3, 4, 1}, {3, 4, 2}, {3, 4, 3}, {3, 4, 4}, {4, 0, 0}, {4, 0, 1}, {4, 0, 2}, {4, 0, 3}, {4, 0, 4}, {4, 1, 0}, {4, 1, 1}, {4, 1, 2}, {4, 1, 3}, {4, 1, 4}, {4, 2, 0}, {4, 2, 1}, {4, 2, 2}, {4, 2, 3}, {4, 2, 4}, {4, 3, 0}, {4, 3, 1}, {4, 3, 2}, {4, 3, 3}, {4, 3, 4}, {4, 4, 0}, {4, 4, 1}, {4, 4, 2}, {4, 4, 3}, {4, 4, 4}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0} }
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().
const float energy_mean[8] [static] |
Initial value:
{ 33.0, 33.0, 33.0, 28.75, 30.0, 36.0, 33.0, 36.0 }
Definition at line 1458 of file amrnbdata.h.
Referenced by amrnb_decode_frame().
const float energy_pred_fac[4] = { 0.19, 0.34, 0.58, 0.68 } [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().
const uint8_t frame_sizes_nb[N_MODES] [static] |
Initial value:
{ 12, 13, 15, 17, 19, 20, 26, 31, 5 }
Definition at line 357 of file amrnbdata.h.
Referenced by amr_handle_packet(), amrnb_decode_frame(), and unpack_bitstream().
const uint16_t gains_high[128][2] [static] |
Initial value:
{ { 577, 662}, { 806, 1836}, { 3109, 1052}, { 4181, 1387}, { 2373, 1425}, { 3248, 1985}, { 1827, 2320}, { 941, 3314}, { 2351, 2977}, { 3616, 2420}, { 3451, 3096}, { 2955, 4301}, { 1848, 4500}, { 3884, 5416}, { 1187, 7210}, { 3083, 9000}, { 7384, 883}, { 5962, 1506}, { 5155, 2134}, { 7944, 2009}, { 6507, 2250}, { 7670, 2752}, { 5952, 3016}, { 4898, 3764}, { 6989, 3588}, { 8174, 3978}, { 6064, 4404}, { 7709, 5087}, { 5523, 6021}, { 7769, 7126}, { 6060, 7938}, { 5594,11487}, {10581, 1356}, { 9049, 1597}, { 9794, 2035}, { 8946, 2415}, {10296, 2584}, { 9407, 2734}, { 8700, 3218}, { 9757, 3395}, {10177, 3892}, { 9170, 4528}, {10152, 5004}, { 9114, 5735}, {10500, 6266}, {10110, 7631}, { 8844, 8727}, { 8956,12496}, {12924, 976}, {11435, 1755}, {12138, 2328}, {11388, 2368}, {10700, 3064}, {12332, 2861}, {11722, 3327}, {11270, 3700}, {10861, 4413}, {12082, 4533}, {11283, 5205}, {11960, 6305}, {11167, 7534}, {12128, 8329}, {10969,10777}, {10300,17376}, {13899, 1681}, {12580, 2045}, {13265, 2439}, {14033, 2989}, {13452, 3098}, {12396, 3658}, {13510, 3780}, {12880, 4272}, {13533, 4861}, {12667, 5457}, {13854, 6106}, {13031, 6483}, {13557, 7721}, {12957, 9311}, {13714,11551}, {12591,15206}, {15113, 1540}, {15072, 2333}, {14527, 2511}, {14692, 3199}, {15382, 3560}, {14133, 3960}, {15102, 4236}, {14332, 4824}, {14846, 5451}, {15306, 6083}, {14329, 6888}, {15060, 7689}, {14406, 9426}, {15387, 9741}, {14824,14271}, {13600,24939}, {16396, 1969}, {16817, 2832}, {15713, 2843}, {16104, 3336}, {16384, 3963}, {16940, 4579}, {15711, 4599}, {16222, 5448}, {16832, 6382}, {15745, 7141}, {16326, 7469}, {16611, 8624}, {17028,10418}, {15905,11817}, {16878,14690}, {16515,20870}, {18142, 2083}, {19401, 3178}, {17508, 3426}, {20054, 4027}, {18069, 4249}, {18952, 5066}, {17711, 5402}, {19835, 6192}, {17950, 7014}, {21318, 7877}, {17910, 9289}, {19144, 9290}, {20517,11381}, {18075,14485}, {19999,17882}, {18842,32764} }
second index is {pitch_gain, fixed_gain_factor}
Definition at line 1578 of file amrnbdata.h.
Referenced by decode_gains().
const uint16_t gains_low[64][2] [static] |
Initial value:
{ {10813,28753}, {20480, 2785}, {18841, 6594}, { 6225, 7413}, {17203,10444}, {21626, 1269}, {21135, 4423}, {11304, 1556}, {19005,12820}, {17367, 2498}, {17858, 4833}, { 9994, 2498}, {17530, 7864}, {14254, 1884}, {15892, 3153}, { 6717, 1802}, {18186,20193}, {18022, 3031}, {16711, 5857}, { 8847, 4014}, {15892, 8970}, {18022, 1392}, {16711, 4096}, { 8192, 655}, {15237,13926}, {14254, 3112}, {14090, 4669}, { 5406, 2703}, {13434, 6553}, {12451, 901}, {12451, 2662}, { 3768, 655}, {14745,23511}, {19169, 2457}, {20152, 5079}, { 6881, 4096}, {20480, 8560}, {19660, 737}, {19005, 4259}, { 7864, 2088}, {11468,12288}, {15892, 1474}, {15728, 4628}, { 9175, 1433}, {16056, 7004}, {14827, 737}, {15073, 2252}, { 5079, 1228}, {13271,17326}, {16547, 2334}, {15073, 5816}, { 3932, 3686}, {14254, 8601}, {16875, 778}, {15073, 3809}, { 6062, 614}, { 9338, 9256}, {13271, 1761}, {13271, 3522}, { 2457, 1966}, {11468, 5529}, {10485, 737}, {11632, 3194}, { 1474, 778} }
second index is {pitch_gain, fixed_gain_factor}
Definition at line 1610 of file amrnbdata.h.
Referenced by decode_gains().
const uint16_t gains_MODE_4k75[512][2] [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().
const uint8_t gray_decode[8] = { 0, 5, 15, 10, 25, 30, 20, 35 } [static] |
3-bit Gray code to binary lookup table
Definition at line 1438 of file amrnbdata.h.
Referenced by decode_fixed_sparse().
const float highpass_gain = 0.939819335 [static] |
const float highpass_poles[2] = { -1.933105469, 0.935913085 } [static] |
const float highpass_zeros[2] = { -2.0, 1.0 } [static] |
const float ir_filter_medium[AMR_SUBFRAME_SIZE] [static] |
Initial value:
{ 0.923889, 0.116913, -0.123169, 0.090698, -0.031982, -0.030579, 0.075592, -0.092865, 0.085907, -0.068085, 0.053497, -0.049164, 0.052307, -0.054169, 0.047089, -0.030762, 0.013092, -0.005157, 0.014404, -0.038574, 0.066406, -0.082581, 0.076996, -0.049469, 0.010498, 0.025208, -0.046661, 0.052612, -0.050568, 0.051910, -0.062958, 0.080688, -0.093384, 0.088409, -0.060364, 0.016998, 0.023804, -0.041779, 0.025696, 0.019989, }
Definition at line 1649 of file amrnbdata.h.
const float ir_filter_strong[AMR_SUBFRAME_SIZE] [static] |
Initial value:
{ 0.448303, 0.351501, 0.038696, -0.084259, -0.173065, 0.229309, -0.001068, -0.085663, -0.092773, 0.147186, 0.090088, -0.257080, 0.115509, 0.044403, 0.066498, -0.263580, 0.245697, -0.064178, -0.044373, 0.023712, 0.033813, -0.072784, 0.068787, -0.011078, -0.020569, -0.064178, 0.184509, -0.173370, 0.032715, 0.095306, -0.154358, 0.162109, -0.071075, -0.113770, 0.211304, -0.118683, 0.020599, -0.054169, 0.000885, 0.309601, }
Definition at line 1640 of file amrnbdata.h.
const float ir_filter_strong_MODE_7k95[AMR_SUBFRAME_SIZE] [static] |
Initial value:
{ 0.817169, 0.024445, 0.076447, -0.020844, -0.042175, 0.017761, 0.018433, -0.038879, 0.107147, -0.179871, 0.138367, -0.015228, -0.059204, 0.091888, -0.154358, 0.171326, -0.060730, -0.032379, -0.044525, 0.135559, -0.021362, -0.162811, 0.140656, 0.013794, -0.017975, -0.102295, 0.090118, 0.038666, -0.036987, -0.079041, 0.052826, 0.112000, -0.136566, -0.029755, 0.134003, -0.077423, 0.028961, -0.041595, -0.029877, 0.174988, }
Definition at line 1631 of file amrnbdata.h.
const float* const ir_filters_lookup[2] [static] |
const float* const ir_filters_lookup_MODE_7k95[2] [static] |
const int16_t lsf_3_1_MODE_7k95[512][3] [static] |
const int16_t lsf_3_3_MODE_5k15[128][4] [static] |
const float lsf_3_mean[LP_FILTER_ORDER] [static] |
Initial value:
{ 377.441, 554.688, 922.363, 1339.84, 1702.15, 2046.390, 2452.880, 2741.460, 3116.70, 3348.14 }
Definition at line 1409 of file amrnbdata.h.
Referenced by lsf2lsp_3().
Initial value:
{ {-1002, -929,-1096,-1203}, { -641, -931, -604, -961}, { -779, -673, -835, -788}, { -416, -664, -458, -766}, { -652, -521, -662, -495}, {-1023, -509,-1023, -428}, { -444, -552, -368, -449}, { -479, -211,-1054, -903}, { -316, -249, -569, -591}, { -569, -275, -541, -191}, { -716, -188, -842, -264}, { -333, -248, -318, -228}, { -275, 1, -567, -228}, { -115, -221, -238, -374}, { -197, -507, -222, -579}, { -258, -432, -61, -244}, { -345, 2, -338, 39}, { -215, -169, -58, 0}, { -56, -6, -203, -131}, { 1, -186, -5, -211}, { 6, -380, 11, -418}, { -116, 131, -134, 113}, { 89, -4, 71, -2}, { -19, -192, 262, 24}, { 189, 151, -133, -109}, { 186, -153, 166, -219}, { 37, 139, 193, 171}, { 337, 124, 158, -61}, { 141, 226, -13, 190}, { 231, 34, 354, 109}, { 316, 201, 244, 164}, { 330, -85, 390, -84}, { 254, 327, 257, 335}, { 491, 147, 476, 105}, { 54, 77, 437, 370}, { 421, 314, 449, 342}, { 329, 126, 673, 292}, { 571, 388, 243, 193}, { 653, 320, 621, 280}, { 194, 380, 517, 581}, { 45, 323, 111, 422}, { 489, 395, 734, 534}, { 622, 546, 486, 502}, { 318, 572, 189, 550}, { 385, 422, -157, 153}, { -125, 382, -197, 386}, { -263, 334, 228, 697}, { -188, 1, 51, 297}, { -507, 213, -376, 397}, { -24, 255, -547, 89}, { -502, -94, 387, 179}, { -620, 68, -684, 112}, { -642, -350, -260, 172}, { -438, -324, 264, 648}, { -964, -4,-1121, 7}, { -134, 134,-1133, -306}, { 143, 96, -420, -497}, {-1221, -350,-1527, -685}, { -161, 72, 873, 691}, { 732, 283, 921, 353}, { 334, 475, 1095, 821}, { 864, 524, 843, 497}, { 714, 711, 788, 750}, { 1076, 714, 1204, 753} }
Definition at line 1384 of file amrnbdata.h.
Referenced by lsf2lsp_5().
const float lsf_5_mean[LP_FILTER_ORDER] [static] |
Initial value:
{ 337.891, 507.080, 834.961, 1247.07, 1646.00, 1982.910, 2407.960, 2708.010, 3104.00, 3344.97 }
Definition at line 1414 of file amrnbdata.h.
Referenced by lsf2lsp_5().
const int16_t lsp_avg_init[LP_FILTER_ORDER] [static] |
Initial value:
{ 1384, 2077, 3420, 5108, 6742, 8122, 9863, 11092, 12714, 13701 }
Definition at line 404 of file amrnbdata.h.
Referenced by amrnb_decode_init().
const int8_t lsp_sub4_init[LP_FILTER_ORDER] [static] |
Initial value:
{ 30, 26, 21, 15, 8, 0, -8, -15, -21, -26 }
Definition at line 395 of file amrnbdata.h.
Referenced by amrnb_decode_init().
const uint8_t order_MODE_10k2[] [static] |
Definition at line 237 of file amrnbdata.h.
const uint8_t order_MODE_12k2[] [static] |
Definition at line 280 of file amrnbdata.h.
const uint8_t order_MODE_4k75[] [static] |
Initial value:
{ 8, AMR_BIT(lsf[0]), 7, 6, 5, 4, 3, 2, 1, 0, 8, AMR_BIT(lsf[1]), 15, 14, 13, 12, 11, 10, 9, 8, 7, AMR_BIT(lsf[2]), 51, 35, 34, 50, 33, 49, 32, 8, AMR_OF(0,p_lag), 23, 22, 21, 20, 19, 18, 43, 42, 8, AMR_OF(0,p_gain), 54, 55, 40, 41, 24, 25, 26, 27, 7, AMR_OF(0,pulses[0]), 92, 68, 67, 84, 66, 65, 80, 2, AMR_OF(0,pulses[1]), 53, 52, 4, AMR_OF(1,p_lag), 17, 16, 48, 63, 7, AMR_OF(1,pulses[0]), 91, 64, 79, 83, 78, 77, 95, 2, AMR_OF(1,pulses[1]), 62, 61, 4, AMR_OF(2,p_lag), 31, 30, 60, 59, 8, AMR_OF(2,p_gain), 44, 45, 46, 47, 36, 37, 38, 39, 7, AMR_OF(2,pulses[0]), 90, 76, 75, 82, 74, 73, 94, 2, AMR_OF(2,pulses[1]), 58, 57, 4, AMR_OF(3,p_lag), 29, 28, 56, 71, 7, AMR_OF(3,pulses[0]), 89, 72, 87, 81, 86, 85, 93, 2, AMR_OF(3,pulses[1]), 70, 69, 0 }
Definition at line 85 of file amrnbdata.h.
const uint8_t order_MODE_5k15[] [static] |
Initial value:
{ 8, AMR_BIT(lsf[0]), 0, 1, 2, 3, 4, 5, 6, 7, 8, AMR_BIT(lsf[1]), 8, 9, 10, 11, 12, 13, 14, 15, 7, AMR_BIT(lsf[2]), 70, 51, 43, 71, 50, 60, 49, 8, AMR_OF(0,p_lag), 23, 22, 21, 20, 19, 47, 54, 59, 6, AMR_OF(0,p_gain), 48, 42, 35, 29, 30, 31, 7, AMR_OF(0,pulses[0]), 92, 84, 82, 100, 79, 72, 88, 2, AMR_OF(0,pulses[1]), 67, 68, 4, AMR_OF(1,p_lag), 18, 46, 53, 58, 6, AMR_OF(1,p_gain), 63, 41, 34, 26, 27, 28, 7, AMR_OF(1,pulses[0]), 91, 83, 81, 99, 78, 87, 103, 2, AMR_OF(1,pulses[1]), 65, 66, 4, AMR_OF(2,p_lag), 17, 45, 52, 57, 6, AMR_OF(2,p_gain), 62, 40, 33, 39, 24, 25, 7, AMR_OF(2,pulses[0]), 90, 80, 95, 98, 77, 86, 102, 2, AMR_OF(2,pulses[1]), 75, 64, 4, AMR_OF(3,p_lag), 16, 44, 56, 69, 6, AMR_OF(3,p_gain), 61, 55, 32, 36, 37, 38, 7, AMR_OF(3,pulses[0]), 89, 94, 93, 97, 76, 85, 101, 2, AMR_OF(3,pulses[1]), 73, 74, 0 }
Definition at line 106 of file amrnbdata.h.
const uint8_t order_MODE_5k9[] [static] |
Initial value:
{ 8, AMR_BIT(lsf[0]), 7, 6, 0, 3, 5, 4, 2, 1, 9, AMR_BIT(lsf[1]), 13, 12, 8, 11, 10, 15, 9, 14, 23, 9, AMR_BIT(lsf[2]), 71, 56, 60, 70, 59, 57, 58, 69, 76, 8, AMR_OF(0,p_lag), 16, 18, 22, 20, 30, 38, 44, 42, 6, AMR_OF(0,p_gain), 75, 48, 52, 40, 34, 26, 9, AMR_OF(0,pulses[0]), 101, 89, 93, 117, 105, 81, 85, 109, 97, 2, AMR_OF(0,pulses[1]), 67, 78, 4, AMR_OF(1,p_lag), 28, 36, 46, 87, 6, AMR_OF(1,p_gain), 74, 63, 51, 55, 33, 25, 9, AMR_OF(1,pulses[0]), 100, 88, 92, 116, 104, 80, 84, 108, 96, 2, AMR_OF(1,pulses[1]), 64, 79, 8, AMR_OF(2,p_lag), 31, 17, 21, 19, 29, 37, 43, 41, 6, AMR_OF(2,p_gain), 73, 62, 50, 54, 32, 24, 9, AMR_OF(2,pulses[0]), 99, 103, 91, 115, 119, 95, 83, 107, 111, 2, AMR_OF(2,pulses[1]), 66, 77, 4, AMR_OF(3,p_lag), 27, 35, 45, 86, 6, AMR_OF(3,p_gain), 72, 61, 49, 53, 47, 39, 9, AMR_OF(3,pulses[0]), 98, 102, 90, 114, 118, 94, 82, 106, 110, 2, AMR_OF(3,pulses[1]), 65, 68, 0 }
Definition at line 129 of file amrnbdata.h.
const uint8_t order_MODE_6k7[] [static] |
Initial value:
{ 8, AMR_BIT(lsf[0]), 7, 6, 15, 4, 5, 3, 2, 0, 9, AMR_BIT(lsf[1]), 14, 13, 8, 12, 10, 1, 9, 11, 29, 9, AMR_BIT(lsf[2]), 57, 58, 50, 56, 60, 59, 49, 71, 70, 8, AMR_OF(0,p_lag), 17, 19, 23, 21, 31, 24, 32, 52, 7, AMR_OF(0,p_gain), 36, 82, 69, 46, 42, 48, 77, 11, AMR_OF(0,pulses[0]), 109, 97, 133, 121, 101, 89, 125, 113, 93, 117, 105, 3, AMR_OF(0,pulses[1]), 81, 73, 65, 4, AMR_OF(1,p_lag), 28, 26, 38, 54, 7, AMR_OF(1,p_gain), 35, 83, 68, 45, 41, 63, 76, 11, AMR_OF(1,pulses[0]), 108, 96, 132, 120, 100, 88, 124, 112, 92, 116, 104, 3, AMR_OF(1,pulses[1]), 80, 72, 64, 8, AMR_OF(2,p_lag), 16, 18, 22, 20, 30, 39, 47, 51, 7, AMR_OF(2,p_gain), 34, 84, 67, 44, 40, 62, 75, 11, AMR_OF(2,pulses[0]), 107, 111, 131, 135, 99, 103, 123, 127, 91, 115, 119, 3, AMR_OF(2,pulses[1]), 95, 87, 79, 4, AMR_OF(3,p_lag), 27, 25, 37, 53, 7, AMR_OF(3,p_gain), 33, 85, 66, 43, 55, 61, 74, 11, AMR_OF(3,pulses[0]), 106, 110, 130, 134, 98, 102, 122, 126, 90, 114, 118, 3, AMR_OF(3,pulses[1]), 94, 86, 78, 0 }
Definition at line 152 of file amrnbdata.h.
const uint8_t order_MODE_7k4[] [static] |
Initial value:
{ 8, AMR_BIT(lsf[0]), 7, 6, 5, 4, 3, 2, 1, 0, 9, AMR_BIT(lsf[1]), 15, 14, 13, 12, 11, 10, 9, 8, 23, 9, AMR_BIT(lsf[2]), 53, 52, 51, 58, 40, 55, 54, 57, 56, 8, AMR_OF(0,p_lag), 22, 20, 18, 16, 30, 50, 95, 94, 7, AMR_OF(0,p_gain), 28, 24, 73, 36, 32, 62, 67, 13, AMR_OF(0,pulses[0]), 127, 123, 135, 131, 143, 139, 151, 103, 102, 101, 100, 99, 98, 4, AMR_OF(0,pulses[1]), 83, 75, 79, 71, 5, AMR_OF(1,p_lag), 44, 42, 49, 93, 92, 7, AMR_OF(1,p_gain), 27, 39, 72, 35, 47, 61, 66, 13, AMR_OF(1,pulses[0]), 126, 122, 134, 130, 142, 138, 150, 97, 96, 111, 110, 109, 108, 4, AMR_OF(1,pulses[1]), 82, 74, 78, 70, 8, AMR_OF(2,p_lag), 21, 19, 17, 31, 29, 48, 91, 90, 7, AMR_OF(2,p_gain), 26, 38, 87, 34, 46, 60, 65, 13, AMR_OF(2,pulses[0]), 125, 121, 133, 129, 141, 137, 149, 107, 106, 105, 104, 119, 118, 4, AMR_OF(2,pulses[1]), 81, 85, 77, 69, 5, AMR_OF(3,p_lag), 43, 41, 63, 89, 88, 7, AMR_OF(3,p_gain), 25, 37, 86, 33, 45, 59, 64, 13, AMR_OF(3,pulses[0]), 124, 120, 132, 128, 140, 136, 148, 117, 116, 115, 114, 113, 112, 4, AMR_OF(3,pulses[1]), 80, 84, 76, 68, 0 }
Definition at line 179 of file amrnbdata.h.
const uint8_t order_MODE_7k95[] [static] |
Initial value:
{ 9, AMR_BIT(lsf[0]), 67, 68, 1, 2, 3, 4, 5, 6, 7, 9, AMR_BIT(lsf[1]), 14, 13, 9, 12, 11, 0, 10, 15, 8, 9, AMR_BIT(lsf[2]), 18, 19, 23, 17, 22, 20, 21, 66, 65, 8, AMR_OF(0,p_lag), 44, 42, 40, 54, 52, 56, 64, 78, 4, AMR_OF(0,p_gain), 36, 32, 72, 80, 5, AMR_OF(0,fixed_gain), 16, 28, 24, 60, 84, 13, AMR_OF(0,pulses[0]), 135, 109, 144, 156, 120, 97, 148, 121, 101, 122, 123, 89, 124, 4, AMR_OF(0,pulses[1]), 125, 126, 127, 112, 6, AMR_OF(1,p_lag), 50, 48, 62, 70, 76, 74, 4, AMR_OF(1,p_gain), 35, 47, 87, 95, 5, AMR_OF(1,fixed_gain), 31, 27, 39, 59, 83, 13, AMR_OF(1,pulses[0]), 129, 108, 159, 155, 130, 96, 147, 131, 100, 132, 133, 88, 134, 4, AMR_OF(1,pulses[1]), 113, 114, 115, 116, 8, AMR_OF(2,p_lag), 43, 41, 55, 53, 51, 71, 79, 77, 4, AMR_OF(2,p_gain), 34, 46, 86, 94, 5, AMR_OF(2,fixed_gain), 30, 26, 38, 58, 82, 13, AMR_OF(2,pulses[0]), 139, 107, 158, 154, 140, 111, 146, 141, 99, 142, 143, 103, 128, 4, AMR_OF(2,pulses[1]), 105, 90, 91, 92, 6, AMR_OF(3,p_lag), 49, 63, 61, 69, 75, 73, 4, AMR_OF(3,p_gain), 33, 45, 85, 93, 5, AMR_OF(3,fixed_gain), 29, 25, 37, 57, 81, 13, AMR_OF(3,pulses[0]), 149, 106, 157, 153, 150, 110, 145, 151, 98, 136, 137, 102, 138, 4, AMR_OF(3,pulses[1]), 117, 118, 119, 104, 0 }
Definition at line 206 of file amrnbdata.h.
const float pred_fac[LP_FILTER_ORDER] [static] |
Initial value:
{ 0.291626, 0.328644, 0.383636, 0.405640, 0.438873, 0.355560, 0.323120, 0.298065, 0.262238, 0.197876, }
Definition at line 1420 of file amrnbdata.h.
Referenced by lsf2lsp_3().
const uint8_t pulses_nb_per_mode[] = {2, 2, 2, 3, 4, 4, 8, 10} [static] |
const uint16_t qua_gain_code[32] [static] |
Initial value:
{ 159, 206, 268, 349, 419, 482, 554, 637, 733, 842, 969, 1114, 1281, 1473, 1694, 1948, 2241, 2577, 2963, 3408, 3919, 4507, 5183, 5960, 6855, 7883, 9065, 10425, 12510, 16263, 21142, 27485 }
Definition at line 1450 of file amrnbdata.h.
Referenced by decode_gains().
const uint16_t qua_gain_pit[16] [static] |
Initial value:
{ 0, 3277, 6556, 8192, 9830, 11469, 12288, 13107, 13926, 14746, 15565, 16384, 17203, 18022, 18842, 19661 }
Definition at line 1444 of file amrnbdata.h.
Referenced by decode_gains().
const uint8_t track_position[16] [static] |
Initial value:
{ 0, 2, 0, 3, 0, 2, 0, 3, 1, 3, 2, 4, 1, 4, 1, 4 }
Definition at line 1433 of file amrnbdata.h.
Referenced by decode_fixed_sparse().