'G.711' is an
ITU-T standard for audio
companding. It is primarily used in
telephony. The standard was released for usage in
1972.
G.711 represents logarithmic
pulse-code modulation (PCM) samples for signals of voice frequencies, sampled at the rate of 8000 samples/second.
Types
There are two main algorithms defined in the standard, the
µ-law algorithm (used in North America & Japan) and
A-law algorithm (used in Europe and the rest of the world). Both are
logarithmic, but A-law was specifically designed to be simpler for a computer to process. The standard also defines a sequence of repeating code values which defines the power level of 0
dB.
The µ-law and A-law algorithms encode 14-bit and 13-bit signed linear PCM samples (respectively) to logarithmic 8-bit samples. Thus, the G.711
encoder will create a 64 kbit/s bitstream for a signal sampled at 8 kHz.
G.711 A-Law
A-law encoding thus takes a 13-bit signed linear audio sample as input and converts it to an 8 bit value as follows:
| 'Linear input code' | 'Compressed code' |
| s0000000wxyza... | s000wxyz |
| s0000001wxyza... | s001wxyz |
| s000001wxyzab... | s010wxyz |
| s00001wxyzabc... | s011wxyz |
| s0001wxyzabcd... | s100wxyz |
| s001wxyzabcde... | s101wxyz |
| s01wxyzabcdef... | s110wxyz |
| s1wxyzabcdefg... | s111wxyz |
Where ''s'' is the sign bit. So for example, 1000000010101111 maps to 10001010 (according to the first row of the table), and 0000000110101111 maps to 00011010 (according to the second).
This can be seen as a
floating point number with 4 bits of
mantissa and 3 bits of
exponent.
In addition, the standard specifies that all resulting even bits are inverted before the octet is transmitted. This is to provide plenty of 0/1 transitions to facilitate the
clock recovery process in the PCM receivers. Thus, a silent A-law encoded PCM channel has the 8 bit samples coded 0x55 instead of 0x00 in the octets (or 0xD5 if the sign bit happens to be set), and a silent μ-law encoded PCM has 0xFF in the 8 bit samples.
Note that the ITU define bit 0 to have the value 128 and bit 7 to have the value 1. (This is different from the more widely accepted convention where bit 7 = 128 and bit 0 = 1.)
Note that when data is sent over E0 (
G.703), MSB (signbit) is sent first and LSB is sent last.
Features
★ Sampling frequency 8 kHz
★ 64 kbit/s bitrate (8 kHz sampling frequency x 8 bits per sample)
★ Typical algorithmic delay is 0.125 ms, with no look-ahead delay
★ G.711 is a waveform speech coder
★ G.711 Appendix I defines a
Packet Loss Concealment (PLC) algorithm to help hide transmission losses in a packetized network
★ G.711 Appendix II defines a
Discontinuous Transmission (DTX) algorithm which uses
Voice Activity Detection (VAD) and
Comfort Noise Generation (CNG) to reduce bandwidth usage during silence periods
★
PSQM testing under ideal conditions yields
Mean Opinion Scores of 4.45 for G.711 u-law, 4.45 for G.711 a-law
★
PSQM testing under network stress yields
Mean Opinion Scores of 4.13 for G.711 u-law, 4.11 for G.711 a-law
References
★
ITU-T Recommendation G.711 - (STD.ITU-T RECMN G.711-ENGL 1989)
See also
★
G.722
★
G.722.1
★
G.722.2
★
G.723
★
G.723.1
★
G.726
★
G.728
★
G.729
★
G.729a
★
List of codecs
External links
★
ITU-T G.711 page
★
General info about G.7xx
★
Code Project C# implementation of G.711 with source code
★
Tables of PSQM/PSQM+ derived
MOS values for different