Jump to content

Full Rate: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
Implementations: added references
 
(47 intermediate revisions by 37 users not shown)
Line 1: Line 1:
{{short description|Speech coding standard}}
'''Full Rate''' or '''FR''' or '''GSM-FR''' or '''GSM 06.10''' was the first digital [[speech coding]] standard used in [[GSM]] digital mobile phone system. The average bit rate of the codec is 13 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. 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.
{{Listen
| type = music
| header = Audio quality comparison
| filename = GSM Full Rate audio demo.flac
| title = Full Rate
| filename2 = Larynx-HiFi-GAN speech sample.wav
| title2 = Original file
}}

'''Full Rate''' ('''FR'''), also known as '''GSM-FR''' or '''GSM 06.10 ''' (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 ==
== 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 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.
''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 [[Pulse-code modulation|PCM]] at an 8 kHz sample rate.
The speech encoder takes its input as a 13 bit uniform [[PCM]] signal either from the audio part of the mobile station or on the network side, from the [[PSTN]] via an 8 bit [[A-law]] or [[μ-law]] (PCS 1900) to 13 bit uniform PCM conversion. The encoded speech at the output of the speech encoder is delivered to a channel encoder unit which is specified in GSM 05.03. In the receive direction, the inverse operations take place.
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 sampling rate is 8000 sample/s. The theoretical minimum transcoder delay which can be achieved is 20 ms. The 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.<ref>[http://webapp.etsi.org/workprogram/Report_WorkItem.asp?WKI_ID=11074 ETSI EN 300 961 V8.1.1 (2000-11) - (GSM 06.10 version 8.1.1 Release 1999)], Retrieved on 2009-07-08</ref>
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&nbsp;kHz sample rate.<ref>[http://webapp.etsi.org/workprogram/Report_WorkItem.asp?WKI_ID=11074 ETSI EN 300 961 V8.1.1 (2000-11) - (GSM 06.10 version 8.1.1 Release 1999)], Retrieved on 2009-07-08</ref>


== Implementations ==
== Implementations ==
The free ''libgsm'' codec can encode and decode GSM Full Rate audio.<ref>[http://kbs.cs.tu-berlin.de/~jutta/toast.html The GSM 06.10 lossy speech compression library and its applications], Retrieved 2009-08-31</ref><ref>Ubuntu.com [http://packages.ubuntu.com/karmic/libgsm1 Shared libraries for GSM speech compressor], Retrieved 2009-08-31</ref>
The free ''libgsm'' codec can encode and decode GSM Full Rate audio.<ref>[http://www.quut.com/gsm/ The GSM 06.10 lossy speech compression library and its applications], Retrieved 2009-08-31</ref><ref>Ubuntu.com [http://packages.ubuntu.com/libgsm1 Shared libraries for GSM speech compressor], Retrieved 2009-08-31</ref> "libgsm" was developed 1992–1994 by [[Jutta Degener]] and Carsten Bormann, then at [[Technische Universität Berlin]].<ref>[http://www.quut.com/gsm/gsm-1.0.13.tar.gz libgsm - README - GSM 06.10 13&nbsp;kbit/s RPE/LTP speech compression], Retrieved 2009-09-20</ref> 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&nbsp;kbit/s). This codec can also be compiled into [[Wine (software)|Wine]] to provide GSM audio support.


There is also a [[Winamp]] plugin for raw GSM 06.10 based on the libgsm.<ref>Cedric Hans [http://www.mlkj.net/gsm/ Plug-in Winamp for raw GSM 06.10], Retrieved 2009-10-09</ref><ref>Cedric Hans (2004-06-08) [http://www.winamp.com/plugins/details/142107 Winamp Plug-in - Raw GSM Winamp Plugin] {{webarchive|url=https://web.archive.org/web/20090908233955/http://www.winamp.com/plugins/details/142107 |date=2009-09-08 }}, Winamp, Retrieved 2009-10-09</ref>
The GSM 06.10 is also used in [[VoIP]] software, for example in [[Ekiga]], [[QuteCom]], [[Linphone]], [[Asterisk (PBX)]] and others.

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


== See also ==
== See also ==
* [[Half Rate]]
* [[Half Rate]]
* [[Enhanced Full Rate]]
* [[Enhanced Full Rate]] (EFR)
* [[Adaptive Multi-Rate]]
* [[Adaptive Multi-Rate]] (AMR)
* [[Adaptive Multi-Rate Wideband]] (AMR-WB)
* [[Comparison of audio codecs]]
* [[Extended Adaptive Multi-Rate - Wideband]] (AMR-WB+)
* [[Comparison of audio coding formats]]
* [[RTP audio video profile]]
* [[RTP audio video profile]]


Line 25: Line 41:
==External links==
==External links==
* [http://tools.ietf.org/html/rfc3551#page-24 RFC 3551] - RTP payload format for GSM (GSM 06.10)
* [http://tools.ietf.org/html/rfc3551#page-24 RFC 3551] - RTP payload format for GSM (GSM 06.10)
* [http://webapp.etsi.org/workprogram/Report_WorkItem.asp?WKI_ID=11074 ETS 300 961 (GSM 06.10)]
* [http://webapp.etsi.org/workprogram/Report_WorkItem.asp?WKI_ID=11074 ETS 300 961 (GSM 06.10)] - European Standard
* [http://webapp.etsi.org/WorkProgram/Report_WorkItem.asp?WKI_ID=11070 ETS 300 580-2 (GSM 06.10)] - legacy specifications
* [http://webapp.etsi.org/WorkProgram/Report_WorkItem.asp?WKI_ID=11070 ETS 300 580-2 (GSM 06.10)] - legacy specifications
* [http://www.3gpp.org/ftp/Specs/html-info/0610.htm 3GPP TS06.10] - Technical Specification
* [http://www.quut.com/gsm/ Libgsm] homepage

{{Compression formats}}


[[Category:Audio codecs]]
[[Category:Audio codecs]]
[[Category:Speech codecs]]
[[Category:Speech codecs]]

[[ru:GSM-FR]]
[[uk:FR]]

Latest revision as of 23:43, 1 November 2024

Full Rate (FR), also known as GSM-FR or GSM 06.10 (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

[edit]

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.[1]

Implementations

[edit]

The free libgsm codec can encode and decode GSM Full Rate audio.[2][3] "libgsm" was developed 1992–1994 by Jutta Degener and Carsten Bormann, then at Technische Universität Berlin.[4] 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.[5][6]

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

See also

[edit]

References

[edit]
[edit]