Overview

Digital Room Correction Designer was created to ease the process of creating and loading room correction filters with Denis Sbragion's DRC, for use with two channel stereo systems. DRC Designer includes Simple Automated IR Measuring Tool by Denis Sbragion and Edward Wildgoose for creating the impulse response files needed by DRC.

I wrote Digital Room Correction Designer because it is difficult to create room correction filters via DRC without a large amount of background research. Room Correction Filters have made a very positive impact in my system, so hopefully this application will allow others to try room correction in an easier manner. The latest Linux version can be found here. The latest Microsoft Windows version can be found here.

Digital Room Correction Designer does the following:



Requirements

Creating room correction filters using DRC Designer requires the following:


Using DRC Designer

Record Sweep Tab



The Record Sweep tab allows you to record the impulse responses required to generate room correction filters. The impulse recording functionality is provided by the rec_imp program written by Denis Sbragion and Ed Wildgoose. I have included a Linux binary and the source code in the DRCDesigner/rec_imp folder. You might want to first test if it works on your system by opening a command prompt, cd to the DRCDesigner/rec_imp directory, and typing "./rec_imp". If you see some output then the binary is working. If you see an error instead, you will have to build the binary from the source code by typing "make" in the same directory.

The basic instructions for recording impulse responses are as follows:
  1. Make sure that your sound card is set to play through your speakers and your microphone and microphone preamplifier are set up properly. The standard manner is for output channel 1 to play through the left speaker, output channel 2 to play through the right channel. The input circuit should be microphone to microphone preamplifier to input channel 1. Make sure that your amplifier volume is not set too loud when first trying to record the impulse responses. Excessive volume can damage your speakers and ears.
  2. Press the Get Sound Interfaces button to get a list of the audio interfaces on your computer. If you have jackd running, audio interfaces available to the jack system will be listed. If jackd is not running, audio interfaces available to the ALSA sound system will be listed. If you are running jackd, please ensure that it is running under the same user as DRC Designer.
  3. Select a Playback Interface and a Recording Interface. The play back interface and recording interface need to be the same device if you have more than one ALSA sound card in your computer. While it may not be necessary to do so with Jack interfaces, the results probably will not be very good if you choose a different device for input (recording) and output (play back).
  4. Selecting a Playback Interface will populate the Left and Right Output channel drop down boxes. The default is channel 1 for left output, and channel 2 for right output, but you can change these if you have more than two output channels available to suit your needs.
  5. Selecting a Recording Interface will populate the Input Channel drop down box with the number of input channels that the device supports. The default input channel is number 1, but this can also be changed to suit your needs.
  6. Choose a sample rate. Selecting a playback interface will populate the Sampling Rate drop down box with sample rates that the device supports. When both a playback interface and a recording interface are selected, the Sampling Rate drop down box is limited to sampling rates that are commonly supported by both interfaces. If most of your music is compact disc based, you should record impulses at the 44100 sampling rate. If you have music files at other sample rates, you can later record additional impulse responses at higher sampling rates. Digital Room Correction Designer only supports the following sample rates: 44100, 48000, 88200, and 96000.
  7. Make sure your stereo system volume is set to a reasonable level and press the Record Sweep button. A sixty second sweep will be played through each speaker individually and recorded. The application will not appear responsive while this is taking place. When both channels are done, the left and right channel peaks of the recording will be displayed. Ideally, the peaks should be somewhere between -25 dB and -5 dB in level, and within a dB or so within each other for each channel. If the recorded peak level is good, the results will be colored green. If the peak level is a little too low or a little to high, the results will be colored orange. If the peak level is far to low or has clipped from too high a level, the results will be colored red.
  8. Once good impulse recordings have been created, you can continue to the Generate Standard Filters tab.



Target Designer Tab



The Target Designer tab allows you to draw a target frequency response that will be applied when the room correction filters are created in both the Standard Filters tab and the Customized Filters tab. The default target frequency response is flat, but here you can draw a more euphonic target to suit your tastes. Please note that any changes you make to the target curve here will effect all filters created afterwards. Please also note the following words written by Denis Sbragion, DRC's author:

DRC hasn't been designed to provide a "desired frequency response" but to provide the most accurate reproduction of what's on the recording. This means that there's only one correct target: flat. This need to be corrected taking psychoacoustics into account, but the target is still flat, even though it becomes "perceived as flat".

The Load Target radio buttons will load the target response of the standard targets shipped with DRC. The red line is the target response, and the blue circles are the frequency and amplitude reference points as they exist in the standard files.

The X axis of the graph describes frequency, and the Y axis describes amplitude. The target response graph is clickable with the mouse. Clicking anywhere on the graph will add a blue point, and the target will be redrawn. Clicking on an existing blue point will delete the point (as long as you are close enough to the center of the point), and the target will be redrawn.

Please note that you cannot add new points nor delete the two points outside of the 20 kHz frequency range; you can only change the amplitude of the existing points so that you may define roll-off as you wish. The actual frequency value of these two points will change "behind the scenes" in a fitting manner for the sample rate of the filter you are creating.

Please also note that, due to DRC target file rules, the leftmost point on your target response graph will always equate to 0 Hz "behind the scenes". So leave the left-most point near the 0 Hz mark, no matter what amplitude you set it to, otherwise you will not get the target response you desire. Clicks that land outside of the frequency and amplitude graph boundaries will be ignored.

Currently there is no manner to save and load custom targets, but your last defined target is saved between sessions and loaded when you restart the application.



Generate Standard Filters Tab



