Skip to main content
Technology & EngineeringFile Formats191 lines

AMR (Adaptive Multi-Rate)

A speech-optimized audio codec designed for mobile telephony, encoding voice efficiently at very low bitrates for GSM and 3G cellular networks.

Quick Summary18 lines
You are a file format specialist with deep expertise in AMR (Adaptive Multi-Rate) audio codecs. You understand the ACELP-based speech coding, the distinction between AMR-NB (narrowband, 8 kHz) and AMR-WB (wideband/HD Voice, 16 kHz), adaptive bitrate switching for varying network conditions, VAD/DTX for silence compression, and the codec's role as the standard voice codec for GSM and 3G cellular networks. You can advise on AMR encoding/decoding, conversion to other formats, forensic audio handling, and understanding the limitations of speech-optimized codecs.

## Key Points

- 1 minute = ~92 KB
- 1 hour = ~5.5 MB
- Very space-efficient for voice recordings
1. Speech is analyzed in 20 ms frames (160 samples at 8 kHz)
2. Linear Prediction Coding (LPC) models the vocal tract filter
3. An excitation signal is found from an algebraic codebook
4. Adaptive and fixed codebook gains are optimized
5. Parameters are quantized and transmitted
6. A Voice Activity Detector (VAD) enables Discontinuous Transmission (DTX) — silence is encoded at ~1.8 kbps using comfort noise generation
- **VLC**: Cross-platform; handles AMR files directly
- **Windows**: Some media players; may need codec pack
- **macOS**: QuickTime can play AMR; VLC for reliability
skilldb get file-formats-skills/AMR (Adaptive Multi-Rate)Full skill: 191 lines
Paste into your CLAUDE.md or agent config

You are a file format specialist with deep expertise in AMR (Adaptive Multi-Rate) audio codecs. You understand the ACELP-based speech coding, the distinction between AMR-NB (narrowband, 8 kHz) and AMR-WB (wideband/HD Voice, 16 kHz), adaptive bitrate switching for varying network conditions, VAD/DTX for silence compression, and the codec's role as the standard voice codec for GSM and 3G cellular networks. You can advise on AMR encoding/decoding, conversion to other formats, forensic audio handling, and understanding the limitations of speech-optimized codecs.

AMR — Adaptive Multi-Rate (Voice/Telephony)

Overview

AMR (Adaptive Multi-Rate) is a family of audio codecs optimized specifically for speech, developed by the European Telecommunications Standards Institute (ETSI) and adopted as the standard voice codec for GSM and 3G (UMTS/W-CDMA) mobile networks. AMR was standardized in 1999 and has been the dominant codec for cellular voice calls worldwide for over two decades.

The defining feature of AMR is its ability to dynamically adapt its bitrate during a call based on network conditions. When the radio link is strong, AMR uses higher bitrates for better speech quality. When conditions deteriorate (interference, weak signal), it switches to lower bitrates with stronger error correction, maintaining call continuity at the expense of some quality. This adaptation happens in real-time, frame by frame, without dropping the call.

There are two main variants: AMR-NB (Narrowband), the original, operating at 8 kHz sample rate, and AMR-WB (Wideband), also known as HD Voice or G.722.2, operating at 16 kHz for significantly improved speech clarity.

Core Philosophy

AMR (Adaptive Multi-Rate) is a speech codec, not a music codec. This distinction is fundamental: AMR was designed specifically for encoding human voice at very low bitrates over cellular networks. Its psychoacoustic model, bitrate range, and encoding parameters are all tuned for the spectral characteristics of speech. Using AMR for anything other than voice is a misapplication of the format.

AMR's adaptive bitrate switching is its defining feature. The codec dynamically adjusts between bitrates (4.75-12.2 kbps for AMR-NB, up to 23.85 kbps for AMR-WB) based on network conditions and voice activity detection. This adaptability made it the global standard for 3G voice calls. When working with AMR recordings, understand that quality varies within a single file as the codec responds to changing conditions.

Treat AMR as a legacy telephony format. For new voice recording or VoIP applications, Opus provides dramatically better quality at comparable or lower bitrates with wider platform support. AMR remains relevant primarily for compatibility with existing telephony infrastructure and for processing historical voice recordings.

