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


Get a list of currently-connected audio playback devices.

Header File

Defined in <SDL3/SDL_audio.h>


const SDL_AudioDeviceID * SDL_GetAudioPlaybackDevices(int *count);

Function Parameters

int * count a pointer filled in with the number of devices returned, may be NULL.

Return Value

(const SDL_AudioDeviceID *) Returns a 0 terminated array of device instance IDs or NULL on error; call SDL_GetError() for more information.


This returns of list of available devices that play sound, perhaps to speakers or headphones ("playback" devices). If you want devices that record audio, like a microphone ("recording" devices), use SDL_GetAudioRecordingDevices() instead.

This only returns a list of physical devices; it will not have any device IDs returned by SDL_OpenAudioDevice().

If this function returns NULL, to signify an error, *count will be set to zero.

This returns temporary memory which will be automatically freed later, and can be claimed with SDL_ClaimTemporaryMemory().

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.