AMR » History » Version 1
laforge, 02/19/2016 10:47 PM
1 | 1 | laforge | = AMR (Adaptive Multi Rate) = |
---|---|---|---|
2 | |||
3 | The AMR codec is the latest and most advanced member of the GSM voice codec family. |
||
4 | |||
5 | == Specification == |
||
6 | |||
7 | AMR is specified in the following specs: |
||
8 | |||
9 | * TS 26.090: AMR Speech Codec; Speech Transcoding Functions |
||
10 | * mathematical description of the encoding functions and adaptive/algebraic codebook |
||
11 | * TS 26.091: AMR Speech Codec; Error concealment of lost frames |
||
12 | * TS 26.092; AMR Speech Codec; Comfort Noise Aspects |
||
13 | * how to detect background noise, encode its parameters and re-create it at the decoder |
||
14 | * TS 26.093: AMR Speech Codec; Source Controlled Rate Operation (old 06.93) |
||
15 | * Controlled Rate Operation is what happens during DTX (discontinuous transmission) |
||
16 | * |
||
17 | * TS 26.094: AMR Speech Codec; Voice Activity Detector |
||
18 | * TS 26.101: AMR Speech Codec; Frame Structure |
||
19 | * defines FR1 and FR2 frame formats used in the back-haul/core network |
||
20 | * TS 26.073: AMR Speech Codec; ANSI C source code |
||
21 | * reference implementation of the codec |
||
22 | * TS 26.074: AMR Speech Codec; Test sequences |
||
23 | * test sequences for testing a codce implementation |
||
24 | * TS 45.009: Link Adaption |
||
25 | * describe the mechanism + inband signalling for rate/link adaption |
||
26 | * SID, codec mode indication/request/command, RATSCCH |
||
27 | |||
28 | Related specs |
||
29 | * TS 28.062: Tandem Free Operation |
||
30 | * a method by which the double-transcoding in a MO-to-MT call can be avoided |
||
31 | * TS 26.071: Overall description of speech processing |
||
32 | |||
33 | == Details == |
||
34 | |||
35 | === Codec Negotiaiton / Adaption === |
||
36 | |||
37 | At any given time, there is an active set of four speech codecs. Which four is defined by a number of different procedures, e.g. |
||
38 | * Layer 3 signalling (CHANNEL MODE MODIFY, ASSIGNMENT COMMAND, HANDOVER COMMAND) |
||
39 | * RATSCCH based signalling, using stealing frames from the speech channel (like FACCH) |
||
40 | |||
41 | During call set-up and/or handover, there is a ''MultiRate configuration IE'' (TS 44.018 10.5.2.21aa) that gives |
||
42 | a description of the multi-rate function to the MS. |
||
43 | There can also be CHANNEL MODE MODIFY and HANDOVER COMMAND messages, containing the same IE. |
||
44 | |||
45 | If at channel activation time there is no codec mode specified by Layer3 or RATSCCH, there are some |
||
46 | default rules (TS 45.009 Chapter 3.4.3) that define which of the codecs will be used for the first speech frames. |
||
47 | The content of this configuration is a set of codec rates and C/I (carrier/inteference) thresholds, |
||
48 | which are to be applied. Also, the initial codec mode can be specified. |
||
49 | |||
50 | When one of the network-specified thresholds is reached, the codec mode command/command procedure is |
||
51 | invoked. |
||
52 | |||
53 | * Downlink |
||
54 | * if the MS detects a C/I threshold on incoming downlink bursts was hit, it requests a new codec mode using the ''CODEC MODE REQUEST (CMR)'' |
||
55 | * Uplink |
||
56 | * if the BTS detects a C/i threshold on incoming uplink bursts was hit, it will instruct the MS to use a different codec in the uplink direction using a ''CODEC MODE COMMAND (CMC)'' |
||
57 | |||
58 | Furthermore, the sender frequently uses the ''CODEC MODE INDICATION (CMI)'' to let the recipient know which codec was used to encode the speech frames. |