Link Search Menu Expand Document

Room Correction with Roon

Roon is music playback software that is compatible with a large number of audio systems. An interesting feature of Roon is its architecture. The brains of a Roon system is the “Roon Core”, which sends audio to playback devices. The Roon Core has a DSP Engine which makes room correction possible on any playback device.

HouseCurve is an iOS application for tuning audio systems. It turns your iPhone/iPad into a capable audio analyzer using the built in microphone. It can be used for tuning tasks like creating room correction filters, subwoofer time alignment, level matching and choosing crossovers. A free trial can be found at housecurve.com.

This app note will demonstrate room correction using HouseCurve and the convolution feature of Roon’s DSP Engine.

For an introduction to room correction, please read the overview. To learn more about taking measurements with HouseCurve please see the usage documentation.

What you need

  • An audio system running Roon.
  • A MacOS or Windows computer with the Roon control software installed.
  • An iPhone or iPad with HouseCurve installed.

Roon’s mobile app doesn’t currently support loading convolution filters, thus a computer is needed to perform the load. You can let Roon know you would like this capability by voting here.

HouseCurve achieves reasonable measurement accuracy with the built in iPhone or iPad microphones. For more information see microphones.

For best results, ensure the audio system is set up correctly before applying room correction.

1. Get Connected

HouseCurve measures your audio system by listening to it play a sine sweep test signal. There are several ways to do this as described in connecting.

For this app note, we will perform measurements using externally played sweeps. This method doesn’t require a direct connection to the audio system. Instead, we transfer the test signal as a wav file to the audio system and play it manually. HouseCurve will measure by listening to the test signal as it is played.

This method will work with any audio system, but it requires more steps. If you like, you can skip this and connect HouseCurve to the audio system using Bluetooth or AirPlay. As long as the signal passes through the Roon Core, you will get the same result.

Launch HouseCurve on your iPhone/iPad. Tap Setup to display the Measure Setup screen, then tap Stimulus Type.

measure setup

Set the stimulus type to External Sine Sweep. Tap Export test signal and select a location to save the wav file. Add this file to your Roon Library using a Music Folder (etc).

stimulus type

You should now be able to play the test signal through your desired audio zone using Roon.

2. Collect Measurements

Using the Roon control software on your MacOS or Windows computer, access the DSP Engine for your audio zone. Ensure that equalization is disabled.

DSP engine equalization off

Launch HouseCurve on your iPhone/iPad. Tap Reset to clear previous measurements.

ready to measure

Tap Plot Setup to display the Plot Setup screen. Ensure that the plot mode is “average”.

plot setup

To measure with external sweeps, first tap Plot Setup on HouseCurve to start the measurement process. Then use Roon to play back the test signal. Ensure that the iPhone/iPad microphone is pointed in the direction of the speakers. Measure at a normal listening volume.

Note - HouseCurve must remain in the foreground to measure. If you need to trigger playback with the same device, start a looped playback, then switch back to HouseCurve to start the measurement. HouseCurve will only collect one measurement at a time.

HouseCurve will automatically average measurements as they are collected. To get a realistic measurement of your listening area, it is important to average measurements from several locations. For a desk (near field), try measuring from 2-3 locations. For a living room, try 3-5 locations.

averaged measurements

When you are satisfied with the average measurement, save it by tapping Save. The saved measurement will be used to generate the room correction filters.

3. Generate Filters

Tap More and select Equalize. HouseCurve will display the Equalize tool.

The Equalize tool generates biquad (IIR) filters to correct a saved measurement to a target curve. The impulse response of the filters can be exported and used as a convolution filter (FIR filter). This is what we will use for Roon.

The generation process is instantaneous, so the display automatically updates to reflect any setting change (target curve, saved measurement, filter settings, etc).

equalize screen

HouseCurve allocates filters to regions with the largest deviation from the target curve, preferring lower frequencies and ignoring areas with low coherence (SNR). You can adjust the target curve and coherence blanking threshold by tapping Plot Setup.

Tap Equalize Setup to display the Equalize Setup screen. The default settings should provide a good correction, but feel free to experiment.

equalize setup

4. Export Filters

Filters can be exported to a file by tapping Export. Ensure that the format is set to “impulse response” and the sample rate is appropriate for your audio system. When in doubt, choose 44100 Hz. Roon will automatically resample the filter as needed. You can also export the same impulse in different sample rates and Roon will pick the closest one.

filter export

Tap Export filters, select a location for the filter file and then tap save. Choose a location that the Roon control software can access. Alternatively, you can choose a location on the iPhone/iPad and then transfer the file using email, AirDrop, iMessage, etc.

5. Load Filters

Go to the DSP Engine for the measured audio zone and add a convolution by pressing Add filter. Load the filter by pressing Browse.

filter import

Ensure that Headroom management is enabled. It is normal for convolutions to result in an overall boost to the signal and this can result in clipping. You may need to change the adjustment to -6 dB or more.

headroom management

Wrapping Up

With the filters loaded, you can repeat the original measurements to confirm that your system now matches the target curve. The average should be reasonably close to the response predicted by HouseCurve. Happy listening!

If you have a question about this app note, or want to share your experience, please check out this Roon Community topic.


Copyright © 2022 Greg Wilding - Made in Canada - contact