AMR-NB: Difference between revisions
Jump to navigation
Jump to search
mNo edit summary |
(Tabulate IF1 and IF2) |
||
Line 10: | Line 10: | ||
=== IF1 format === | === IF1 format === | ||
{| border=1 | |||
! bits !! low level meaning || high level meaning | |||
|- | |||
| 4 | |||
| Frame type | |||
| rowspan=2 | AMR header | |||
|- | |||
| 1 | |||
| Frame quality indicator | |||
|- | |||
| 3 | |||
| Mode indication | |||
| rowspan=3 | AMR auxiliary information | |||
|- | |||
| 3 | |||
| Mode request | |||
|- | |||
| 8 | |||
| CRC | |||
|- | |||
| | |||
| Class A bits | |||
| rowspan=3 | AMR core frame | |||
|- | |||
| | |||
| Class B bits | |||
|- | |||
| | |||
| Class C bits | |||
|} | |||
=== IF2 format === | === IF2 format === | ||
{| border=1 | |||
! bits !! low level meaning || high level meaning | |||
|- | |||
| 4 | |||
| Frame type | |||
| AMR header | |||
|- | |||
| | |||
| Class A bits | |||
| rowspan=3 | AMR core frame | |||
|- | |||
| | |||
| Class B bits | |||
|- | |||
| | |||
| Class C bits | |||
|- | |||
| | |||
| Padding (called "Bit stuffing" in the specification) | |||
| | |||
|} | |||
=== Field meaning === | === Field meaning === |
Revision as of 21:55, 22 June 2007
- samples: http://samples.mplayerhq.hu/amr/
- specification: http://www.3gpp.org/ftp/Specs/html-info/26-series.htm
- Wikipedia article: http://en.wikipedia.org/wiki/Adaptive_Multi-Rate
AMR-NB (Adaptive Multi-Rate Narrowband) is a vocoder employed in low-bitrate applications like mobile phones.
Bit stream frame format
Specification (26.101) describes two possible frame types - interface formats 1 and 2 (often abbreviated IF1 and IF2). IF2 is byte-aligned.
IF1 format
bits | low level meaning | high level meaning |
---|---|---|
4 | Frame type | AMR header |
1 | Frame quality indicator | |
3 | Mode indication | AMR auxiliary information |
3 | Mode request | |
8 | CRC | |
Class A bits | AMR core frame | |
Class B bits | ||
Class C bits |
IF2 format
bits | low level meaning | high level meaning |
---|---|---|
4 | Frame type | AMR header |
Class A bits | AMR core frame | |
Class B bits | ||
Class C bits | ||
Padding (called "Bit stuffing" in the specification) |
Field meaning
Frame type | Frame content |
---|---|
0 | AMR 4.75kbps |
1 | AMR 5.15kbps |
2 | AMR 5.90kbps |
3 | AMR 6.70kbps (PDC-EFR) |
4 | AMR 7.40kbps (TDMA-EFR) |
5 | AMR 7.95kbps |
6 | AMR 10.2kbps |
7 | AMR 12.2kbps (GSM-EFR) |
8 | AMR SID |
9 | GSM-EFR SID |
10 | TDMA-EFR SID |
11 | PDC-EFR SID |
12-14 | Reserved for future use |
15 | No data (no transmission/no reception) |
- Frame quality indicator bit: 0 bad/corrupted (can use error concealment), 1 good
- CRC (8 bits) - CRC with polynomial x^8+x^6+x^5+x^4+1 computed over Class A bits
- Class A bits - the most important data
- Class B bits - less important data
- Class C bits - additional not very important data that may be present only on higher bitrates (frame types 6 and 7)
How to smear bits between all these classes is defined by a so-called 'importance function'