AMR-NB
Jump to navigation
Jump to search
- 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.
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
Frame type (4 bits) Frame quality indicator (1 bit) Mode indication (3 bits) Mode request (3 bits) CRC (8 bits) Class A bits Class B bits Class C bits
IF2 format
Frame type (4 bits) Class A bits Class B bits Class C bits Padding (called "Bit Stuffing" in spec)
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 (1 bit) - flag that shows if frame is 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 so-called 'importance function'