So far we have been dealing only with finding the specular reflection
paths. They give good basis for further analysis, but as such they
don't serve any purpose but need further processing. In this section
we show how an impulse response can be constructed and how it can be
used for auralization.
The natural first attempt is to insert an impulse for each specular
reflection path at the appropriate time event. However, this would
neglect a basic phenomenon in sound propagation. When a spherical
wavefront propagates in the free field, the energy gets spread to a
larger and larger area. Due to the conservation of energy, the
observed energy at a given listener location must be inversely
proportional to the square of the propagation distance since the
surface area of a sphere grows in proportion to $r^2$ where $r$ is the
radius of the sphere. Remembering that the sound energy is the square
of the sound pressure, this means that the sound pressure of a
spherical wavefront is proportional to $1/r$. The next step to make
the impulse response more realistic is to add this $1/r$
attenuation. You can play with the illustration below and see and hear
how the response changes when this attenuation is applied.
- Below the room geometry you can see the impulse response.
- The 'Scale' slider scales the size of the room and thus the propagation delay of each path.
- You can select which attenuations are taken into account in preparation of the impulse response.
- By pressing 'Play impulse response' you can listen to the impulse response.
- The 'Play soprano' will play you a short sample of music convolved with the impulse response. You will hear the anechoic sample by turning off all the reflections and having only the direct sound.
6th to 7th
8th to 10th
11th to 15th
Full ray paths
Number of image sources:
Number of ray paths:
To make the simulation even more physically correct, the next thing to
be included in the processing is the absorption caused by air. As presented
earlier, air acts as a low-pass filter. At short distances it doesn't
make any difference, but at larger distances the high-frequency
content gets noticeably attenuated. Neglecting this will make the
simulation to sound too bright.
The final element that should be taken into account here is the
absorption of sound energy at reflections. Typical wall materials are
of low-pass nature such that they attenuate high frequencies more than
the low end. However, in this simulation all the absorption
coefficients are assumed frequency independent, and they are just
examples instead of representing any particular material. If the
reflection path has undergone several reflections, i.e. it is a
higher-order image source, then each of the reflections needs to be
processed separately. In the simple case of plain reflection
coefficients, the final reflected fraction is computed by multiplying
the coefficients together. In the case of more accurate reflection
modeling, each reflection can be characterized by a filter, and their
final outcome is the convolution of all the filters.
It is easy to hear that the reverberant part of the responses sounds
unnatural. There are plenty of clearly distinguishable echos, whereas
in real rooms, this happens only very rarely. [You can increase the
size of the space by the 'Scale' slider to notice this better.] In
reality, the gaps between individual specular reflections are filled
by diffusely reflected sound energy. However, the image-source
principle is not able to model that, and, thus, there is a need for
models that are able to handle diffuse reflections. Similarly, there
is no actual reverberant tail in the response at all, and instead of
gradually decaying and fading out, the response ends abruptly. This
could be solved by increasing the reflection order but making with the
image sources is computationally challenging, although a beam-tracing
with full-beam clipping could perform well even in the case of
modeling the whole response duration. In the following chapters, we
move on and discuss methods that are able to handle diffuse
reflections and are better suited for computation of the late