Julia Weinstock: Convolution Reverb Signal Processing

Introduction

Unlike plate, spring, or digital reverbs, convolution reverb can use the impulse responses of existing physical spaces to emulate how a signal would sound played in that space. This allows one to achieve the sound of a signal in the space without needing physical access to record there, as well as the ability to adjust the response of a space to best fit the signal. The goal of this project was to create a program in MATLAB to demonstrate the. Ideally, the program should be able to take in a recorded sample of an acoustic space excited by an impulse, the impulse response, process it, and create a reverb effect that can be applied to the desired signal.

Theoretical Background

The basis of convolution reverb, as the name would suggest, is dependent on the mathematical convolution of two signals:

x[n] – the input signal
h[n] – the impulse response of the system

When the input signal is convolved with the impulse response, the result is the response or output of the linear time invariant system to the input signal.

In this application, the linear time invariant system is a room, or space. So, given the input signal and impulse response, one can simulate the output of the room using convolution.

The convolution of two signals is defined mathematically as:

Convolution [1]

Graphical representation of convolution [1]

Impulse Responses

To obtain the impulse response of an LTI system, one can set the input as the unit impulse, or δ(t), and the resulting output will be the impulse response of the system. For convolution reverb and spatial acoustics, the unit impulse is usually a short burst of a sound, such as a starter pistol in [6], or a sine sweep, like in [2].

Below are the three impulse responses used in my program. All of these recordings were submitted to www.openairlib.net.

First Baptist Church Balcony, Nashville

Recorded by Adam Townsell using a logarithmic sine sweep [2].

Impulse Response
Parameters from the impulse response[2]

R1 Nuclear Reactor Hall, Stockholm, Sweden

Impulse response of an unused nuclear reactor hall 25 metres underneath the KTH Royal Institute of Technology, recorded by Dr. Damian T. Murphy [5].

Impulse Response
Acoustic parameters of the hall [5].

Elveden Hall, Suffolk England

Recorded by Matt Rogalsky, this impulse response was taken by exciting the room with a pistol [6].

Elveden Smoking Room Impulse Response [6]
Acoustic Parameters of Elveden Hall [5].

Anechoic Recordings

When choosing the signals to be convolved with the impulse responses, it was important that there were minimal artifacts from the room the signal was recorded in. So, I chose recordings from OpenAir which were recorded in an anechoic chamber [7]. This will improve the fidelity of the processed signal, and avoid convolving the responses from both rooms.

Below are each of the anechoic signals I used, along with graphs of time vs. amplitude (left) and the power spectral density estimate in kHz vs dB/kHz (right).

Cornet
Cornet
Female Speech
Speech
Viola
Viola

Simulink Model and Demo Video

To process the samples, I used MATLAB and Simulink Modeling. The code itself is explained in the video below.

A quick look at the MATLAB and Simulink code

Unfortunately, the computer used to record this demo does not have enough CPU to screen capture and run the Simulink model at the same time, but the results of running the model with the chosen impulse responses and anechoic signals are available for you to listen to in the following section.

Results

First Baptist Church

Cornet
Speech
Viola

R1 Nuclear Reactor

Cornet
Speech
Viola

Elveden Smoking Room

Cornet
Speech
Viola

Conclusion

The processing of sound files using the Simulink model is ultimately successful: the signals returned have applied reverb. However, the quality of this reverb is still well below what the signal would sound like if it were recorded in these spaces. Furthermore, the usability of this model beyond

The original plan for this project was to utilize MATLAB’s Audio Toolbox to create a VST plugin usable in a DAW. While that may be another project entirely, I hope to apply some of my work here to that.

I would also like to take my own impulse responses and measurements and analyze that data, as well as process stereo input signals and impulse responses.

References

[1] E. W. Weisstein, “Convolution,” MathWorld–A Wolfram Web Resource. [Online]. Available: https://mathworld.wolfram.com/Convolution.html. [Accessed: 16-Dec-2020].

[2] A. Townsell, “1st Baptist Church Nashville,” OpenAIR. [Online]. Available: https://www.openair.hosted.york.ac.uk/?page_id=406. [Accessed: 16-Dec-2020].

[3] M. Valentine, “First Baptist Church, Nashville, TN and the Magnificent 59-Rank Schantz Pipe Organ,” YouTube, 12-Jun-2009. [Online]. Available: https://www.youtube.com/watch?v=lgo0L-vWMMg. [Accessed: 16-Dec-2020].

[4] S. Hyatt, “First Baptist Balcony,” The Churches of the World. [Online]. Available: https://photos.thechurchesoftheworld.com/Nashville-TN-Churches/First-Baptist/i-7PDfZpk/A. [Accessed: 16-Dec-2020].

[5] D. T. Murphy, “R1 Nuclear Reactor Hall,” OpenAIR. [Online]. Available: https://www.openair.hosted.york.ac.uk/?page_id=626. [Accessed: 16-Dec-2020].

[6] M. Rogalsky, “Elveden Hall (Suffolk England),” OpenAIR. [Online]. Available: https://www.openair.hosted.york.ac.uk/?page_id=459. [Accessed: 16-Dec-2020].

[7] “Anechoic Data,” OpenAIR. [Online]. Available: https://www.openair.hosted.york.ac.uk/?page_id=310. [Accessed: 16-Dec-2020].