||This article includes a list of references, related reading or external links, but its sources remain unclear because it lacks inline citations. (February 2013)|
For a given input x, the equation for A-law encoding is as follows,
where A is the compression parameter. In Europe, ; the value 87.6 is also used.
A-law expansion is given by the inverse function,
The reason for this encoding is that the wide dynamic range of speech does not lend itself well to efficient linear digital encoding. A-law encoding effectively reduces the dynamic range of the signal, thereby increasing the coding efficiency and resulting in a signal-to-distortion ratio that is superior to that obtained by linear encoding for a given number of bits.
Comparison to μ-law
The μ-law algorithm provides a slightly larger dynamic range than the A-law at the cost of worse proportional distortion for small signals. By convention, A-law is used for an international connection if at least one country uses it.
- Waveform Coding Techniques - Has details of implementation (but note that the A-law equation is incorrect)
- A-Law and μ-law Companding Implementations Using the TMS320C54x (PDF)
- A-law implementation in C-language with example code