alutCreateBufferWaveform

Aus DGL Wiki
Wechseln zu: Navigation, Suche

alutCreateBufferWaveform

Name

alutCreateBufferWaveform - Erzeugt einen OpenAL-Puffer mit einem Synthesizersound.


Delphi-Spezifikation

function alutCreateBufferWaveform(waveshape: TALenum; frequency: TALfloat;
                                  phase: TALfloat; duration: TALfloat): TALuint;


Parameter

waveshape Symbolische Konstante, welche die Wellenform des Klanges festlegt. Möglich sind:

ALUT_WAVEFORM_SINE
ALUT_WAVEFORM_SQUARE
ALUT_WAVEFORM_SAWTOOTH
ALUT_WAVEFORM_WHITENOISE
ALUT_WAVEFORM_IMPULSE

frequency Frequenz in Hertz
phase Wellenphase in Grad, muss aus dem Bereich von -180° bis +180° sein
duration Dauer des zu generierenden Geräusches in Sekunden


Beschreibung

Die Funktion alutCreateBufferWaveform erzeugt einen AL-Puffer, welcher ein Audioschnipsel mit der angegebenen Wellenform und der Frequenz von frequency Hertz enthält. Außerdem hat die Wellenform eine Phase von phase Grad und dauert duration Sekunden an. Die Dauer wird immer auf eine exakte Anzahl von Zyklen aufgerundet, um Klickgeräusche zu vermeiden, falls man den Buffer wiederholt abspielt. Für die Wellenform ALUT_WAVEFORM_WHITENOISE werden die Argumente freequency und phase ignoriert. Im Erfolgsfall gibt die Funktion den Namen des OpenAL-Puffers mit dem erzeugten Klang zurück, bei Fehlschlag wird AL_NONE zurückgegeben.

Folgende Werte sind für waveshape möglich:

ALUT_WAVEFORM_SINE

Erzeugt einen Ton mit sinusförmiger Welle.

ALUT_WAVEFORM_SAWTOOTH

Erzeugt einen Ton mit sägezahnartiger Wellenform.

ALUT_WAVEFORM_SQUARE

Erzeugt einen Ton mit rechteckiger Wellenform.

ALUT_WAVEFORM_WHITENOISE

Erzeugt ein weißes Rauschen.

ALUT_WAVEFORM_IMPULSE

Erzeugt eine pulsierende(?) Wellenform.


Hinweise

Falls bei der Ausführung ein Fehler auftritt, kann dieser mit alutGetError erfragt werden.


Fehlermeldungen

ALUT_ERROR_AL_ERROR_ON_ENTRY wird generiert, wenn beim Aufruf der Funktion schon ein AL-Fehlerstatus gesetzt war. (Siehe alGetError.)

ALUT_ERROR_ALC_ERROR_ON_ENTRY wird generiert, falls beim Aufruf der Funktion schon ein ALC-Fehlerstatus gesetzt war. (Siehe alcGetError.)

ALUT_ERROR_BUFFER_DATA wird generiert, sofern beim Befüllen des AL-Puffers mit Audiodaten ein Fehler auftrat.

ALUT_ERROR_GEN_BUFFERS wird generiert, falls beim Erstellen des OpenAL-Puffers ein Fehler auftrat.

ALUT_ERROR_INVALID_ENUM wird generiert, wenn für waveshape ein ungültiger Token angegeben wurde.

ALUT_ERROR_INVALID_OPERATION wird generiert, falls ALUT nicht initialisiert wurde. (Siehe alutInit.)

ALUT_ERROR_INVALID_VALUE wird generiert, sofern die Angabe frequency für die Frequenz nicht positiv war oder wenn duration einen negativen Wert hatte.

ALUT_ERROR_NO_CURRENT_CONTEXT wird generiert, falls es keinen aktuellen AL-Kontext gibt. (Siehe auch alcMakeContextCurrent.)

ALUT_ERROR_OUT_OF_MEMORY wird generiert, wenn nicht genügend Speicher zur Verfügung steht.


Siehe auch

alutLoadMemoryWaveform