Explicitly unregister a special effect function.
int Mix_UnregisterEffect(int channel, Mix_EffectFunc_t f);
chan | the channel to unregister an effect on, or MIX_CHANNEL_POST. |
f | effect the callback stop calling in future mixing iterations. |
Returns zero if error (no such channel or effect), nonzero if removed. Error messages can be retrieved from Mix_GetError().
You may not need to call this at all, unless you need to stop an effect from processing in the middle of a chunk's playback.
Posteffects are never implicitly unregistered as they are for channels (as the output stream does not have an end), but they may be explicitly unregistered through this function by specifying MIX_CHANNEL_POST for a channel.
Note that unlike most SDL and SDL_mixer functions, this function returns zero if there's an error, not on success. We apologize for the API design inconsistency here.
This function is available since SDL_mixer 3.0.0.