| OpenAL Specification and Reference | ||
|---|---|---|
| <<< Previous | Listener and Sources | Next >>> |
The Listener Object defines various properties that affect processing of the sound for the actual output. Listener state affects the very last stage of sound synthesis, and are applied to the sound stream sampled at the Listener position. The Listener is unique for an OpenAL Context, and has no Name. By controlling the listener, the application controls the way the user experiences the virtual world, as the listener defines the sampling/pickup point and orientation, and other parameters that affect the output stream.
It is entirely up to the driver and hardware configuration, i.e. the installation of OpenAL as part of the operating system and hardware setup, whether the output stream is generated for headphones or 2 speakers, 4.1 speakers, or other arrangements, whether (and which) HRTF's are applied etc. We assume that the listener's capabilities are those of a human: binaural, with ears on either side of the head that have pinnae that may alter the way a sound is heard to allow for some amount of spatial discrimination.
Table 4. Listener Orientation
| Name | Signature | Values | Default |
|---|---|---|---|
| ORIENTATION | fv | any except NaN | { { 0.0f, 1.0f, 0.0f }, { 0.0f, 0.0f, -1.0f } } |
The Listener specifies the sampling position and properties for the final sound processing stage.
void Listener{n}{sifd}{v} ( enum paramName , T values );
Listener state is maintained inside the OpenAL implementation and can be queried in full. See Querying Object Attributes. The valid values for the param parameter are identical to the ones for the Listener* mutator in the vector form.
void GetListener{sifd}v ( enum param , T * values );
| <<< Previous | Home | Next >>> |
| Listener and Sources | Up | Source Objects |