Download the JAVA-Application (version 0.5 - 06/02/2010) FrequencyResponseCorrection.zip (24kByte) which works for Windows, Mac and Linux.
If you don't have the JRE (JAVA Runtime Environment) installed then you'll get it here: http://www.java.com/download/manual.jsp
Why Frequency Response Correction?
The audio frequency reproduction in a normal listening room is not linear in its amplitude because of the room response which is defined by its resonances and reflections. It is possible to achieve a linear frequency response by equalizing the source signal.
How does Frequency Correction work?
The program provides different filter functions to equalize the source signal in a way that it is linear in its frequency response after passing the room and its characteristics.
How to measure the Room Response?
There are a couple of solutions in the market to measure the room response. The output is always the amplitude distribution over the frequency range of 0Hz to 20kHz.
By using the "Frequency Response Correction" application to reduce exaggerated and increase damped amplitudes in the measured room response it is possible to achieve a more linear overall frequency response.
The User Interface
It is possible to save and load different filter configurations (*.cfg)
Frequency used to sample the source signal.
Starts and stops the filter process.
After changing a filter parameter it is necessary to update the filter - which works also during runtime - and the graphical representation of the frequency response by clicking that button.
Input & Output:
The program needs to know which input and output mixers/sound card ports it should use to read and write the audio signal for processing.
Filter Selection and Parameter Definition:
The program provides 8 freely configurable filters per channel (left & right) with the following configuration parameter:
a.) Filter Type
c.) Center/cut-off Frequency
d.) Gain in dB (Dezibel)
There are 8 filter types selectable per filter:
1.) All Pass: The amplitude stays as it is but the phase changes by 2PI = 360° over the whole frequency range. An All Pass with a center frequency of 0Hz does not touch the signal at all.
2.) EQ: The EQ uses the Q-Factor to define its bandwith and the center frequency to amplify or attenuate the signal over a clearly defined frequency range
3.) Low Shelf: The filter decreases or increases all amplitudes of frequencies below the given frequency by the defined gain factor
4.) High Shelf: The filter works similar to the Low Shelf but for the higher end of the frequency range
5.) Low Pass: The filter reduces the amplitudes of all frequencies higher than the given filter frequency
6.) High Pass: The filter works similar to the Low Pass but for the lower end of the frequency range
7.) Band Pass: All frequencies in a frequency range given by the Q-Factor and the center frequency pass the filter whereas frequencies beyond that range get attenuated
8.) Notch: The notch filter works inverted to the band pass by reducing all frequencies around the center frequency in a range defined by the Q-Factor
Any error in the input data causes a red marked Update-Button.
Please make sure that you switch the filters ON and OFF by using their check boxes.
That is the graphical representation of the filter responses in amplitude and phase for the left and right channel coded in different colors.
To achieve an overall linear frequency response that graphic needs to represent an inverted picture of the measured room response.
Disclaimer and License:
This Software is provided "as-is", without any express or implied warranty.
In no event will the author be held liable for any damages arising from the use of this software.
Permission is granted to anyone to use this software except for commercial use.
Please contact me (Stephan Hotto) if there is a wish for a commercial implementation.