| Communications Toolbox | ![]() |
Source code mu-law or A-law compressor or expander
out = compand(in,param,v)
out = compand(in,Mu,v,'mu/compressor')
out = compand(in,Mu,v,'mu/expander')
out = compand(in,A,v,'A/compressor')
out = compand(in,A,v,'A/expander')
out = compand(in,param,v) implements a µ-law compressor for the input vector in. Mu specifies µ and v is the input signal's maximum magnitude. out has the same dimensions and maximum magnitude as in.
out = compand(in,Mu,v,'mu/compressor') is the same as the syntax above.
out = compand(in,Mu,v,'mu/expander') implements a µ-law expander for the input vector in. Mu specifies µ and v is the input signal's maximum magnitude. out has the same dimensions and maximum magnitude as in.
out = compand(in,A,v,'A/compressor') implements an A-law compressor for the input vector in. The scalar A is the A-law parameter, and v is the input signal's maximum magnitude. out is a vector of the same length and maximum magnitude as in.
out = compand(in,A,v,'A/expander') implements an A-law expander for the input vector in. The scalar A is the A-law parameter, and v is the input signal's maximum magnitude. out is a vector of the same length and maximum magnitude as in.
Note The prevailing parameters used in practice are µ= 255 and A = 87.6. |
The examples below illustrate the fact that compressors and expanders perform inverse operations.
compressed = compand(1:5,87.6,5,'a/compressor') expanded = compand(compressed,87.6,5,'a/expander')
The output is
compressed =
3.5296 4.1629 4.5333 4.7961 5.0000
expanded =
1.0000 2.0000 3.0000 4.0000 5.0000
For a given signal x, the output of the µ-law compressor is

where V is the maximum value of the signal x, µ is the µ-law parameter of the compander, log is the natural logarithm, and sgn is the signum function (sign in MATLAB).
The output of the A-law compressor is

where A is the A-law parameter of the compander and the other elements are as in the µ-law case.
quantiz, dpcmenco, dpcmdeco, Companding a Signal
[1] Sklar, Bernard, Digital Communications: Fundamentals and Applications, Englewood Cliffs, N.J., Prentice-Hall, 1988.
| cma | convdeintrlv | ![]() |
© 1994-2005 The MathWorks, Inc.