MIX_SetTrackStoppedCallback(3)

NAME
MIX_SetTrackStoppedCallback - Set a callback that fires when a MIX_Track is stopped.

SYNOPSIS
#include <SDL3_mixer/SDL_mixer.h>

bool MIX_SetTrackStoppedCallback(MIX_Track *track, MIX_TrackStoppedCallback cb, void *userdata);

DESCRIPTION
When a track completes playback, either because it ran out of data to mix (and all loops were completed as well), or it was explicitly stopped by the app, it will fire the callback specified here.

Each track has its own unique callback.

Passing a NULL callback here is legal; it disables this track's callback.

Pausing a track will not fire the callback, nor will the callback fire on a playing track that is being destroyed.

It is legal to adjust the track, including changing its input and restarting it. If this is done because it ran out of data in the middle of mixing, the mixer will start mixing the new track state in its current run without any gap in the audio.

FUNCTION PARAMETERS

track
    the track to assign this callback to.

cb  the function to call when the track stops. May be NULL.

userdata
    an opaque pointer provided to the callback for its own personal use.

RETURN VALUE
Returns true on success or false on failure; call SDL_GetError() for more information.

AVAILABILITY
This function is available since SDL_mixer 3.0.0.

SEE ALSO
MIX_TrackStoppedCallback(3type)