FIR filter design tool for Loudspeaker magnitude equalization - diyAudio
Go Back   Home > Forums > Design & Build > Software Tools
Home Forums Rules Articles diyAudio Store Gallery Wiki Blogs Register Donations FAQ Calendar Search Today's Posts Mark Forums Read

Software Tools SPICE, PCB CAD, speaker design and measurement software, calculators

Please consider donating to help us continue to serve you.

Ads on/off / Custom Title / More PMs / More album space / Advanced printing & mass image saving
Thread Tools Search this Thread
Old 18th May 2013, 04:44 PM   #1
ttmusic is offline ttmusic  France
diyAudio Member
Join Date: Jul 2005
Location: Lyon
Default FIR filter design tool for Loudspeaker magnitude equalization

Some time ago I discovered a very useful tool called "Engauge Digitizer" (Engauge Digitizer - Digitizing software)
It allows converting image file showing graphs into text file with associated numbers.
As it is quite easy to find commercial loudspeaker frequency response (scan from audio magazines, image from internet site like stereophile, own measurement), I got the idea to develop a simple tool to design a magnitude correction filter.
The different steps of the equalization process are:
- find a image file of your loudspeaker frequency response (dB vs frequency) (scan from paper or picture directly from the net)
- digitize it to get a text file with Engauge tool
- design correction FIR filter with the proposed tool
- apply the filter using a convolver (hardware DSP or with a media player like foobar/JRiver)

The program is written for Scilab which is a free scientific tool equivalent to Matlab (Home - Scilab)
You can dowload the filter design program at following link ( as well as an example of input text file made with Engauge (System Audio SA1230 model measured some years ago by the french magazine "Revue du son") (
The first part of the ".sce" file must be edited to configure to your own case.
It should be easy as there are comments in the file to make it comprehensive.
Some additional hints:
- input text file must be in the same directory as the .sce file unless you give the complete path in the input file name
- filter is saved in the same directory with .wav format
- Engauge is easy to use and has some tutorials available (one trick is to not forget to select "logarithmic scale" for frequency axis)
- Instead of designing a correction filter it is possible to generate a FIR filter that simulates the frequency response of the loudspeaker (for instance to simulate a loudspeaker when listenting with headphones)
- Equalization must not cover low & high frequencies (natural roll off of loudspeaker) this is why there are 2 parameters to define limits
- The target curve can be tailored by a constant slope & the option to add a psychoacoustic effect (dip at 3kHz)
- The FIR filter length & sampling frequency can be modified

Maybe it could be a good idea to create a database to share such frequency responses from commercial loudspeakers.
Any comment and idea for improvement are welcomed.
  Reply With Quote
Old 22nd May 2013, 03:35 AM   #2
diyAudio Moderator
jazbo8's Avatar
Join Date: Jan 2011
Location: In Transient
Is there a version for Matlab that we can try? Also, how do you handle the room response, which is very different from the speakers' measured response?
  Reply With Quote
Old 24th May 2013, 06:24 PM   #3
ttmusic is offline ttmusic  France
diyAudio Member
Join Date: Jul 2005
Location: Lyon
I have made a translation to Matlab
The intention of this simple tool is to correct only the loudspeaker and not the couple loudspeaker + room.
Of course you can use as input a curve of combined loudspeaker/room measurement but this can lead to large filter gains to compensate for strong dips in frequency response which is useless (using smoothed response curve can limit this risk as well as implementing a gain limit in the filter)
  Reply With Quote
Old 24th May 2013, 08:30 PM   #4
diyAudio Moderator
jazbo8's Avatar
Join Date: Jan 2011
Location: In Transient
Thank you for making the translated version available, and the feedback on the room response, it seems like something worth trying. Al least an alternative to BruteFIR which I'm having some trouble with running...
  Reply With Quote


Hide this!Advertise here!
Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are Off
Refbacks are Off

Similar Threads
Thread Thread Starter Forum Replies Last Post
rePhase, a loudspeaker phase linearization, EQ and FIR filtering tool pos Multi-Way 2085 Today 10:44 AM
FIR Digital Filter PatPet Digital Source 39 8th March 2006 07:40 PM
New filter design tool from Analog jackinnj Solid State 2 16th May 2003 02:49 AM

New To Site? Need Help?

All times are GMT. The time now is 05:08 PM.

vBulletin Optimisation provided by vB Optimise (Pro) - vBulletin Mods & Addons Copyright © 2017 DragonByte Technologies Ltd.
Copyright 1999-2017 diyAudio

Content Relevant URLs by vBSEO 3.3.2