pjsip logo pjsip.org
Open source SIP stack and media stack for presence, im/instant messaging, and multimedia communication
Loading

HOME

SIP/media Features
High Performance SIP
Small Footprint SIP
Symbian Port

FAQ

Documentation

Licensing

Download

Development (Trac)

Projects using pjsip

Mailing List

Open Source Links


About: PJLIB, PJLIB-UTIL, PJSIP, and PJMEDIA are created by: Benny Prijono
<bennylp@pjsip.org>


 

Home --> Documentations --> PJMEDIA Reference

AMR Codec Helper
[Supported codecs]

AMR common tables and helper functions. More...

Data Structures

struct  pjmedia_codec_amr_bit_info
struct  pjmedia_codec_amr_pack_setting

Functions

pj_int8_t pjmedia_codec_amr_get_mode (unsigned bitrate)
pj_int8_t pjmedia_codec_amr_get_mode2 (pj_bool_t amrnb, unsigned frame_len)
pj_status_t pjmedia_codec_amr_predecode (const pjmedia_frame *in, const pjmedia_codec_amr_pack_setting *setting, pjmedia_frame *out)
pj_status_t pjmedia_codec_amr_pack (const pjmedia_frame frames[], unsigned nframes, const pjmedia_codec_amr_pack_setting *setting, void *pkt, pj_size_t *pkt_size)
pj_status_t pjmedia_codec_amr_parse (void *pkt, pj_size_t pkt_size, const pj_timestamp *ts, const pjmedia_codec_amr_pack_setting *setting, pjmedia_frame frames[], unsigned *nframes, pj_uint8_t *cmr)

Variables

PJ_BEGIN_DECL const pj_int16_t pjmedia_codec_amrnb_ordermap122 [244]
const pj_int16_t pjmedia_codec_amrnb_ordermap102 [204]
const pj_int16_t pjmedia_codec_amrnb_ordermap795 [159]
const pj_int16_t pjmedia_codec_amrnb_ordermap74 [148]
const pj_int16_t pjmedia_codec_amrnb_ordermap67 [134]
const pj_int16_t pjmedia_codec_amrnb_ordermap59 [118]
const pj_int16_t pjmedia_codec_amrnb_ordermap515 [103]
const pj_int16_t pjmedia_codec_amrnb_ordermap475 [95]
const pj_int16_t pjmedia_codec_amrwb_ordermap_660 []
const pj_int16_t pjmedia_codec_amrwb_ordermap_885 []
const pj_int16_t pjmedia_codec_amrwb_ordermap_1265 []
const pj_int16_t pjmedia_codec_amrwb_ordermap_1425 []
const pj_int16_t pjmedia_codec_amrwb_ordermap_1585 []
const pj_int16_t pjmedia_codec_amrwb_ordermap_1825 []
const pj_int16_t pjmedia_codec_amrwb_ordermap_1985 []
const pj_int16_t pjmedia_codec_amrwb_ordermap_2305 []
const pj_int16_t pjmedia_codec_amrwb_ordermap_2385 []
const pj_int16_t *const pjmedia_codec_amrnb_ordermaps [8]
const pj_int16_t *const pjmedia_codec_amrwb_ordermaps [9]
const pj_uint8_t pjmedia_codec_amrnb_framelen [16]
const pj_uint16_t pjmedia_codec_amrnb_framelenbits [9]
const pj_uint16_t pjmedia_codec_amrnb_bitrates [8]
const pj_uint8_t pjmedia_codec_amrwb_framelen [16]
const pj_uint16_t pjmedia_codec_amrwb_framelenbits [10]
const pj_uint16_t pjmedia_codec_amrwb_bitrates [9]

Detailed Description

This sections describes common AMR constants tables (e.g: bits sensitivity order map, frame lengths, bitrates) and helper functions (e.g: pack AMR payload in octet-aligned mode or bandwidth-efficient mode, payload parser, reorder AMR bitstream).


Function Documentation

pj_int8_t pjmedia_codec_amr_get_mode ( unsigned  bitrate  ) 

Get AMR mode based on bitrate.

Parameters:
bitrate AMR bitrate.
Returns:
AMR mode.

References PJ_INLINE.

pj_int8_t pjmedia_codec_amr_get_mode2 ( pj_bool_t  amrnb,
unsigned  frame_len 
)

Get AMR mode based on frame length.

Parameters:
amrnb Set to PJ_TRUE for AMR-NB domain or PJ_FALSE for AMR-WB.
frame_len The frame length.
Returns:
AMR mode.

