Digital room correction



Digital room correction (or DRC) is a process in the field of acoustics where digital filters designed to ameliorate unfavorable effects of a room's acoustics are applied to the input of a sound reproduction system. Modern room correction systems produce substantial improvements in the time domain and frequency domain response of the sound reproduction system.

History


The use of analog filters, such as equalizers, to normalize the frequency response of a playback system has a long history; however, analog filters are very limited in their ability to correct the distortion found in many rooms. Although digital implementations of the equalizers have been available for some time, digital room correction is usually used to refer to the construction of filters which attempt to invert the impulse response of the room and playback system, at least in part. Digital correction systems are able to use acausal filters, and are able to operate with optimal time resolution, optimal frequency resolution, or any desired compromise along the Gabor limit. Digital room correction is a fairly new area of study which has only recently been made possible by the computational power of modern CPUs and DSPs.

Operation
The configuration of a digital room correction system begins with measuring the impulse response of the room at a reference listening position, and sometimes at additional locations for each of the loudspeakers. Then, computer software is used to compute a FIR filter, which reverses the effects of the room and linear distortion in the loudspeakers. In low performance conditions, a few IIR peaking filters are used instead of FIR filters, which require convolution, a relatively computation-heavy operation. Finally, the calculated filter is loaded into a computer or other room correction device which applies the filter in real time. Because most room correction filters are acausal, there is some delay. Most DRC systems allow the operator to control the added delay through configurable parameters.

Implementation
The most widely used test signal is a swept sine wave, also called chirp. This signal maximizes the measurement's signal-to-noise ratio, and the spectrum can be calculated by deconvolution, which is dividing the response's Fourier transform with the signal's Fourier transform. The spectrum is then smoothed, and a filter set is calculated, which equalizes the sound pressure levels at each frequency to the target curve. To calculate the delays and other time-domain corrections, an inverse Fourier transform is performed on the spectrum, which results in the impulse response. The impulse peak's distance from the start of the signal is its delay, and its sign is its polarity. The delay is corrected by subtracting each channel's delay from the system's peak delay, and applying this result as additional delay for the channel. This correction is sometimes provided to the user as distance from the speaker, which is calculated by multiplying the delay with the speed of sound. Inverse polarity (most likely caused by switching a speaker's + and - wires) could be fixed by multiplying each sample with -1 or swapping the speaker wire ends on one side of the cable, but this result is usually shown as a warning, as some speakers (e.g. Focal Kanta) do this intentionally.

Challenges
DRC systems are not normally used to create a perfect inversion of the room's response because a perfect correction would only be valid at the location where it was measured: a few millimeters away the arrival times from various reflections will differ and the inversion will be imperfect. The imperfectly corrected signal may end up sounding worse than the uncorrected signal because the acausal filters used in digital room correction may cause pre-echo. Room correction filter calculation systems instead favor a robust approach, and employ sophisticated processing to attempt to produce an inverse filter which will work over a usably large volume, and which avoid producing bad-sounding artifacts outside of that volume, at the expense of peak accuracy at the measurement location.

Room EQ Wizard
Room EQ Wizard, or REW for short is a free room measurement tool with SPL, phase, distortion, RT60, clarity, decay, waterfall, and spectrogram views. REW also features IR windowing, and SPL meter, room simulation for subwoofer placement, and peaking filter-based EQ generation for multiple platforms, DSPs, and AVRs with a target curve editor.

Cavern QuickEQ
QuickEQ is part of Cavern, a free and open source spatial audio engine. QuickEQ supports multichannel measurements with multiple microphones, time and level alignment with multiple standards and target curves, IR windowing, multi-sub crossover, and experimental filters for increasing speech intelligibility and simulating other cabinet types. QuickEQ exports minimum- or 0-phase FIR filters or peaking EQs depending on the target device.

RePhase
RePhase is a free EQ and crossover generation tool that also linearizes phase response. RePhase has multiple configurable filter sets available for manual filter composition, which then can be exported as a single FIR impulse.

Commercial software
Most new AVRs include room correction in their setup, and a microphone in the box. Dirac Live is a commercial software that is available for PC and select Onkyo, Pioneer, Integra, StormAudio, and other AVRs. Denon and Marantz AVRs use Audyssey, and more expensive models allow for more corrections, and since the 2023 model year, Dirac Live as an alternative. Anthem AVRs use a proprietary software called Anthem Room Correction, or ARC for short, Yamaha uses Yamaha Parametric room Acoustic Optimizer (YPAO), as well as Trinnov Audio with their optimizer solution.

Industrial software
DCI-compliant hardware that are used in commercial theaters, sometimes use commercially available room correction software. Notable examples are IMAX cinemas, which use Audyssey MultEQ XT32, while Datasat processors (found in all DTS:X rooms) have Dirac software. Dolby's CP850 and CP950 processors (which support Dolby Atmos) use a proprietary solution called AutoEQ. AutoEQ measures 5 to 8 microphone positions simultaneously. It requires loudspeaker specifications manually entered for the room. Earlier Dolby processors, such as the CP750, used a 31-band equailzer for the 5 or 7 main channels, and a single peaking filter for correcting the subwoofers' largest peak. The CP750 didn't have a swept sine wave generator, and used pink noise for measurement.

Open Source Implementations

 * Cavern QuickEQ and its source code
 * Python Open Room Correction (PORC)
 * DRC: Digital Room Correction

Free Room Correction Software

 * Room EQ Wizard
 * rePhase
 * Free Room EQ plug-in for Foobar2000 audio player

Commercial Room Correction Software

 * Acourate
 * Audiolense
 * Dirac Live
 * Focus Fidelity
 * HouseCurve
 * IK Multimedia ARC System
 * SoundID Reference from Sonarworks
 * Trinnov Optimizer

Papers

 * On Room Correction and Equalization of Sound Systems, by Dr. Mathias Johansson, Dirac Research AB
 * Digital Room Equalization, by Michael Gerzon
 * Audio Equalization with Fixed-Pole Parallel Filters: An Efficient Alternative to Complex Smoothing, by Balazs Bank

Articles

 * Room Correction: A Primer, by Nyal Mellor of Acoustic Frontiers
 * Sound Correction in the Frequency and Time Domain, by Bernt Ronningsbak of Audiolense
 * The Three Acoustical Issues a Room Correction Product Can't Actually Correct, by Nyal Mellor of Acoustic Frontiers