Stereo Perception and Sound Localisation


The human auditory system is able to discriminate whether a sound comes from the right or from the left, if it is located behind, in front of, below or above the hearer. As a matter of fact, humans can distinguish sounds from two different sources, where the angle between the sources is only 3° (Birbaumer and Schmidt, 1999, p. 415).

Localising a sound in a room is a process which is based on several physiological mechanisms. The auditory demonstrations presented on this web-page show how the mechanisms for the perception of direction (stereo hearing, i.e. if a sound is located on the left or on the right side) work.

Perception whether a sound is located in front, behind, above or below the hearer uses different mechanisms than the ones presented here (e.g. reflections on walls, on the auricles, etc.).

Auditory Demonstrations

Figure 1: Stereo Triangle

Figure 1: Stereo Triangle

Since the four auditory demonstrations below demonstrate stereo perception, it is necessary to listen to them using two loudspeakers. The hearer should be located in the centre opposite to them, best in one corner of the so called "stereo triangle" as illustrated in Figure 1.

Loudspeakers are recommended above headphones, since the sound source seems to be located inside the head of the listener (lateralization) when using headphones (Moore , 2003, p. 233).

Monaural Sound Perception and Simple Binaural Stereo

The following example (1) demonstrates monaural and simple stereo sound perception. First you will hear a voice from the left loudspeaker then you will hear a voice from the right loudspeaker last you will hear a voice from both loudspeakers. Note that the last voice seems to be located in the centre between the left and the right loudspeaker.

Demonstration 1: mp3 (140 kB), ogg (160 kB), wav (1,5 MB).

Binaural Sound Perception

The following three examples demonstrate different techniques to achieve a stereo perception. The sound is presented so that it seems to be located between one of the loudspeakers and the centre of the loudspeakers. In all cases you should hear a voice from the left side.

Figure 2: Time delay

Figure 2: Time delay

In the first demonstration [2A] the sound from the right loudspeaker has a time delay of 500µs in relation to the sound from the left loudspeaker (see Figure 2).

Demonstration 2A: mp3 (76 kB), ogg (116 kB), wav (816 kB).

    > [S, FS] = stereo(0, -500);
    > sound(S, FS, 'demo2a.wav');
Figure 3: Intensity difference

Figure 3: Intensity difference

In the next demonstration [2B] the sound from the right loudspeaker has 3dB less intensity than the sound from the left loudspeaker.

Demonstration 2B: mp3 (76 kB), ogg (84 kB), wav (816 kB).

    > [S, FS] = stereo(-3, 0);
    > sound(S, FS, 'demo2b.wav');
Figure f: Time delay and intensity difference

Figure 4: Both mechanisms

The following demonstration [2C] is a combination of the two techniques used above. The sound from the loudspeaker on the right has a time delay of 500µs and 3dB less intensity than the sound from the loudspeaker on the left.

Demonstration 2C: mp3 (76 kB), ogg (116 kB), wav (816 kB).

    > [S, FS] = stereo(-3, -500);
    > sound(S, FS, 'demo2c.wav');

Localisation of a Moving Sound Source

The next example demonstrates a moving sound source. First you will hear a voice from the left side. Then it changes it's position in 20 small steps until you will finally hear it from the right side. Both of the techniques presented above (time delay and intensity difference) were used to generate this sound.

Demonstration 3: mp3 (88 kB), ogg (132 kB), wav (920 kB).

    > [S, FS] = stereomove(-10, 700, 10, 700);
    > sound(S, FS, 'demo3.wav');

Confusing the Human Auditory System

This final demonstration was generated with the same Matlab function used in demonstration 3. But this time the parameters were used in a incorrect way: The time delay was used in an inverse way, i.e. intensity difference and time delay are working against each other. While hearing this demonstration, you will be unsure where to localise the sound source.

Demonstration 4: mp3 (88 kB), ogg (136 kB), wav (920 kB).

    > [S, FS] = stereomove(-3, 700, 3, -700);
    > sound(S, FS, 'demo3.wav');

Explanation of the Phenomenon

Localising of a sound source is nothing special in a human's life. Naturally direction hearing (left vs. right) is based on exactly the same mechanisms which were used for these demonstrations. But in reality there is one fundamental difference: The sound source is situated at the position from which we hear it. Not so in these sound examples. The sound source are two loudspeakers, which are not located at the position where we hear the sound from but at the very left and at the very right side.

The illusion of an imaginary sound source somewhere between these two physical ones is reached by imitating the natural behaviour of it. Normally sound-waves from the sound source reach the two ears with a small time delay caused by the position of the ears (Moore , 2003, Fig. 7.3, p.237) and an intensity difference caused by various reasons (e.g. damping of the waves by the head).

Similar methods are used to create the stereo effects. But here the right loudspeaker irradiates mainly the right ear and the left loudspeaker mainly the left ear. So a time delay and/or an intensity difference at one of the loudspeakers, trick the human ear and create illusions as perceivable on this web-page.

Documentation of Sound Generation

All of the auditory demonstrations presented on this web-page were generated with the help of Matlab and the two functions stereo and stereomove which were created for this assignment. The Matlab commands which compute each sound were displayed above (together with the demonstration).


The function stereo takes two parameters: the intensity difference (in dB) and the time delay (in µs) for the right channel (i.e. loudspeaker). Because of this design, negative/positive values for the parameters result in a sound whose source seems to be situated on the left/right side.

The functions copies the mono input wav-file into a stereo wave file whose second channel is scaled with the specified intensity difference and shifted by the specified time delay.


The function stereomove takes four parameters: the intensity difference (in dB) and the time delay (in µs) for the right channel (i.e. loudspeaker) at the start respectively at the end of the input sound file. The method is similar to the one used in stereo.m. But it is applied twenty times, each time for a small part of the input sound.

The interesting part of this method is the time delay, which has a variable value at different points of time. For this reason one stereo channels is compressed and/or virtually expanded (by compressing the other channel) in length (depending on the time delay).


About this Document

This document and the attached auditory demonstrations are the authors' results of the second home assignment in the course Sound Perception given by Arne Leijon at KTH Stockholm in the first study period of the autumn term 2005.

The task was to "present an interesting and non-trivial psycho-acoustical phenomenon, to create sound examples, to document how the sounds were generated and to provide a correct explanation of the phenomenon". The results should be presented on a "simple, informative and elegant web-page".

This document is valid XHTML 1.0 Strict and uses the W3C Core Style "Swiss". It was last revised on October 7, 2005.