mixFadeInMusic function

bool mixFadeInMusic(
  1. Pointer<MixMusic> music,
  2. int loops,
  3. int ms
)

Play a new music object, fading in the audio.

This will start the new music playing, much like Mix_PlayMusic() will, but will start the music playing at silence and fade in to its normal volume over the specified number of milliseconds.

If there is already music playing, that music will be halted and the new music object will take its place.

If loops is greater than zero, loop the music that many times. If loops is -1, loop "infinitely" (~65000 times).

Fading music will change it's volume progressively, as if Mix_VolumeMusic() was called on it (which is to say: you probably shouldn't call Mix_VolumeMusic() on fading music).

\param music the new music object to play. \param loops the number of times the chunk should loop, -1 to loop (not actually) infinitely. \param ms the number of milliseconds to spend fading in. \returns true on success or false on failure; call SDL_GetError() for more information.

\since This function is available since SDL_mixer 3.0.0.

extern SDL_DECLSPEC bool SDLCALL Mix_FadeInMusic(Mix_Music *music, int loops, int ms)

Implementation

bool mixFadeInMusic(Pointer<MixMusic> music, int loops, int ms) {
  final mixFadeInMusicLookupFunction = libSdl3Mixer.lookupFunction<
      Uint8 Function(Pointer<MixMusic> music, Int32 loops, Int32 ms),
      int Function(
          Pointer<MixMusic> music, int loops, int ms)>('Mix_FadeInMusic');
  return mixFadeInMusicLookupFunction(music, loops, ms) == 1;
}