Skip to main content

SDL_GetAudioStreamData

Function SDL_GetAudioStreamData 

Source
pub unsafe extern "C" fn SDL_GetAudioStreamData(
    stream: *mut SDL_AudioStream,
    buf: *mut c_void,
    len: c_int,
) -> c_int
Expand description

Get converted/resampled data from the stream.

The input/output data format/channels/samplerate is specified when creating the stream, and can be changed after creation by calling SDL_SetAudioStreamFormat.

Note that any conversion and resampling necessary is done during this call, and SDL_PutAudioStreamData simply queues unconverted data for later. This is different than SDL2, where that work was done while inputting new data to the stream and requesting the output just copied the converted data.

Parameter: stream the stream the audio is being requested from. Parameter: buf a buffer to fill with audio data. Parameter: len the maximum number of bytes to fill. Returns: the number of bytes read from the stream or -1 on failure; call SDL_GetError() for more information.

Thread Safety: It is safe to call this function from any thread, but if the stream has a callback set, the caller might need to manage extra locking.

Available Since: This function is available since SDL 3.2.0.

See Also: SDL_ClearAudioStream See Also: SDL_GetAudioStreamAvailable See Also: SDL_PutAudioStreamData