References pj_assert, PJ_INLINE, pjmedia_codec_amrnb_framelen, and pjmedia_codec_amrwb_framelen.

pj_status_t pjmedia_codec_amr_predecode ( const pjmedia_frame in,
const pjmedia_codec_amr_pack_setting setting,
pjmedia_frame out 
)

Prepare a frame before pass it to decoder. This function will do:

  • reorder AMR bitstream from descending sensitivity order into encoder bits order. This can be enabled/disabled via param 'setting' by setting/resetting field 'reorder'.
  • align left the start bit (make the start_bit to be 0).
Parameters:
in Input frame.
setting Settings, see pjmedia_codec_amr_pack_setting.
out Output frame.
Returns:
PJ_SUCCESS on success.

References pjmedia_codec_amr_bit_info::frame_type, pj_bzero(), PJ_INLINE, PJ_SUCCESS, pjmedia_codec_amrnb_bitrates, pjmedia_codec_amrnb_framelen, pjmedia_codec_amrnb_framelenbits, pjmedia_codec_amrnb_ordermaps, pjmedia_codec_amrwb_bitrates, pjmedia_codec_amrwb_framelen, pjmedia_codec_amrwb_framelenbits, pjmedia_codec_amrwb_ordermaps, and pjmedia_codec_amr_bit_info::start_bit.

pj_status_t pjmedia_codec_amr_pack ( const pjmedia_frame  frames[],
unsigned  nframes,
const pjmedia_codec_amr_pack_setting setting,
void *  pkt,
pj_size_t pkt_size 
)

Pack encoded AMR frame(s) into an RTP payload.

Parameters:
frames AMR frames to be packed.
nframes Number of frames to be packed.
setting Settings, see pjmedia_codec_amr_pack_setting.
pkt Payload.
pkt_size Payload size, as input this specifies payload maximum size, as output this specifies payload packed size.
Returns:
PJ_SUCCESS on success.

References pjmedia_codec_amr_bit_info::frame_type, pjmedia_codec_amr_bit_info::good_quality, info, pjmedia_codec_amr_bit_info::mode, pj_assert, PJ_ASSERT_RETURN, PJ_ETOOSMALL, PJ_INLINE, PJ_SUCCESS, pjmedia_codec_amrnb_bitrates, pjmedia_codec_amrnb_framelen, pjmedia_codec_amrnb_framelenbits, pjmedia_codec_amrnb_ordermaps, pjmedia_codec_amrwb_bitrates, pjmedia_codec_amrwb_framelen, pjmedia_codec_amrwb_framelenbits, pjmedia_codec_amrwb_ordermaps, pjmedia_codec_amr_bit_info::start_bit, and pjmedia_codec_amr_bit_info::STI.

pj_status_t pjmedia_codec_amr_parse ( void *  pkt,
pj_size_t  pkt_size,
const pj_timestamp ts,
const pjmedia_codec_amr_pack_setting setting,
pjmedia_frame  frames[],
unsigned *  nframes,
pj_uint8_t cmr 
)

Parse AMR payload into frames.

Parameters:
pkt Payload.
pkt_size Payload size.
ts Base timestamp.
setting Settings, see pjmedia_codec_amr_pack_setting.
frames Frames parsed.
nframes Number of frames parsed.
cmr Change Mode Request message for local encoder.
Returns:
PJ_SUCCESS on success.

References pjmedia_codec_amr_bit_info::frame_type, pjmedia_codec_amr_bit_info::good_quality, info, pjmedia_codec_amr_bit_info::mode, pj_assert, PJ_INLINE, PJ_SUCCESS, PJ_UNUSED_ARG, pjmedia_codec_amrnb_framelen, pjmedia_codec_amrnb_framelenbits, pjmedia_codec_amrnb_ordermaps, pjmedia_codec_amrwb_framelen, pjmedia_codec_amrwb_framelenbits, pjmedia_codec_amrwb_ordermaps, PJMEDIA_FRAME_TYPE_AUDIO, pjmedia_codec_amr_bit_info::start_bit, and pjmedia_codec_amr_bit_info::STI.


Variable Documentation

