|
Size: 1391
Comment: update content - add include x2
|
Size: 1477
Comment: update content - pointers, structs
|
| Deletions are marked like this. | Additions are marked like this. |
| Line 19: | Line 19: |
| ||'''spec''' ||specifies the target audio format; see [[SDL_AudioSpec]] for more info || ||'''audio_buf''' ||specifies the audio buffer || ||'''audio_len''' ||specifies the length of the audio buffer in bytes || |
||'''spec''' ||,,specifies,, the target audio format; see [[SDL_AudioSpec]] for details ''-or-'' an [[SDL_AudioSpec]] structure representing the desired output format || ||'''audio_buf''' ||,,specifies,, the audio buffer || ||'''audio_len''' ||,,specifies,, the length of the audio buffer in bytes || |
| Line 24: | Line 24: |
| <<Include(SDL_LoadWAV_RW, , , from="== Return Value ==", to="== Code Examples ==")>> | <<Include(SDL_LoadWAV_RW, , , from="== Return Value ==", to="== Code Examples")>> |
SDL_LoadWAV
Use this function to load a WAVE file.
Contents
Syntax
SDL_AudioSpec* SDL_LoadWAV(const char* filename,
SDL_AudioSpec* spec,
Uint8** audio_buf,
Uint32* audio_len)
Function Parameters
filename |
the name of the file to load |
spec |
specifies the target audio format; see SDL_AudioSpec for details -or- an SDL_AudioSpec structure representing the desired output format |
audio_buf |
specifies the audio buffer |
audio_len |
specifies the length of the audio buffer in bytes |
Return Value
This function, if successfully called, returns a pointer to an SDL_AudioSpec structure filled with the audio data format of the wave source data. audio_buf is filled with a pointer to an allocated buffer containing the audio data, and audio_len is filled with the length of that audio buffer in bytes.
This function returns NULL if the wave file cannot be opened, uses an unknown data format, or is corrupt; call SDL_GetError() for more information.
When the application is done with the data returned in audio_buf, it should call SDL_FreeWAV() to dispose of it.
Code Examples
SDL_AudioSpec wav_spec;
Uint32 wav_length;
Uint8 *wav_buffer;
/* Load the WAV */
if( SDL_LoadWAV("test.wav", &wav_spec, &wav_buffer, &wav_length) == NULL ){
fprintf(stderr, "Could not open test.wav: %s\n", SDL_GetError());
exit(-1);
}
.
.
.
/* Do stuff with the WAV */
.
.
/* Free It */
SDL_FreeWAV(wav_buffer);
Remarks
Currently raw and MS-ADPCM WAVE files are supported.
You need to free the audio buffer with SDL_FreeWAV() when you are done with it.
