Mix OpenAudio
Inhaltsverzeichnis
Mix_OpenAudio
Name
Mix_OpenAudio - Initialisiert die SDL_Mixer Bibliothek
Delphi-Spezifikation
function Mix_OpenAudio( frequency : Integer; format : UInt16; channels : Integer; chunksize : Integer ) : Integer;
Parameter
frequency | Ausgabe-Sample-Frequenz in Samples pro Sekunde (Hz). MIX_DEFAULT_FREQUENCY(22050 Hz) kann für die meisten Spiele als guter Wert verwendet werden. |
---|---|
format | Ausgabeformat |
channels | Anzahl der Ausgabekanäle. Dieser Wert hat nichts mit den Mixer-Kanälen zu tun. 2 entspricht hier Stereo, 1 Mono. |
chunksize | Bytes pro Ausgabesample. |
Beschreibung
Diese Funktion muss vor der Benutzung von anderen SDL_Mixer-Funktionen aufgerufen werden. SDL muss mit SDL_INIT_AUDIO initialisiert werden vor dem Aufruf dieser Funktion. frequency auf 44100, also 44.1KHz, zu setzen, würde der Standardrate für CD's entsprechen. Die meisten Spiele kommen mit 22050 aus, vorallem, da 44100 auf älteren PC's zu viel CPU-Leistung ziehen würde. chunksize ist die Größe jedes Samples. Je kleiner der Wert ist, desto öfter werden die Hook-Funktionen (beispielsweise für Effekte) aufgerufen. Wenn diese Wert zu klein ist, kann der Sound auf älteren Systemen abreißen, ist er zu hoch, hinken die Effekte teilweise hinterher. Der Wert 4096 oder ein größerer ist gut geeignet, wenn man einfach nur Musik abspielt. Dieser Aufruf kann mehere Male hintereinander getätigt werden, aber das Format wird erst geändert, wenn vorher Mix_CloseAudio sooft aufgerufen wurde, wie davor Mix_OpenAudio, erst dann wird das Gerät geschlossen und dann kann das neue Format verwendet werden. Es werden Standardmäßig 8 Mixerkanäle reserviert.
format basiert auf der Standard-SDL-Audiounterstützung (siehe SDL_audio.pas). Hier noch einmal die Werte:
AUDIO_U8 | Vorzeichenlose 8-bit Samples |
AUDIO_S8 | Vorzeichenbehaftete 8-bit Samples |
AUDIO_U16LSB | Byte-Reihenfolge]) |
AUDIO_S16LSB | Vorzeichenbehaftete 16-bit Samples, in Little-Endian Byte-Reihenfolge |
AUDIO_U16MSB | Vorzeichenlose 16-bit Samples, in Big-Endian Byte-Reihenfolge |
AUDIO_S16MSB | Vorzeichenbehaftete 16-bit Samples, in Big-Endian Byte-Reihenfolge |
AUDIO_U16 | Entspricht AUDIO_U16LSB (für Abwärtskompatiblitäty) |
AUDIO_S16 | Entspricht AUDIO_S16LSB (für Abwärtskompatiblität) |
AUDIO_U16SYS | Vorzeichenlose 16-bit Samples, in der Byte-Reihenfolge des Systems |
AUDIO_S16SYS | Vorzeichenbehaftete 16-bit Samples, in der Byte-Reihenfolge des Systems |
MIX_DEFAULT_FORMAT entspricht AUDIO_S16SYS.
Rückgabewert
0 bei Erfolg, -1 bei Fehlern