http://simulations.narod.ru/
There are player with digital equalizer matlab. Each slider is second order linear filter, infinite impulse response (IIR) filter. Direct-form I used to combine all filters to one filter object. Signal processing toolbox and Data Acquisition Toolbox are used.
Sometimes playing stop if GUI activity is hight: when move slider too long by pressed up or down button.
All audio file is read to variable s before start play. It can read pcm wav files with wavread function. To read other types (mp3 wma ect) it is need to downlad mmread codes:
http://www.mathworks.com/matlabcentral/fileexchange/8028-mmread
and unzip all files to folder where the equalizer codes.
It is possible to change number of sliders, see n-variable in equalize.m Also need to change f Q filts_type
Formulas for a and b coeficients for peak, low-shelving, high-shelving filters was get here:
http://www.apogeemems.com/ddx/PDFs/AN-06.pdf
See how it works here:
http://www.youtube.com/watch?v=fUYmFjdrCQA
Run equalizer.m |