Field Guide · technology

Also known as: GSM FR, GSM HR, GSM EFR, GSM 06.10

GSM FR, HR and EFR are the original speech codecs of the GSM cellular system — Full Rate, Half Rate and Enhanced Full Rate.1 Full Rate (the RPE-LTP coder of GSM 06.10) was the first digital cellular voice codec deployed at scale; Half Rate roughly doubled network capacity by squeezing voice into half the channel resource; and Enhanced Full Rate, an ACELP design, restored and improved quality at the full-rate bit budget. Together they defined how 2G calls sounded for a generation of mobile users.

FRHREFR 13.0 kbpsRPE-LTP 5.6 kbpsVSELP 12.2 kbpsACELP HR trades quality for capacity; EFR trades algorithm for quality at FR's rate
The three classic GSM codecs balance bitrate, network capacity and voice quality differently.

How it works

All three are linear-prediction speech coders — each frame they fit a short-term LPC filter for the vocal-tract spectrum and a long-term (pitch) predictor — but they differ in how they code the excitation.

  • Full Rate (FR). Uses RPE-LTP, Regular Pulse Excitation with Long-Term Prediction. The excitation is a regularly spaced grid of pulses whose positions and amplitudes are quantised — simpler than a codebook search. It runs at 13 kbps, and with GSM’s channel coding occupies about 22.8 kbps on the air. Its characteristic slightly buzzy sound is the classic early-mobile timbre.
  • Half Rate (HR). Uses VSELP, a vector-sum excited linear-prediction coder, at about 5.6 kbps. Halving the source rate lets an operator carry two calls in the channel resource of one FR call, doubling capacity at the cost of noticeably lower quality, especially in noise.
  • Enhanced Full Rate (EFR). Uses ACELP, the algebraic code-excited variant, at 12.2 kbps. By replacing RPE with a sparse algebraic fixed codebook searched in an analysis-by-synthesis loop (CELP), EFR delivers clearly better quality than FR while fitting the same full-rate channel — the 12.2 kbps mode was later reused as the top rate of AMR.

Each coder emits fixed-size 20 ms frames with the speech bits ordered by perceptual importance, so GSM’s unequal error protection can shield the most critical bits most heavily against the radio channel.

In practice

The progression tells a capacity-versus-quality story. FR came first; HR answered operators who needed more simultaneous calls in congested cells; EFR answered users who wanted the calls to sound better. All three were eventually subsumed by AMR (Adaptive Multi-Rate), which folded the good ideas of EFR into a single coder that switches among eight rates and adapts the split between speech bits and error-protection bits to channel conditions — but FR, HR and EFR remained in the field for the long life of 2G.

Relevance to SDR

These are cellular voice codecs, not land-mobile trunking vocoders, so they fall outside the P25/DMR/NXDN/TETRA family that GopherTrunk decodes — those use the MBE vocoders (IMBE, AMBE+2) instead of RPE-LTP or ACELP. Their SDR relevance is as the speech layer of GSM: projects that analyse or decode 2G signalling and traffic must contend with FR/HR/EFR framing to reconstruct audio, and the codecs are a textbook illustration of the RPE-LTP-to-ACELP evolution that shaped later mobile voice. GopherTrunk does not implement GSM codecs; recovering GSM call audio is a separate, cellular-specific problem from its trunked-radio decode chain.

Sources

  1. Full Rate — Wikipedia, on the original RPE-LTP GSM codec; see also Enhanced Full Rate on the ACELP EFR coder. 

See also