PJ_BEGIN_DECL const pj_int16_t pjmedia_codec_amrnb_ordermap122[244]
Initial value:
{
      0,   1,   2,   3,   4,   5,   6,   7,   8,  9,
     10,  11,  12,  13,  14,  23,  15,  16,  17,  18,
     19,  20,  21,  22,  24,  25,  26,  27,  28,  38,
    141,  39, 142,  40, 143,  41, 144,  42, 145,  43,
    146,  44, 147,  45, 148,  46, 149,  47,  97, 150,
    200,  48,  98, 151, 201,  49,  99, 152, 202,  86,
    136, 189, 239,  87, 137, 190, 240,  88, 138, 191,
    241,  91, 194,  92, 195,  93, 196,  94, 197,  95,
    198,  29,  30,  31,  32,  33,  34,  35,  50, 100,
    153, 203,  89, 139, 192, 242,  51, 101, 154, 204,
     55, 105, 158, 208,  90, 140, 193, 243,  59, 109,
    162, 212,  63, 113, 166, 216,  67, 117, 170, 220,
     36,  37,  54,  53,  52,  58,  57,  56,  62,  61,
     60,  66,  65,  64,  70,  69,  68, 104, 103, 102,
    108, 107, 106, 112, 111, 110, 116, 115, 114, 120,
    119, 118, 157, 156, 155, 161, 160, 159, 165, 164,
    163, 169, 168, 167, 173, 172, 171, 207, 206, 205,
    211, 210, 209, 215, 214, 213, 219, 218, 217, 223,
    222, 221,  73,  72,  71,  76,  75,  74,  79,  78,
     77,  82,  81,  80,  85,  84,  83, 123, 122, 121,
    126, 125, 124, 129, 128, 127, 132, 131, 130, 135,
    134, 133, 176, 175, 174, 179, 178, 177, 182, 181,
    180, 185, 184, 183, 188, 187, 186, 226, 225, 224,
    229, 228, 227, 232, 231, 230, 235, 234, 233, 238,
    237, 236,  96, 199
}
const pj_int16_t pjmedia_codec_amrnb_ordermap102[204]
Initial value:
{
      7,   6,   5,   4,   3,   2,   1,   0,  16,  15,
     14,  13,  12,  11,  10,   9,   8,  26,  27,  28,
     29,  30,  31, 115, 116, 117, 118, 119, 120,  72,
     73, 161, 162,  65,  68,  69, 108, 111, 112, 154,
    157, 158, 197, 200, 201,  32,  33, 121, 122,  74,
     75, 163, 164,  66, 109, 155, 198,  19,  23,  21,
     22,  18,  17,  20,  24,  25,  37,  36,  35,  34,
     80,  79,  78,  77, 126, 125, 124, 123, 169, 168,
    167, 166,  70,  67,  71, 113, 110, 114, 159, 156,
    160, 202, 199, 203,  76, 165,  81,  82,  92,  91,
     93,  83,  95,  85,  84,  94, 101, 102,  96, 104,
     86, 103,  87,  97, 127, 128, 138, 137, 139, 129,
    141, 131, 130, 140, 147, 148, 142, 150, 132, 149,
    133, 143, 170, 171, 181, 180, 182, 172, 184, 174,
    173, 183, 190, 191, 185, 193, 175, 192, 176, 186,
     38,  39,  49,  48,  50,  40,  52,  42,  41,  51,
     58,  59,  53,  61,  43,  60,  44,  54, 194, 179,
    189, 196, 177, 195, 178, 187, 188, 151, 136, 146,
    153, 134, 152, 135, 144, 145, 105,  90, 100, 107,
     88, 106,  89,  98,  99,  62,  47,  57,  64,  45,
     63,  46,  55,  56
}
const pj_int16_t pjmedia_codec_amrnb_ordermap795[159]
Initial value:
{
      8,   7,   6,   5,   4,   3,   2,  14,  16,   9,
     10,  12,  13,  15,  11,  17,  20,  22,  24,  23,
     19,  18,  21,  56,  88, 122, 154,  57,  89, 123,
    155,  58,  90, 124, 156,  52,  84, 118, 150,  53,
     85, 119, 151,  27,  93,  28,  94,  29,  95,  30,
     96,  31,  97,  61, 127,  62, 128,  63, 129,  59,
     91, 125, 157,  32,  98,  64, 130,   1,   0,  25,
     26,  33,  99,  34, 100,  65, 131,  66, 132,  54,
     86, 120, 152,  60,  92, 126, 158,  55,  87, 121,
    153, 117, 116, 115,  46,  78, 112, 144,  43,  75,
    109, 141,  40,  72, 106, 138,  36,  68, 102, 134,
    114, 149, 148, 147, 146,  83,  82,  81,  80,  51,
     50,  49,  48,  47,  45,  44,  42,  39,  35,  79,
    77,   76,  74,  71,  67, 113, 111, 110, 108, 105,
    101, 145, 143, 142, 140, 137, 133,  41,  73, 107,
    139,  37,  69, 103, 135,  38,  70, 104, 136
}
const pj_int16_t pjmedia_codec_amrnb_ordermap74[148]
Initial value:
{
      0,   1,   2,   3,   4,   5,   6,   7,   8,   9,
     10,  11,  12,  13,  14,  15,  16,  26,  87,  27,
     88,  28,  89,  29,  90,  30,  91,  51,  80, 112,
    141,  52,  81, 113, 142,  54,  83, 115, 144,  55,
     84, 116, 145,  58, 119,  59, 120,  21,  22,  23,
     17,  18,  19,  31,  60,  92, 121,  56,  85, 117,
    146,  20,  24,  25,  50,  79, 111, 140,  57,  86,
    118, 147,  49,  78, 110, 139,  48,  77,  53,  82,
    114, 143, 109, 138,  47,  76, 108, 137,  32,  33,
     61,  62,  93,  94, 122, 123,  41,  42,  43,  44,
     45,  46,  70,  71,  72,  73,  74,  75, 102, 103,
    104, 105, 106, 107, 131, 132, 133, 134, 135, 136,
     34,  63,  95, 124,  35,  64,  96, 125,  36,  65,
     97, 126,  37,  66,  98, 127,  38,  67,  99, 128,
     39,  68, 100, 129,  40,  69, 101, 130
}
const pj_int16_t pjmedia_codec_amrnb_ordermap67[134]
Initial value:
{
      0,   1,   4,   3,   5,   6,  13,   7,   2,   8,
      9,  11,  15,  12,  14,  10,  28,  82,  29,  83,
     27,  81,  26,  80,  30,  84,  16,  55, 109,  56,
    110,  31,  85,  57, 111,  48,  73, 102, 127,  32,
     86,  51,  76, 105, 130,  52,  77, 106, 131,  58,
    112,  33,  87,  19,  23,  53,  78, 107, 132,  21,
     22,  18,  17,  20,  24,  25,  50,  75, 104, 129,
     47,  72, 101, 126,  54,  79, 108, 133,  46,  71,
    100, 125, 128, 103,  74,  49,  45,  70,  99, 124,
     42,  67,  96, 121,  39,  64,  93, 118,  38,  63,
     92, 117,  35,  60,  89, 114,  34,  59,  88, 113,
     44,  69,  98, 123,  43,  68,  97, 122,  41,  66,
     95, 120,  40,  65,  94, 119,  37,  62,  91, 116,
     36,  61,  90, 115
}
const pj_int16_t pjmedia_codec_amrnb_ordermap59[118]
Initial value:
{
      0,   1,   4,   5,   3,   6,   7,   2,  13,  15,
      8,   9,  11,  12,  14,  10,  16,  28,  74,  29,
     75,  27,  73,  26,  72,  30,  76,  51,  97,  50,
     71,  96, 117,  31,  77,  52,  98,  49,  70,  95,
    116,  53,  99,  32,  78,  33,  79,  48,  69,  94,
    115,  47,  68,  93, 114,  46,  67,  92, 113,  19,
     21,  23,  22,  18,  17,  20,  24, 111,  43,  89,
    110,  64,  65,  44,  90,  25,  45,  66,  91, 112,
     54, 100,  40,  61,  86, 107,  39,  60,  85, 106,
     36,  57,  82, 103,  35,  56,  81, 102,  34,  55,
     80, 101,  42,  63,  88, 109,  41,  62,  87, 108,
     38,  59,  84, 105,  37,  58,  83, 104
}
const pj_int16_t pjmedia_codec_amrnb_ordermap515[103]
Initial value:
{
     7,   6,   5,   4,   3,   2,   1,   0,  15,  14,
    13,  12,  11,  10,   9,   8,  23,  24,  25,  26,
    27,  46,  65,  84,  45,  44,  43,  64,  63,  62,
    83,  82,  81, 102, 101, 100,  42,  61,  80,  99,
    28,  47,  66,  85,  18,  41,  60,  79,  98,  29,
    48,  67,  17,  20,  22,  40,  59,  78,  97,  21,
    30,  49,  68,  86,  19,  16,  87,  39,  38,  58,
    57,  77,  35,  54,  73,  92,  76,  96,  95,  36,
    55,  74,  93,  32,  51,  33,  52,  70,  71,  89,
    90,  31,  50,  69,  88,  37,  56,  75,  94,  34,
    53,  72,  91
}
const pj_int16_t pjmedia_codec_amrnb_ordermap475[95]
Initial value:
{
     0,   1,   2,   3,   4,   5,   6,   7,   8,   9,
    10,  11,  12,  13,  14,  15,  23,  24,  25,  26,
    27,  28,  48,  49,  61,  62,  82,  83,  47,  46,
    45,  44,  81,  80,  79,  78,  17,  18,  20,  22,
    77,  76,  75,  74,  29,  30,  43,  42,  41,  40,
    38,  39,  16,  19,  21,  50,  51,  59,  60,  63,
    64,  72,  73,  84,  85,  93,  94,  32,  33,  35,
    36,  53,  54,  56,  57,  66,  67,  69,  70,  87,
    88,  90,  91,  34,  55,  68,  89,  37,  58,  71,
    92,  31,  52,  65,  86
}
const pj_int16_t pjmedia_codec_amrwb_ordermap_660[]
Initial value:
{
      0,   5,   6,   7,  61,  84, 107, 130,  62,  85,
      8,   4,  37,  38,  39,  40,  58,  81, 104, 127,
     60,  83, 106, 129, 108, 131, 128,  41,  42,  80,
    126,   1,   3,  57, 103,  82, 105,  59,   2,  63,
    109, 110,  86,  19,  22,  23,  64,  87,  18,  20,
     21,  17,  13,  88,  43,  89,  65, 111,  14,  24,
     25,  26,  27,  28,  15,  16,  44,  90,  66, 112,
      9,  11,  10,  12,  67, 113,  29,  30,  31,  32,
     34,  33,  35,  36,  45,  51,  68,  74,  91,  97,
    114, 120,  46,  69,  92, 115,  52,  75,  98, 121,
     47,  70,  93, 116,  53,  76,  99, 122,  48,  71,
     94, 117,  54,  77, 100, 123,  49,  72,  95, 118,
     55,  78, 101, 124,  50,  73,  96, 119,  56,  79,
    102, 125
}
const pj_int16_t pjmedia_codec_amrwb_ordermap_885[]
Initial value:
{
      0,   4,   6,   7,   5,   3,  47,  48,  49, 112,
    113, 114,  75, 106, 140, 171,  80, 111, 145, 176,
     77, 108, 142, 173,  78, 109, 143, 174,  79, 110,
    144, 175,  76, 107, 141, 172,  50, 115,  51,   2,
      1,  81, 116, 146,  19,  21,  12,  17,  18,  20,
     16,  25,  13,  10,  14,  24,  23,  22,  26,   8,
     15,  52, 117,  31,  82, 147,   9,  33,  11,  83,
    148,  53, 118,  28,  27,  84, 149,  34,  35,  29,
     46,  32,  30,  54, 119,  37,  36,  39,  38,  40,
     85, 150,  41,  42,  43,  44,  45,  55,  60,  65,
     70,  86,  91,  96, 101, 120, 125, 130, 135, 151,
    156, 161, 166,  56,  87, 121, 152,  61,  92, 126,
    157,  66,  97, 131, 162,  71, 102, 136, 167,  57,
     88, 122, 153,  62,  93, 127, 158,  67,  98, 132,
    163,  72, 103, 137, 168,  58,  89, 123, 154,  63,
     94, 128, 159,  68,  99, 133, 164,  73, 104, 138,
    169,  59,  90, 124, 155,  64,  95, 129, 160,  69,
    100, 134, 165,  74, 105, 139, 170
}
const pj_int16_t pjmedia_codec_amrwb_ordermap_1265[]
Initial value:
{
      0,   4,   6,  93, 143, 196, 246,   7,   5,   3,
     47,  48,  49,  50,  51, 150, 151, 152, 153, 154,
     94, 144, 197, 247,  99, 149, 202, 252,  96, 146,
    199, 249,  97, 147, 200, 250, 100, 203,  98, 148,
    201, 251,  95, 145, 198, 248,  52,   2,   1, 101,
    204, 155,  19,  21,  12,  17,  18,  20,  16,  25,
     13,  10,  14,  24,  23,  22,  26,   8,  15,  53,
    156,  31, 102, 205,   9,  33,  11, 103, 206,  54,
    157,  28,  27, 104, 207,  34,  35,  29,  46,  32,
     30,  55, 158,  37,  36,  39,  38,  40, 105, 208,
     41,  42,  43,  44,  45,  56, 106, 159, 209,  57,
     66,  75,  84, 107, 116, 125, 134, 160, 169, 178,
    187, 210, 219, 228, 237,  58, 108, 161, 211,  62,
    112, 165, 215,  67, 117, 170, 220,  71, 121, 174,
    224,  76, 126, 179, 229,  80, 130, 183, 233,  85,
    135, 188, 238,  89, 139, 192, 242,  59, 109, 162,
    212,  63, 113, 166, 216,  68, 118, 171, 221,  72,
    122, 175, 225,  77, 127, 180, 230,  81, 131, 184,
    234,  86, 136, 189, 239,  90, 140, 193, 243,  60,
    110, 163, 213,  64, 114, 167, 217,  69, 119, 172,
    222,  73, 123, 176, 226,  78, 128, 181, 231,  82,
    132, 185, 235,  87, 137, 190, 240,  91, 141, 194,
    244,  61, 111, 164, 214,  65, 115, 168, 218,  70,
    120, 173, 223,  74, 124, 177, 227,  79, 129, 182,
    232,  83, 133, 186, 236,  88, 138, 191, 241,  92,
    142, 195, 245
}
Initial value:
{
    pjmedia_codec_amrnb_ordermap475,
    pjmedia_codec_amrnb_ordermap515,
    pjmedia_codec_amrnb_ordermap59,
    pjmedia_codec_amrnb_ordermap67,
    pjmedia_codec_amrnb_ordermap74,
    pjmedia_codec_amrnb_ordermap795,
    pjmedia_codec_amrnb_ordermap102,
    pjmedia_codec_amrnb_ordermap122
}

