SDL Wiki
(This is the documentation for SDL3, which is under heavy development and the API is changing! SDL2 is the current stable version!)


Loads a WAV from a file path.

Header File

Defined in <SDL3/SDL_audio.h>


int SDL_LoadWAV(const char *path, SDL_AudioSpec * spec,
            Uint8 ** audio_buf, Uint32 * audio_len);

Function Parameters

path The file path of the WAV file to open.
spec A pointer to an SDL_AudioSpec that will be set to the WAVE data's format details on successful return.
audio_buf A pointer filled with the audio data, allocated by the function.
audio_len A pointer filled with the length of the audio data buffer in bytes

Return Value

Returns 0 on success. audio_buf will be 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 -1 if the .WAV 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_free() to dispose of it.


This is a convenience function that is effectively the same as:

SDL_LoadWAV_IO(SDL_IOFromFile(path, "rb"), 1, spec, audio_buf, audio_len);

Thread Safety

It is safe to call this function from any thread.


This function is available since SDL 3.0.0.

See Also

CategoryAPI, CategoryAPIFunction, CategoryAudio

[ edit | delete | history | feedback | raw ]

[ front page | index | search | recent changes | git repo | offline html ]

All wiki content is licensed under Creative Commons Attribution 4.0 International (CC BY 4.0).
Wiki powered by ghwikipp.