G.711
From Wikipedia, the free encyclopedia
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.
Contents |
[edit] 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 8kHz.
[edit] 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.
[edit] 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
[edit] References
- ITU-T Recommendation G.711 - (STD.ITU-T RECMN G.711-ENGL 1989)
[edit] See also
[edit] External links
- ITU-T G.711 page
- General info about G.7xx
- Various links on G.711 and other G.7xx audio speech codecs
- Code Project C# implementation of G.711 with source code
- Tables of PSQM/PSQM+ derived MOS values for different speech codecs
Video compression formats |
|
|||
---|---|---|---|---|
Audio compression formats |
|
|||
Image compression formats |
|
|||
Media container formats |
|