Full Rate

Full Rate (FR or GSM-FR or GSM 06.10 or sometimes simply GSM) was the first digital speech coding standard used in the GSM digital mobile phone system. It uses linear predictive coding (LPC). The bit rate of the codec is 13 kbit/s, or 1.625 bits/audio sample (often padded out to 33 bytes/20 ms or 13.2 kbit/s). The quality of the coded speech is quite poor by modern standards, but at the time of development (early 1990s) it was a good compromise between computational complexity and quality, requiring only on the order of a million additions and multiplications per second. The codec is still widely used in networks around the world. Gradually FR will be replaced by Enhanced Full Rate (EFR) and Adaptive Multi-Rate (AMR) standards, which provide much higher speech quality with lower bit rate.

Technology
GSM-FR is specified in ETSI 06.10 (ETS 300 961) and is based on RPE-LTP (Regular Pulse Excitation - Long Term Prediction) speech coding paradigm. Like many other linear predictive coding (LPC) speech codecs, linear prediction is used in the synthesis filter. However, unlike most modern speech codecs, the order of the linear prediction is only 8. In modern narrowband speech codecs the order is usually 10 and in wideband speech codecs the order is usually 16.

The speech encoder accepts 13 bit linear PCM at an 8 kHz sample rate. This can be direct from an analog-to-digital converter in a phone or computer, or converted from G.711 8-bit nonlinear A-law or μ-law PCM from the PSTN with a lookup table. In GSM, the encoded speech is passed to the channel encoder specified in GSM 05.03. In the receive direction, the inverse operations take place.

The codec operates on 160 sample frames that span 20 ms, so this is the minimum transcoder delay possible even with infinitely fast CPUs and zero network latency. The operational requirement is that the transcoder delay should be less than 30 ms. The transcoder delay is defined as the time interval between the instant a speech frame of 160 samples has been received at the encoder input and the instant the corresponding 160 reconstructed speech samples have been out-put by the speech decoder at an 8 kHz sample rate.

Implementations
The free libgsm codec can encode and decode GSM Full Rate audio. "libgsm" was developed 1992–1994 by Jutta Degener and Carsten Bormann, then at Technische Universität Berlin. Since a GSM speech frame is 32.5 bytes, this implementation also defined a 33-byte nibble-padded representation of a GSM frame (which, at a frame rate of 50/s, is the basis for the incorrect claim that the GSM bit rate is 13.2 kbit/s). This codec can also be compiled into Wine to provide GSM audio support.

There is also a Winamp plugin for raw GSM 06.10 based on the libgsm.

The GSM 06.10 is also used in VoIP software, for example in Ekiga, QuteCom, Linphone, Asterisk (PBX), Ventrilo and others.