libavcodec/amrnbdata.h File Reference

AMR narrowband data and definitions. More...

#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
}
 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 * ir_filters_lookup [2]
static const float * 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


Detailed Description

AMR narrowband data and definitions.

Definition in file amrnbdata.h.


Define Documentation

#define AMR_BIT ( field   )     (offsetof(AMRNBFrame, field) >> 1)

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.

#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


Enumeration Type Documentation

enum Mode

Frame type (Table 1a in 3GPP TS 26.101).

Enumerator:
MODE_4k75  4.75 kbit/s
MODE_5k15  5.15 kbit/s
MODE_5k9  5.90 kbit/s
MODE_6k7  6.70 kbit/s
MODE_7k4  7.40 kbit/s
MODE_7k95  7.95 kbit/s
MODE_10k2  10.2 kbit/s
MODE_12k2  12.2 kbit/s
MODE_DTX  silent frame
N_MODES  number of modes
NO_DATA  no transmission

Definition at line 39 of file amrnbdata.h.


Variable Documentation

const uint8_t* const amr_unpacking_bitmaps_per_mode[N_MODES] [static]

Initial value:

position of the bitmapping data for each packet type in the AMRNBFrame

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}
}
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().

const float energy_mean[8] [static]

Initial value:

 {
    33.0, 33.0, 33.0, 28.75, 30.0, 36.0, 33.0, 36.0
}
desired mean innovation energy, indexed by active mode

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().

const uint8_t frame_sizes_nb[N_MODES] [static]

Initial value:

 {
    12, 13, 15, 17, 19, 20, 26, 31, 5
}
number of bytes for each mode

Definition at line 357 of file amrnbdata.h.

Referenced by amr_handle_packet(), and amrnb_decode_frame().

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}
}
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().

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}
}
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().

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]

Definition at line 1669 of file amrnbdata.h.

Referenced by amrnb_decode_frame().

const float highpass_poles[2] = { -1.933105469, 0.935913085 } [static]

Definition at line 1668 of file amrnbdata.h.

Referenced by amrnb_decode_frame().

const float highpass_zeros[2] = { -2.0, 1.0 } [static]

Definition at line 1667 of file amrnbdata.h.

Referenced by amrnb_decode_frame().

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,
}
impulse response filter tables converted to float from Q15 int32_t used for anti-sparseness processing

Definition at line 1631 of file amrnbdata.h.

const float* ir_filters_lookup[2] [static]

Initial value:

Definition at line 1658 of file amrnbdata.h.

Referenced by anti_sparseness().

const float* ir_filters_lookup_MODE_7k95[2] [static]

Initial value:

Definition at line 1661 of file amrnbdata.h.

Referenced by anti_sparseness().

const int16_t lsf_3_1[256][3] [static]

Definition at line 633 of file amrnbdata.h.

Referenced by lsf2lsp_3().

const int16_t lsf_3_1_MODE_7k95[512][3] [static]

Definition at line 459 of file amrnbdata.h.

Referenced by lsf2lsp_3().

const int16_t lsf_3_2[512][3] [static]

Definition at line 723 of file amrnbdata.h.

Referenced by lsf2lsp_3().

const int16_t lsf_3_3[512][4] [static]

Definition at line 897 of file amrnbdata.h.

Referenced by lsf2lsp_3().

const int16_t lsf_3_3_MODE_5k15[128][4] [static]

Definition at line 413 of file amrnbdata.h.

Referenced by lsf2lsp_3().

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().

const int16_t lsf_5_1[128][4] [static]

Definition at line 1071 of file amrnbdata.h.

Referenced by lsf2lsp_5().

const int16_t lsf_5_2[256][4] [static]

Definition at line 1117 of file amrnbdata.h.

Referenced by lsf2lsp_5().

const int16_t lsf_5_3[256][4] [static]

Definition at line 1206 of file amrnbdata.h.

Referenced by lsf2lsp_5().

const int16_t lsf_5_4[256][4] [static]

Definition at line 1295 of file amrnbdata.h.

Referenced by lsf2lsp_5().

const int16_t lsf_5_5[64][4] [static]

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
}
Mean lsp values.

Note:
: Taken from Decoder_amr_reset in Q15

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
}
Values for the lsp vector from the 4th subframe of the previous subframe values.

Note:
: Taken from Decoder_amr_reset in Q15 using val/1000

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,
}
Prediction factor table for modes other than 12.2kbit/s.

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]

number of pulses per mode

Definition at line 1430 of file amrnbdata.h.

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
}
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().

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
}
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().

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
}
track start positions for algebraic code book routines

Definition at line 1433 of file amrnbdata.h.

Referenced by decode_fixed_sparse().


Generated on Fri Oct 26 02:36:50 2012 for FFmpeg by  doxygen 1.5.8