AMR-NB bitstream sensitivity order maps.

Referenced by pjmedia_codec_amr_pack(), pjmedia_codec_amr_parse(), and pjmedia_codec_amr_predecode().

Initial value:
{
    pjmedia_codec_amrwb_ordermap_660,
    pjmedia_codec_amrwb_ordermap_885,
    pjmedia_codec_amrwb_ordermap_1265,
    pjmedia_codec_amrwb_ordermap_1425,
    pjmedia_codec_amrwb_ordermap_1585,
    pjmedia_codec_amrwb_ordermap_1825,
    pjmedia_codec_amrwb_ordermap_1985,
    pjmedia_codec_amrwb_ordermap_2305,
    pjmedia_codec_amrwb_ordermap_2385
}

AMR-WB bitstream sensitivity order maps.

Referenced by pjmedia_codec_amr_pack(), pjmedia_codec_amr_parse(), and pjmedia_codec_amr_predecode().

Initial value:
 
    {12, 13, 15, 17, 19, 20, 26, 31, 5, 0, 0, 0, 0, 0, 0, 0}

Constant of AMR-NB frame lengths in bytes.

Referenced by pjmedia_codec_amr_get_mode2(), pjmedia_codec_amr_pack(), pjmedia_codec_amr_parse(), and pjmedia_codec_amr_predecode().

