Simulation of Room Reverberation Using a Feedback Delay Network

Total Page:16

File Type:pdf, Size:1020Kb

Simulation of Room Reverberation Using a Feedback Delay Network

Simulation of Room Reverberation Using a Feedback Delay Network R. Bullen

Article as published in Acoustics Australia (2015) 43:83-86 The final publication is available at http://link.springer.com/article/10.1007/s40857-015-0005-8

Abstract:

Audible simulation of reverberation in a room is generally undertaken by convolution of a “dry” input signal with a calculated or measured impulse response. However, determination of the impulse response is time-consuming, generally requiring off-line calculation before the result can be heard. This Note describes the use of a feedback delay network to simulate the most significant properties of the reverberation, including frequency-dependent reverberation time, while allowing for fast re-calculation, giving the impression of immediate response to user-controlled changes in room characteristics. This technique is used in the recently-released “SoundSoup” App for iPad.

1 Introduction

Traditionally, to provide an audible simulation of sound in a room, a “dry” recorded signal is convolved with an impulse response function to give the resulting signal at some point in the room. In the case of a room that is not yet constructed, the impulse response is typically calculated using a combination of “ray tracing” and “image source” techniques. While potentially providing very accurate simulations, these techniques require detailed knowledge of the room geometry, and the locations of absorbing and scattering elements.

Convolution methods are also very computationally expensive to implement, leading to a number of “hybrid” methods in which a convolution signal is combined with exponentially decaying noise (e.g. Lehman and Johansson, 2009). These allow for real-time playback with a large reverberation time, but calculation of the impulse response remains time-consuming.

The recently-released “SoundSoup” iPad App (Stirfry Software, 2014) uses a feedback delay network to simulate reverberation. This alternative approach is designed to provide realistic simulated reverberation based on a minimal number of parameters describing room size, room shape and absorption. In addition, the reverberation characteristics can change in real time in response to user changes in room parameters, even when implemented on a mobile system with limited computing capability. This Note describes the implementation of the reverberation system in SoundSoup.

2 Feedback Delay Networks

The theoretical basis of feedback delay networks is described by Jot and Chaigne (1991). Briefly, a network consists of a collection of delay lines, of different lengths. The output of each line is fed to the inputs of all lines, according to a “feedback matrix” whose elements represent the proportion of signal fed from output to input . Filtering is applied to the delay line outputs to control the rate of decay of the final signal.

Usually, the feedback matrix is designed to be unitary (, the unit matrix), which ensures that in the absence of filters the impulse response of the system is stable and non-decaying. Then, the simulated pattern of reflections is decoupled from the decay rate - the feedback matrix and the lengths of the delays determine the pattern of reflections, while the filters alone determine the decay rate at any frequency. 3 Implementation in SoundSoup

3.1 Delay Lines

Smith (2010) describes several forms of unitary feedback matrix appropriate for simulation of reverberation. SoundSoup uses the “Householder Matrix”, in which

where if or 0 otherwise. Figure 1 shows an efficient implementation of a feedback delay network based on this matrix. It contains a set of recirculating delay lines, which can represent room modes or, equivalently, specific path lengths for reflections. The Householder Matrix ensures that these modes are maximally coupled (subject to the matrix being unitary), with equal transmission of energy from each mode to every other mode. This can be thought of as representing a diffuse (or ergodic) space.

In any room geometry, the mean length of random lines passing through the room is the (spatial) mean free path , given by

where is the room volume and the total surface area. The mean of the delay line lengths (in samples) can be chosen so that the mean delay time is equal to the time to traverse a distance :

where is the sample rate and is the speed of sound. The lengths should be sufficiently varied to represent the range of path lengths within the room. Also, to maximise the number of possible path length combinations, the numbers should be mutually prime. Given a value for , SoundSoup chooses a set of prime numbers with a pre-set minimum spacing, whose mean is as close as possible to the required value.

3.2 Filters

Filters on each delay line are designed to approximate the frequency-dependent Sabine reverberation time (where is the total absorption due to surfaces in the room, in metric Sabines). For delay line , the required filter gain is

