Because an acoustic space is by and large a linear, time-invariant system, one can “simply” measure its impulse response and use convolution to reproduce the effect of playing a given audio signal in that space.
The simulation of room reverberation ideally involves two transfer functions per sound source per listener (one for each ear). The tranfer functions or filter representations will change if anything in the room changes.
Figure 3:
Transfer function approach to reverberation simulation for three sources and one listener.
For the three source, one listener setup depicted in Fig. 3, the output signals would be computed via six convolutions:
where is an FIR filter representation of the impulse response from source to ear and is the length of the filter.
For impulse responses of one second (appropriate when the second) and a sample rate = 50 kHz, each filter would require 50,000 multiplies and additions per sample or 2.5 billion multiply-adds per second. For three sources and two listening points (ears), this corresponds to 30 billion operations per second.
In addition to being very computationally demanding, this approach requires new filter representations whenever the room setup changes. In general, it is difficult to implement a flexible reverberation control scheme using convolution-based approaches.
As well, it is not a “simple” process to measure the impulse response of a space and measured impulse responses are inflexible to modifications such as shortening the reverberation time.