Initial value:
 
    {95, 103, 118, 134, 148, 159, 204, 244, 39}

Constant of AMR-NB frame lengths in bits.

Referenced by pjmedia_codec_amr_pack(), pjmedia_codec_amr_parse(), and pjmedia_codec_amr_predecode().

Initial value:
 
    {4750, 5150, 5900, 6700, 7400, 7950, 10200, 12200}

Constant of AMR-NB bitrates.

Referenced by pjmedia_codec_amr_pack(), and pjmedia_codec_amr_predecode().

Initial value:
 
    {17, 23, 32, 37, 40, 46, 50, 58, 60, 5, 0, 0, 0, 0, 0, 0}

Constant of AMR-WB frame lengths in bytes.

Referenced by pjmedia_codec_amr_get_mode2(), pjmedia_codec_amr_pack(), pjmedia_codec_amr_parse(), and pjmedia_codec_amr_predecode().

Initial value:
 
    {132, 177, 253, 285, 317, 365, 397, 461, 477, 40}

Constant of AMR-WB frame lengths in bits.

Referenced by pjmedia_codec_amr_pack(), pjmedia_codec_amr_parse(), and pjmedia_codec_amr_predecode().

Initial value:
 
    {6600, 8850, 12650, 14250, 15850, 18250, 19850, 23050, 23850}

Constant of AMR-WB bitrates.

Referenced by pjmedia_codec_amr_pack(), and pjmedia_codec_amr_predecode().

 


PJMEDIA small footprint Open Source media stack
Copyright (C) 2006-2008 Teluu Inc.