A-law algorithm
From Free net encyclopedia
An a-law algorithm is a standard companding algorithm, used in European digital communications systems to optimize, i.e., modify, the dynamic range of an analog signal for digitizing.
It is similar to the mu-law algorithm used in North America and Japan.
For a given input x, the equation for A-law encoding is as follows,
- <math>
F(x) = \sgn(x) \begin{cases} {A |x| \over 1 + \ln(A)}, & 0 \leq |x| < {1 \over A} \\ \frac{1+ \ln(A |x|)}{1 + \ln(A)}, & {1 \over A} \leq |x| \leq 1 \end{cases} </math>,
where A is the compression parameter. In Europe, <math>A = 87.7</math>; the value 87.6 is also used.
A-law expansion is given by the inverse function,
- <math>
F^{-1}(y) = \sgn(y) \begin{cases} {|y| (1 + \ln(A)) \over A}, & 0 \leq |y| < {1 \over 1 + \ln(A)} \\ {\exp(|y| (1 + \ln(A)) - 1) \over A}, & {1 \over 1 + \ln(A)} \leq |y| < 1 \end{cases} </math>
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 A-law algorithm provides a slightly larger dynamic range than the mu-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.
Mu-law has a special feature that sound-pressures near zero are encoded as zero. This reduces noise during the silent periods of long-distance calls, and increases perceived quality. It also reduces storage requirements when mu-law samples are digitally compressed.
See also
External links
- Waveform Coding Techniques - Has details of implementation (but note that the A-law equation is incorrect)
- A-Law and mu-Law Companding Implementations Using the TMS320C54x (PDF)de:A-law-Verfahren