StopMusicStream takes pointer

This commit is contained in:
Zatherz 2019-08-26 03:24:14 +02:00
parent 75c3fe14e5
commit afeb146582
5 changed files with 13 additions and 17 deletions

View File

@ -70,7 +70,7 @@ int main(void)
// Restart music playing (stop and play)
if (IsKeyPressed(KEY_SPACE))
{
StopMusicStream(xm);
StopMusicStream(&xm);
PlayMusicStream(xm);
}

View File

@ -42,7 +42,7 @@ int main(void)
// Restart music playing (stop and play)
if (IsKeyPressed(KEY_SPACE))
{
StopMusicStream(music);
StopMusicStream(&music);
PlayMusicStream(music);
}

View File

@ -1378,32 +1378,32 @@ void ResumeMusicStream(Music music)
}
// Stop music playing (close stream)
void StopMusicStream(Music music)
void StopMusicStream(Music* music)
{
StopAudioStream(music.stream);
StopAudioStream(music->stream);
// Restart music context
switch (music.ctxType)
switch (music->ctxType)
{
#if defined(SUPPORT_FILEFORMAT_OGG)
case MUSIC_AUDIO_OGG: stb_vorbis_seek_start((stb_vorbis *)music.ctxData); break;
case MUSIC_AUDIO_OGG: stb_vorbis_seek_start((stb_vorbis *)music->ctxData); break;
#endif
#if defined(SUPPORT_FILEFORMAT_FLAC)
case MUSIC_AUDIO_FLAC: /* TODO: Restart FLAC context */ break;
#endif
#if defined(SUPPORT_FILEFORMAT_MP3)
case MUSIC_AUDIO_MP3: drmp3_seek_to_pcm_frame((drmp3 *)music.ctxData, 0); break;
case MUSIC_AUDIO_MP3: drmp3_seek_to_pcm_frame((drmp3 *)music->ctxData, 0); break;
#endif
#if defined(SUPPORT_FILEFORMAT_XM)
case MUSIC_MODULE_XM: jar_xm_reset((jar_xm_context_t *)music.ctxData); break;
case MUSIC_MODULE_XM: jar_xm_reset((jar_xm_context_t *)music->ctxData); break;
#endif
#if defined(SUPPORT_FILEFORMAT_MOD)
case MUSIC_MODULE_MOD: jar_mod_seek_start((jar_mod_context_t *)music.ctxData); break;
case MUSIC_MODULE_MOD: jar_mod_seek_start((jar_mod_context_t *)music->ctxData); break;
#endif
default: break;
}
music.sampleLeft = music.sampleCount;
music->sampleLeft = music->sampleCount;
}
// Update (re-fill) music buffers if data already processed
@ -1488,7 +1488,7 @@ void UpdateMusicStream(Music* music)
// Reset audio stream for looping
if (streamEnding)
{
StopMusicStream(*music); // Stop music (and reset)
StopMusicStream(music); // Stop music (and reset)
// Decrease loopCount to stop when required
if (music->loopCount > 1)
@ -1496,10 +1496,6 @@ void UpdateMusicStream(Music* music)
music->loopCount--; // Decrease loop count
PlayMusicStream(*music); // Play again
}
else
{
if (music->loopCount == 0) PlayMusicStream(*music);
}
}
else
{

View File

@ -168,7 +168,7 @@ Music LoadMusicStream(const char *fileName); // Load music st
void UnloadMusicStream(Music music); // Unload music stream
void PlayMusicStream(Music music); // Start music playing
void UpdateMusicStream(Music* music); // Updates buffers for music streaming
void StopMusicStream(Music music); // Stop music playing
void StopMusicStream(Music* music); // Stop music playing
void PauseMusicStream(Music music); // Pause music playing
void ResumeMusicStream(Music music); // Resume playing paused music
bool IsMusicPlaying(Music music); // Check if music is playing

View File

@ -1378,7 +1378,7 @@ RLAPI Music LoadMusicStream(const char *fileName); // Load mu
RLAPI void UnloadMusicStream(Music music); // Unload music stream
RLAPI void PlayMusicStream(Music music); // Start music playing
RLAPI void UpdateMusicStream(Music* music); // Updates buffers for music streaming
RLAPI void StopMusicStream(Music music); // Stop music playing
RLAPI void StopMusicStream(Music* music); // Stop music playing
RLAPI void PauseMusicStream(Music music); // Pause music playing
RLAPI void ResumeMusicStream(Music music); // Resume playing paused music
RLAPI bool IsMusicPlaying(Music music); // Check if music is playing