{{Short description|Audio companding in communications}} {{no footnotes|date=February 2013}}
[[File:Comparison of A-law and μ-law compression on an input signal.svg|thumb|Comparison of A-law (blue) and μ-law (red) compression on an input signal (green). Both axes use logarithmic scale in decibels.|350x350px]] thumb|Plot of ''F''(''x'') for A-Law for ''A'' = 87.6|350x350px {{Listen | type = speech | header = Audio quality comparison | filename = Speech 12dB s16.flac | title = 16-bit linear PCM (reference/original) | filename2 = Speech 12dB alaw8.flac | title2 = 8-bit A-law PCM | filename3 = Speech 12dB u8.flac | title3 = 8-bit linear PCM }}
An '''A-law algorithm''' is a standard companding algorithm, used in European eight-bit PCM digital communications systems to optimize, i.e. modify, the dynamic range of an analog signal for digitizing. It is one of the two companding algorithms in the G.711 standard from ITU-T, the other being the similar μ-law, used in North America and Japan.
For a given input <math>x</math>, the equation for A-law encoding is as follows: <math display="block"> F(x) = \sgn(x) \begin{cases} \dfrac{A |x|}{1 + \ln(A)}, & |x| < \dfrac{1}{A}, \\[1ex] \dfrac{1+ \ln(A |x|)}{1 + \ln(A)}, & \dfrac{1}{A} \leq |x| \leq 1, \end{cases} </math>
where <math>A</math> is the compression parameter. In Europe, <math>A = 87.6</math>.
A-law expansion is given by the inverse function: <math display="block"> F^{-1}(y) = \sgn(y) \begin{cases} \dfrac{|y| (1 + \ln(A))}{A}, & |y| < \dfrac{1}{1 + \ln(A)}, \\ \dfrac{e^{-1 + |y| (1 + \ln(A))}}{A}, & \dfrac{1}{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 μ-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.
== See also == * μ-law algorithm * Dynamic range compression * Signal compression * Companding * G.711 * DS0 * Tapered floating point
== External links == * [http://www.cisco.com/en/US/tech/tk1077/technologies_tech_note09186a00801149b3.shtml Waveform Coding Techniques] - Has details of implementation (but note that the A-law equation is incorrect) * [https://github.com/deftio/companders A-law implementation in C-language with example code] {{Compression Methods}}
Category:Audio codecs Category:Data compression