With typical material absorption characteristics, and with multiple types of absorbing materials in a room, reverberation time vs frequency curves are generally simple in form and can be approximated by a low-order digital filter. In each delay line, SoundSoup uses a 1-pole 1-zero filter, with both the zero and the pole on the real axis, to simulate absorption by room materials. This form of filter provides a maximum and minimum gain and a transition frequency, and these parameters can be efficiently adjusted to fit calculated values of , using a simple search algorithm. Filter coefficients can then be directly calculated from the three parameters.

A further filter is added to account for air absorption along the length of each delay line. This is approximated by a 1-zero filter normalised to achieve the correct gain at 8 kHz. (Correct gain is calculated according to ISO 9693 Part1 – International Organization for Standardization, 1996, for 20°C and 70% humidity.)

Note that each delay line is given an equal effective absorption value per metre, which results in a maximally smooth decay. If further details of the distribution of absorption within the room were known, it would be possible to introduce correlations between delay length and absorption, simulating modal resonances at low frequencies or flutter echoes at high frequencies. 3.3 Number of Delay Lines

The number of delay lines used is critical in determining the density of delays in time, and hence the subjective quality of the reproduction. It is also the major factor controlling the computational cost of the algorithm and, indeed, the entire simulation program. SoundSoup, which is designed to run in real time on an Apple iPad, uses 10 delay lines, and when running uses about 50% of the available CPU capacity of the machine. The subjective quality is judged by listeners to be more than acceptable for comparing the impact of alternative room designs and sound absorbing elements, which is the major purpose of the program.

Re-calculation of both delay line lengths and filter coefficients for all lines can be performed in about 200 ms, giving the impression of real-time response to changes in these parameters.

4 Verification

The reverberation calculations were verified in the following way. A model room (4 m x 6 m x 2.8 m) was produced, and all surfaces (walls, floor and ceiling) were covered with one specific material. Using absorption data for that material, the 1/3-octave band Sabine reverberation times can easily be calculated. Next, delay line filters are estimated, and from the filter characteristics, the theoretical resulting reverberation times can be calculated. Comparison with the reverberation times calculated from material data indicates the acceptability of the filter response approximation. Next, 1/3-octave band filtered pink noise is played in the room and turned off, and the resulting decay analysed to calculate the reverberation time of the auralised signal. This indicates the accuracy of the feedback delay network in reproducing a system with a linear decay.

Results for three typical materials are shown in Figure 2. It is notable that:  in general, the actual reproduced reverberation times are in good agreement with those expected from the material characteristics;  the smoothed filter responses have the effect of removing some detailed features of the reverberation time spectrum, although these would not be perceivable for typical input sounds;  at low frequencies there is some fluctuation in the frequency response of the delay lines. This is due to the behaviour of the longer delay paths, and in fact mimics the presence of room modes, although the exact frequencies at which the enhancement occurs are not related to the actual frequencies of modes in the modelled room.

5 Conclusion

The major advantage of a feedback delay network for simulating reverberation is that it allows the simulation to respond in real time, in a realistic way, to changes in room parameters, including room size and absorption treatments. This provides a much more compelling experience for a listener than simulations that rely on off-line processing, even though the latter may give better reproduction of details of the decay characteristics.

SoundSoup models both reverberation and transmission loss (not discussed in this Note). It is to the author’s knowledge the only program available for any platform that allows non-specialist users (such as designers or architects) to hear, in real time, the effect of changes to the acoustic properties of a room. 6 References:

International Organization for Standardization (1996) Acoustics – Attenuation of Sound During Propagation Outdoors, Part1 – Calculation of the absorption of sound by the atmosphere.

J-M Jot and A Chaigne (1991) Digital delay networks for designing artificial reverberators. Preprint from Audio Engineering Society Convention, 1991.

E.A. Lehman and A.M. Johansson (2009) Diffuse reverberation model for efficient image-source simulation of room impulse responses. IEEE Transactions on Audio, Speech and Language Processing 18 (6), 1429-1439.

Stirfry Software (2014) SoundSoup App available from Apple App Store. www.stirfrysoftware.com.au

J.O. Smith (2010) Physical Audio Signal Processing. W3k Publishing. (Available at https://ccrma.stanford.edu/~jos/pasp/pasp.html)

Fig 1 Implementation Structure for a “Householder Matrix” Feedback Delay Network

Fig 2 Examples of simulated reverberation times, for a room where all surfaces consist of the stated materials

(a) (b)

(c)

Recommended publications