To measure the impulse response of a room (more precisely: the impulse response from one specific point in the room to another specific point in the room), the room can be excited with an impulse (or bang) and the result (= the impulse response) can be recorded with a microphone.
In this unit we will measure the impulse response of our seminar room. There are several possibilities to excite the room - bursting balloons, gunshots, electrical spark discharges, ...; for simplicity (and for safety reasons), we use two wooden boards which we clap together.
That's not ideal - ideally all frequencies should be excited equally - but it shall be sufficient for demonstration purposes.
We will record the room response with the software Audacity and export the result as WAV file (using the menu "File" $\to$ "Export Audio..." or "Export Selected Audio...").
As we will see in a later unit, there are much better ways to measure room impulse responses!
If you are not able to join us for the measurement, you can still try the following exercises with this example room impulse response: data/rir_clap.wav.
Exercise: Listen to the WAV file containing the impulse response. Do you get a clear impression about the recorded room?
Exercise: Convolve the measured impulse response with different audio signals (see the data/
directory for some example WAV files) and listen to the respective results.
Does it sound like the measured room? If not, what's different?
If the resulting signal is too soft or too loud, you can normalize it with the function tools.normalize()
(defined in tools.py).
import tools
tools.normalize?
Exercise: Plot the impulse response; once with linear amplitude and once in decibel. Which is more meaningful?
Exercise: Write a function called plot_impulse_response()
, which plots a given impulse response with the following properties:
The x-axis shall be labelled with the time in milliseconds.
The y-axis shall be labelled with the amplitude in dB, in a way that the absolute maximum of the impulse response is at 0 dB.
Exercise: Just by looking at the figure, try to estimate the reverberation time $T_{60}$ resp. $T_{30}$ (sometimes also called $RT_{60}$/$RT_{30}$). This is the time in which the level has decreased by 60 dB resp. 30 dB after the maximum level (corresponding to the direct sound component).
Here we estimate the reverberation time for the whole audible frequency range. The reverberation time can also be measured for certain frequency ranges by sending the impulse response through a filter bank.
In the interwebs, there are many places where you can find room impulse responses.
A few suggestions:
Pori Concert Hall
overview http://www.acoustics.hut.fi/projects/poririrs/
download http://legacy.spa.aalto.fi/projects/poririrs/wavs/omni.zip
extract s1_r1_o.wav
convert from stereo to mono
SpACE-Net
Maes Howe http://www.space-net.org.uk/node/51/index.html
Hamilton Mausoleum http://www.space-net.org.uk/node/52/index.html
St Andrew's Church http://www.space-net.org.uk/node/53/index.html
York Minster http://www.space-net.org.uk/node/54/index.html
EMES Virtual Rooms
a few free IRs http://www.emes.de/pageseng/products/Impulsresponse/eimpulse.htm
information http://www.emes.de/pdf/Freesampletxt2-1.pdf
one example WAV http://www.emes.de/impulsefiles/Gothic%20Church.wav
Aachen Impulse Response Database
The World's Longest Reverb
Exercise: Download some of them, listen to them, plot them and roughly estimate their reverberation time $T_{60}$.
Can you recognize the direct sound, the early reflections and the late reverb?
If you had problems solving some of the exercises, don't despair! Have a look at the example solutions.