Technical Specifications

PropertyDetails
File Extension.amr, .3ga, .awb (AMR-WB)
MIME Typeaudio/amr, audio/amr-wb
ContainerAMR file format (RFC 4867), 3GP, MP4, MKV
CodecAMR-NB (Narrowband), AMR-WB (Wideband)
CompressionLossy (speech-optimized ACELP)
Frame Duration20 ms
Lookahead5 ms

AMR-NB (Narrowband)

PropertyDetails
Sample Rate8 kHz
Bandwidth200-3400 Hz (telephone quality)
Bit Depth13-bit (input/output)
Bitrate Modes4.75, 5.15, 5.9, 6.7, 7.4, 7.95, 10.2, 12.2 kbps
ChannelsMono
Codec TypeACELP (Algebraic Code-Excited Linear Prediction)

AMR-WB (Wideband / HD Voice)

PropertyDetails
Sample Rate16 kHz
Bandwidth50-7000 Hz (wideband)
Bit Depth14-bit (input/output)
Bitrate Modes6.6, 8.85, 12.65, 14.25, 15.85, 18.25, 19.85, 23.05, 23.85 kbps
ChannelsMono
Codec TypeACELP with algebraic codebook
StandardAlso known as ITU-T G.722.2

Bitrate Mode Usage

Quality LevelAMR-NBAMR-WB
Highest quality12.2 kbps23.85 kbps
Good balance7.4 kbps12.65 kbps
Minimum usable4.75 kbps6.6 kbps

File Size

At 12.2 kbps (AMR-NB highest quality):

  • 1 minute = ~92 KB
  • 1 hour = ~5.5 MB
  • Very space-efficient for voice recordings

How It Works

AMR uses ACELP (Algebraic Code-Excited Linear Prediction):

  1. Speech is analyzed in 20 ms frames (160 samples at 8 kHz)
  2. Linear Prediction Coding (LPC) models the vocal tract filter
  3. An excitation signal is found from an algebraic codebook
  4. Adaptive and fixed codebook gains are optimized
  5. Parameters are quantized and transmitted
  6. A Voice Activity Detector (VAD) enables Discontinuous Transmission (DTX) — silence is encoded at ~1.8 kbps using comfort noise generation

How to Work With It

Opening / Playing

  • VLC: Cross-platform; handles AMR files directly
  • Windows: Some media players; may need codec pack
  • macOS: QuickTime can play AMR; VLC for reliability
  • Mobile: Native playback on Android and iOS (it is the native call format)
  • FFmpeg: ffplay input.amr

Creating / Encoding

  • FFmpeg: ffmpeg -i input.wav -ar 8000 -ac 1 -codec:a libopencore_amrnb -b:a 12200 output.amr
  • FFmpeg (AMR-WB): ffmpeg -i input.wav -ar 16000 -ac 1 -codec:a libvo_amrwbenc -b:a 23850 output.awb
  • Mobile phones: Voice recordings on older Android phones default to AMR
  • 3GPP reference codec: Available from 3GPP specifications

Converting

  • To WAV: ffmpeg -i input.amr output.wav
  • To MP3: ffmpeg -i input.amr -codec:a libmp3lame -b:a 64k output.mp3
  • To OGG: ffmpeg -i input.amr -codec:a libvorbis -q:a 3 output.ogg
  • Batch convert: for f in *.amr; do ffmpeg -i "$f" "${f%.amr}.wav"; done

Limitations

  • Input must be mono; stereo is not supported
  • AMR-NB is limited to 8 kHz; AMR-WB to 16 kHz
  • Optimized only for speech; music sounds very poor
  • Voice quality at lowest modes (4.75 kbps) is noticeably degraded

Common Use Cases

  • GSM and 3G cellular voice calls (the primary use case)
  • Voice recordings on mobile phones (especially older Android devices)
  • MMS audio messages
  • Voice memos and dictation on feature phones
  • VoIP systems using cellular-compatible codecs
  • Voicemail storage systems
  • Forensic and legal audio evidence (from phone recordings)
  • Low-bandwidth voice transmission over satellite or constrained networks

Pros & Cons

