alutLoadMemoryWaveform
Inhaltsverzeichnis
alutLoadMemoryWaveform
Name
alutLoadMemoryWaveform - Erzeugt einen Synthesizersound und lädt ihn in den Speicher.
Delphi-Spezifikation
function alutLoadMemoryWaveform(waveshape: TALenum; frequency: TALfloat; phase: TALfloat; duration: TALfloat; format: PALenum; size: PALsizei; sampleFrequency: PALfloat): PALvoid;
Parameter
waveshape | Symbolische Konstante, welche die Wellenform des Klanges festlegt. Möglich sind: ALUT_WAVEFORM_SINE |
---|---|
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 |
format | Zeiger auf einen TALenum-Wert, in welchem das Audioformat abgelegt wird |
size | Zeiger auf einen TALsizei-Wert, in welchem die Größe der Speicherregion gespeichert werden soll |
sampleFrequency | Zeiger auf einen TALfloat-Wert, in welchem die Samplefrequenz der Audiodaten angegeben wird |
Beschreibung
Die Funktion alutLoadMemoryWaveform lädt ein Audioschnipsel mit der angegebenen Wellenform waveshape, der Frequenz frequency (in Hertz), der Wellenphase phase (in Grad und aus dem Bereich -180° bis +180°) und der Dauer von duration Sekunden in einen neu angelegten Puffer. Es ist sichergestellt, dass die Audiodaten immer in einem Standardformat der AL im Puffer liegen und eine von der ALUT-Implementierung gewählte Samplefrequenz haben. Die Dauer wird immer auf eine exakte Zyklenanzahl aufgerundet, um Klickgeräusche zu vermeiden, falls man den Puffer wiederholt abspielt. Für die Wellenform ALUT_WAVEFORM_WHITENOISE werden die Argumente phase und frequency ignoriert. Im Erfolgsfall gibt die Funktion einen Zeiger auf den angelegten Speicherbereich zurück. Dieser kann freigegeben werden, sobald er von der Anwendung nicht mehr benötigt wird. Bei Fehlschlag wird nil zurückgegeben. Falls einer (oder mehrere) der Parameter format, size oder sampleFrequency kein nil-Zeiger ist, wird die entsprechende Information über die Audiodaten zurückgegeben.
Für den Parameter waveshape sind folgende Werte 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 Pulswellenform.
Hinweise
Falls bei der Ausführung ein Fehler auftritt, kann dieser mit Hilfe von alutGetError abgefragt 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_INVALID_ENUM wird generiert, sofern der Wert von waveshape unzulässig ist.
ALUT_ERROR_INVALID_OPERATION wird generiert, wenn ALUT nicht initialisiert wurde. (Siehe auch alutInit.)
ALUT_ERROR_INVALID_VALUE wird generiert, sofern die Frequenz frequency nicht positiv oder die Dauer duration negativ war.
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.