The Standard Filters tab simply allows you to generate most of the standard room correction filters that come predefined in DRC. This allows you to listen to each of the filters individually to decide how much room correction appropriate for your system. The ERB or soft filters should be of sufficient strength to offer good improvements to a decent audio system in a well set up room.

You can generate room correction filters for sample rates 44100, 48000, 88200 and 96000 as long as you have recorded impulse responses for those sample rates on the Record Sweep tab. If you choose a sample rate for which you have not recorded impulse responses, the Generate Filters button will be disabled.

Choose the sample rate for which you would like to generate room correction filters, and select the filter types you would like to generate. If you select a sampling rate for which you have not recorded impulse response files, the rest of the tab will be disabled. Pressing the Generate Selected Filters button will create the filters as well as the Convolver VST configuration files required to load the filters. The process to generate the filters may take a while, depending on the number of filter types you have selected, the sampling rate (higher sample rates take longer to generate), and the speed of your computer. While the program is generating the filters, the Generate Filters button will be disabled so that it cannot be pressed again until the process is done. The Status label will show where the program is in the filter generation process.

The filter generation process will place the Convolver VST configuration files, as well as the resulting room correction filters for each channel in the ConvolverFilters directory. The filter configuration files are text files named by the filter type and sample rate. For example, the Convolver VST configuration file for the soft filter for 44100 sample rate will be named convolverConfigSoft44100.txt, and it will found in the \DRCDesigner\ConvolverFilters folder. For more information on using Convolver VST, see Using and loading filters with Convolver VST.

Use Microphone Calibration File

If you have had your microphone calibrated and have a calibration text file, check the Use Microphone Calibration File check box and browse to and select your microphone calibration file. When DRC generates filters, it will compensate with the calibration file. Please note that selecting microphone calibration here will also have effect when generating custom filters on the custom filters tab.



Generate Custom Filters Tab



The Generate Custom Filters tab allows you to customize the important parameters of DRC so that you can create a room correction filter specifically suited to your stereo system. You should first generate the standard filters, listen to them individually, and decide which sounds best to you before moving to the Custom Filters tab. The important parameters that make up the standard filters can be loaded and then changed via the various sliders to suit your tastes. The various blue informational labels show the actual configuration parameters that will be sent to the DRC program, but I've tried to keep the application simple by labeling the slider controls with less technical names and percentages. The blue informational labels are for those who have a wish to dig deeper into DRC configuration.

The first parameters to modify are the Mid Frequency Correction Strength and Mid Frequency Pre-Echo Control sliders, as these define the correction strength in the critical mid and mid-bass range. These are really sensitive parameters, so changing them a small amount can easily cause an audible difference, especially when you are close to the boundary where correction artifacts start to appear. When you are at a comfortable place with no artifacts, you can start increasing the Low Frequency Correction Strength slider and decreasing the Low Frequency Pre-Echo Control sliders, by about a 5% at a time, until artifacts start to appear again, then back off.

When custom filters are created, the Convolver VST configuration files are placed in the DRCDesigner\Convolver\Filters folder, and given a name based on the sample rate and an increasing number starting with 1 so that you can save and try multiple custom filters.

Sampling Rate

Use the Sampling Rate drop down box to choose a sampling rate for your custom filter. Digital Room Correction Designer only supports 44100, 48000, 88200 and 96000 sample rates. If you choose a sample rate for which you have not recorded impulse responses, the rest of the tab will be disabled.

Load Template

After listening to the standard filters and deciding which is best for your system, you can load values similar to the standard filter configurations by selecting the minimal, soft, normal or strong radio buttons. Use these values as a starting point for your customized filter.

Low Frequency Correction Strength

You can increase or decrease the strength of correction in the bass region with the Low Frequency Correction Control slider. Higher percentage values increase low frequency correction.

Low Frequency Pre-Echo Control

You can increase or decrease the strength of the excess phase correction in the bass region with the Low Frequency Pre-Echo Control slider. This control is effective for reducing pre-echo artifacts in the bass region. Higher percentage values will decrease excess phase correction strength.

Mid Frequency Correction Strength

You can increase or decrease the strength of correction in the critical mid-bass and midrange regions with this slider Changing this slider a small amount can have a large effect, particularly if you are near the boundary where correction artifacts start to appear. Higher percentage values increase mid-bass and midrange frequency correction.

Mid Frequency Pre-Echo Control

You can increase or decrease the strength of the excess phase correction in the mid-bass and midrange region with this slider. Changing this slider a small amount can have a large effect, particularly if you are near the boundary where correction artifacts start to appear. This control is effective for reducing pre-echo artifacts in the mid-bass and midrange regions. Higher percentage values will decrease excess phase correction strength.

High Frequency Correction Strength

You can increase or decrease the strength of correction in the treble region with the High Frequency Correction Control slider. Higher percentage values increase high frequency correction, at the cost of greater sensitivity to listening position.

Maximum Correction Boost

You can increase or decrease the amount of gain allowable with the Maximum Correction Boost slider. Standard values are around 5 to 8 dB of gain. Over-doing with the maximum correction boost slider can make your amp and speakers work beyond their comfort zone.

Using and loading room correction filters

DRC Designer will output left and right channel mono PCM files that can be used with Brutefir. DRC Designer also outputs self describing stereo wav files that can be used with JConvolver and jackd. Both the PCM and WAV filters can be found in the DRCDesigner/ConvolverFilters folder. DRC Designer also created JConvolver configuration files that will automatically load the WAV files and places them in the DRCDesigner/JCOnvolverConfigs folder. The JConvolver config files are generic enough so that they will work on any system. Unfortunately Brutefir configuration files are not generic enough for the application to generate correctly.