.TH "SDL_LoadWAV" "3" "Tue 11 Sep 2001, 22:58" "SDL" "SDL API Reference" 
.SH "NAME"
SDL_LoadWAV \- Load a WAVE file
.SH "SYNOPSIS"
.PP
\fB#include "SDL\&.h"
.sp
\fBSDL_AudioSpec *\fBSDL_LoadWAV\fP\fR(\fBconst char *file, SDL_AudioSpec *spec, Uint8 **audio_buf, Uint32 *audio_len\fR);
.SH "DESCRIPTION"
.PP
\fBSDL_LoadWAV\fP This function loads a WAVE \fBfile\fR into memory\&.
.PP
If this function succeeds, it returns the given \fI\fBSDL_AudioSpec\fP\fR, filled with the audio data format of the wave data, and sets \fBaudio_buf\fR to a \fBmalloc\fP\&'d buffer containing the audio data, and sets \fBaudio_len\fR to the length of that audio buffer, in bytes\&. You need to free the audio buffer with \fI\fBSDL_FreeWAV\fP\fR when you are done with it\&.
.PP
This function returns \fBNULL\fP and sets the SDL error message if the wave file cannot be opened, uses an unknown data format, or is corrupt\&. Currently raw, MS-ADPCM and IMA-ADPCM WAVE files are supported\&.
.SH "EXAMPLE"
.PP
.nf
\f(CWSDL_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
", SDL_GetError());
  exit(-1);
}
\&.
\&.
\&.
/* Do stuff with the WAV */
\&.
\&.
/* Free It */
SDL_FreeWAV(wav_buffer);\fR
.fi
.PP
.SH "SEE ALSO"
.PP
\fI\fBSDL_AudioSpec\fR\fR, \fI\fBSDL_OpenAudio\fP\fR, \fI\fBSDL_FreeWAV\fP\fR
.\" created by instant / docbook-to-man, Tue 11 Sep 2001, 22:58
