forked from KolibriOS/kolibrios
288 lines
3.8 KiB
HTML
288 lines
3.8 KiB
HTML
|
<HTML
|
||
|
><HEAD
|
||
|
><TITLE
|
||
|
>SDL_LoadWAV</TITLE
|
||
|
><META
|
||
|
NAME="GENERATOR"
|
||
|
CONTENT="Modular DocBook HTML Stylesheet Version 1.64
|
||
|
"><LINK
|
||
|
REL="HOME"
|
||
|
TITLE="SDL Library Documentation"
|
||
|
HREF="index.html"><LINK
|
||
|
REL="UP"
|
||
|
TITLE="Audio"
|
||
|
HREF="audio.html"><LINK
|
||
|
REL="PREVIOUS"
|
||
|
TITLE="SDL_GetAudioStatus"
|
||
|
HREF="sdlgetaudiostatus.html"><LINK
|
||
|
REL="NEXT"
|
||
|
TITLE="SDL_FreeWAV"
|
||
|
HREF="sdlfreewav.html"></HEAD
|
||
|
><BODY
|
||
|
CLASS="REFENTRY"
|
||
|
BGCOLOR="#FFF8DC"
|
||
|
TEXT="#000000"
|
||
|
LINK="#0000ee"
|
||
|
VLINK="#551a8b"
|
||
|
ALINK="#ff0000"
|
||
|
><DIV
|
||
|
CLASS="NAVHEADER"
|
||
|
><TABLE
|
||
|
WIDTH="100%"
|
||
|
BORDER="0"
|
||
|
CELLPADDING="0"
|
||
|
CELLSPACING="0"
|
||
|
><TR
|
||
|
><TH
|
||
|
COLSPAN="3"
|
||
|
ALIGN="center"
|
||
|
>SDL Library Documentation</TH
|
||
|
></TR
|
||
|
><TR
|
||
|
><TD
|
||
|
WIDTH="10%"
|
||
|
ALIGN="left"
|
||
|
VALIGN="bottom"
|
||
|
><A
|
||
|
HREF="sdlgetaudiostatus.html"
|
||
|
>Prev</A
|
||
|
></TD
|
||
|
><TD
|
||
|
WIDTH="80%"
|
||
|
ALIGN="center"
|
||
|
VALIGN="bottom"
|
||
|
></TD
|
||
|
><TD
|
||
|
WIDTH="10%"
|
||
|
ALIGN="right"
|
||
|
VALIGN="bottom"
|
||
|
><A
|
||
|
HREF="sdlfreewav.html"
|
||
|
>Next</A
|
||
|
></TD
|
||
|
></TR
|
||
|
></TABLE
|
||
|
><HR
|
||
|
ALIGN="LEFT"
|
||
|
WIDTH="100%"></DIV
|
||
|
><H1
|
||
|
><A
|
||
|
NAME="SDLLOADWAV"
|
||
|
>SDL_LoadWAV</A
|
||
|
></H1
|
||
|
><DIV
|
||
|
CLASS="REFNAMEDIV"
|
||
|
><A
|
||
|
NAME="AEN6269"
|
||
|
></A
|
||
|
><H2
|
||
|
>Name</H2
|
||
|
>SDL_LoadWAV -- Load a WAVE file</DIV
|
||
|
><DIV
|
||
|
CLASS="REFSYNOPSISDIV"
|
||
|
><A
|
||
|
NAME="AEN6272"
|
||
|
></A
|
||
|
><H2
|
||
|
>Synopsis</H2
|
||
|
><DIV
|
||
|
CLASS="FUNCSYNOPSIS"
|
||
|
><A
|
||
|
NAME="AEN6273"
|
||
|
></A
|
||
|
><P
|
||
|
></P
|
||
|
><PRE
|
||
|
CLASS="FUNCSYNOPSISINFO"
|
||
|
>#include "SDL.h"</PRE
|
||
|
><P
|
||
|
><CODE
|
||
|
><CODE
|
||
|
CLASS="FUNCDEF"
|
||
|
>SDL_AudioSpec *<B
|
||
|
CLASS="FSFUNC"
|
||
|
>SDL_LoadWAV</B
|
||
|
></CODE
|
||
|
>(const char *file, SDL_AudioSpec *spec, Uint8 **audio_buf, Uint32 *audio_len);</CODE
|
||
|
></P
|
||
|
><P
|
||
|
></P
|
||
|
></DIV
|
||
|
></DIV
|
||
|
><DIV
|
||
|
CLASS="REFSECT1"
|
||
|
><A
|
||
|
NAME="AEN6279"
|
||
|
></A
|
||
|
><H2
|
||
|
>Description</H2
|
||
|
><P
|
||
|
><TT
|
||
|
CLASS="FUNCTION"
|
||
|
>SDL_LoadWAV</TT
|
||
|
>
|
||
|
This function loads a WAVE <TT
|
||
|
CLASS="PARAMETER"
|
||
|
><I
|
||
|
>file</I
|
||
|
></TT
|
||
|
> into memory.</P
|
||
|
><P
|
||
|
>If this function succeeds, it returns the given
|
||
|
<A
|
||
|
HREF="sdlaudiospec.html"
|
||
|
><TT
|
||
|
CLASS="FUNCTION"
|
||
|
>SDL_AudioSpec</TT
|
||
|
></A
|
||
|
>,
|
||
|
filled with the audio data format of the wave data, and sets
|
||
|
<TT
|
||
|
CLASS="PARAMETER"
|
||
|
><I
|
||
|
>audio_buf</I
|
||
|
></TT
|
||
|
> to a <TT
|
||
|
CLASS="FUNCTION"
|
||
|
>malloc</TT
|
||
|
>'d
|
||
|
buffer containing the audio data, and sets <TT
|
||
|
CLASS="PARAMETER"
|
||
|
><I
|
||
|
>audio_len</I
|
||
|
></TT
|
||
|
>
|
||
|
to the length of that audio buffer, in bytes. You need to free the audio
|
||
|
buffer with <A
|
||
|
HREF="sdlfreewav.html"
|
||
|
><TT
|
||
|
CLASS="FUNCTION"
|
||
|
>SDL_FreeWAV</TT
|
||
|
></A
|
||
|
> when you are
|
||
|
done with it.</P
|
||
|
><P
|
||
|
>This function returns <TT
|
||
|
CLASS="LITERAL"
|
||
|
>NULL</TT
|
||
|
> 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.</P
|
||
|
></DIV
|
||
|
><DIV
|
||
|
CLASS="REFSECT1"
|
||
|
><A
|
||
|
NAME="AEN6294"
|
||
|
></A
|
||
|
><H2
|
||
|
>Example</H2
|
||
|
><PRE
|
||
|
CLASS="PROGRAMLISTING"
|
||
|
>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);</PRE
|
||
|
></DIV
|
||
|
><DIV
|
||
|
CLASS="REFSECT1"
|
||
|
><A
|
||
|
NAME="AEN6297"
|
||
|
></A
|
||
|
><H2
|
||
|
>See Also</H2
|
||
|
><P
|
||
|
><A
|
||
|
HREF="sdlaudiospec.html"
|
||
|
><SPAN
|
||
|
CLASS="STRUCTNAME"
|
||
|
>SDL_AudioSpec</SPAN
|
||
|
></A
|
||
|
>,
|
||
|
<A
|
||
|
HREF="sdlopenaudio.html"
|
||
|
><TT
|
||
|
CLASS="FUNCTION"
|
||
|
>SDL_OpenAudio</TT
|
||
|
></A
|
||
|
>,
|
||
|
<A
|
||
|
HREF="sdlfreewav.html"
|
||
|
><TT
|
||
|
CLASS="FUNCTION"
|
||
|
>SDL_FreeWAV</TT
|
||
|
></A
|
||
|
></P
|
||
|
></DIV
|
||
|
><DIV
|
||
|
CLASS="NAVFOOTER"
|
||
|
><HR
|
||
|
ALIGN="LEFT"
|
||
|
WIDTH="100%"><TABLE
|
||
|
WIDTH="100%"
|
||
|
BORDER="0"
|
||
|
CELLPADDING="0"
|
||
|
CELLSPACING="0"
|
||
|
><TR
|
||
|
><TD
|
||
|
WIDTH="33%"
|
||
|
ALIGN="left"
|
||
|
VALIGN="top"
|
||
|
><A
|
||
|
HREF="sdlgetaudiostatus.html"
|
||
|
>Prev</A
|
||
|
></TD
|
||
|
><TD
|
||
|
WIDTH="34%"
|
||
|
ALIGN="center"
|
||
|
VALIGN="top"
|
||
|
><A
|
||
|
HREF="index.html"
|
||
|
>Home</A
|
||
|
></TD
|
||
|
><TD
|
||
|
WIDTH="33%"
|
||
|
ALIGN="right"
|
||
|
VALIGN="top"
|
||
|
><A
|
||
|
HREF="sdlfreewav.html"
|
||
|
>Next</A
|
||
|
></TD
|
||
|
></TR
|
||
|
><TR
|
||
|
><TD
|
||
|
WIDTH="33%"
|
||
|
ALIGN="left"
|
||
|
VALIGN="top"
|
||
|
>SDL_GetAudioStatus</TD
|
||
|
><TD
|
||
|
WIDTH="34%"
|
||
|
ALIGN="center"
|
||
|
VALIGN="top"
|
||
|
><A
|
||
|
HREF="audio.html"
|
||
|
>Up</A
|
||
|
></TD
|
||
|
><TD
|
||
|
WIDTH="33%"
|
||
|
ALIGN="right"
|
||
|
VALIGN="top"
|
||
|
>SDL_FreeWAV</TD
|
||
|
></TR
|
||
|
></TABLE
|
||
|
></DIV
|
||
|
></BODY
|
||
|
></HTML
|
||
|
>
|