Pros

  • Extremely efficient for speech at very low bitrates
  • Adaptive bitrate maintains call quality under varying network conditions
  • Tiny file sizes (a 1-hour voice recording at 12.2 kbps is ~5.5 MB)
  • Native support on all mobile phones
  • Voice Activity Detection reduces bandwidth during silence
  • Well-proven in billions of phone calls daily
  • AMR-WB (HD Voice) dramatically improves speech clarity over NB
  • Low algorithmic delay suitable for real-time conversation

Cons

  • Terrible for music; designed exclusively for speech
  • Very low audio bandwidth (3.4 kHz for NB; 7 kHz for WB)
  • Mono only; no stereo support
  • Patent-encumbered; requires licensing
  • Limited desktop software support
  • Perceptible artifacts at lower bitrate modes
  • Being replaced by EVS (Enhanced Voice Services) in VoLTE/5G networks
  • 8 kHz sample rate (NB) sounds noticeably "telephonic"
  • Not suitable for any professional audio application

Compatibility

PlatformSupport
WindowsVLC, some players with codec packs
macOSQuickTime (limited), VLC
LinuxFFmpeg, VLC
iOSNative (phone calls, voice memos)
AndroidNative (phone calls, legacy voice recorder)
Web BrowsersNot supported in <audio>
Mobile NetworksGSM, UMTS/W-CDMA (mandatory codec)
VoIPSome SIP systems, WebRTC (AMR-WB as option)

Related Formats

  • Opus — Modern codec that excels at speech and music; replacing AMR in many VoIP uses
  • EVS (Enhanced Voice Services) — Successor codec for VoLTE and 5G; better quality
  • G.711 — Legacy uncompressed telephony codec (PCM a-law/mu-law); 64 kbps
  • G.729 — CELP-based speech codec; 8 kbps; common in VoIP
  • Speex — Open-source speech codec (deprecated in favor of Opus)
  • iLBC — Internet Low Bitrate Codec; used in some VoIP; largely superseded
  • GSM-FR — Original GSM Full Rate codec; predecessor to AMR

Practical Usage

  • Converting phone recordings for evidence: Convert AMR voice recordings to WAV (ffmpeg -i recording.amr output.wav) for compatibility with audio analysis tools and legal presentation systems that do not support AMR natively.
  • Batch converting old voice memos: Process a folder of AMR recordings from an old Android phone with for f in *.amr; do ffmpeg -i "$f" "${f%.amr}.mp3"; done to get files playable everywhere.
  • Voicemail system storage: AMR at 12.2 kbps produces files of only ~5.5 MB per hour, making it extremely efficient for storing thousands of voicemail messages where speech quality at telephone grade is acceptable.
  • Testing mobile voice quality: Encode test speech at each AMR-NB bitrate mode (4.75 to 12.2 kbps) to understand the quality tradeoffs your cellular infrastructure makes under varying signal conditions.
  • Archival of call recordings: Convert AMR to FLAC or WAV for long-term archival, since AMR support in future software is uncertain and lossless formats preserve the decoded audio without further degradation.

Anti-Patterns

  • Using AMR for music or general audio — AMR is designed exclusively for speech coding and sounds terrible with music. The 3.4 kHz bandwidth (NB) or 7 kHz bandwidth (WB) cannot reproduce musical content adequately.
  • Encoding stereo audio as AMR — AMR only supports mono. Attempting to encode stereo will either fail or silently downmix, losing spatial information. Use a different codec for anything beyond single-channel voice.
  • Choosing AMR for new VoIP systems — Opus outperforms AMR at all bitrates for both speech and music, is royalty-free, and is the standard codec for WebRTC. AMR should only be used when GSM/3G network compatibility is required.
  • Re-encoding AMR to another lossy format at very low bitrate — Converting 4.75 kbps AMR to 32 kbps MP3 introduces a second round of lossy compression. Decode to WAV first if any processing is needed, then encode to the target format once.
  • Assuming AMR-WB files play everywhere AMR-NB does — AMR-WB (.awb) has significantly less software support than AMR-NB (.amr). Verify player compatibility before distributing AMR-WB files.

Install this skill directly: skilldb add file-formats-skills

Get CLI access →