Scroll to navigation

SDL_SetAudioStreamFormat(3) SDL3 FUNCTIONS SDL_SetAudioStreamFormat(3)

NAME

SDL_SetAudioStreamFormat - Change the input and output formats of an audio stream.

HEADER FILE

Defined in SDL3/SDL_audio.h

SYNOPSIS

#include "SDL3/SDL.h"
int SDL_SetAudioStreamFormat(SDL_AudioStream *stream,
                             const SDL_AudioSpec *src_spec,
                             const SDL_AudioSpec *dst_spec);

DESCRIPTION

Future calls to and

SDL_GetAudioStreamAvailable
and

SDL_GetAudioStreamData
will reflect the new format, and future calls to

SDL_PutAudioStreamData
must provide data in the new input formats.

Data that was previously queued in the stream will still be operated on in the format that was current when it was added, which is to say you can put the end of a sound file in one format to a stream, change formats for the next sound file, and start putting that new data while the previous sound file is still queued, and everything will still play back correctly.

FUNCTION PARAMETERS

The stream the format is being changed
The new format of the audio input; if NULL, it is not changed.
The new format of the audio output; if NULL, it is not changed.

RETURN VALUE

Returns 0 on success, or -1 on error.

THREAD SAFETY

It is safe to call this function from any thread, as it holds a stream-specific mutex while running.

AVAILABILITY

This function is available since SDL 3.0.0.

SEE ALSO

SDL_GetAudioStreamFormat(3), SDL_SetAudioStreamFrequencyRatio(3)

SDL 3.1.2 Simple Directmedia Layer