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) // Restart music playing (stop and play)
if (IsKeyPressed(KEY_SPACE)) if (IsKeyPressed(KEY_SPACE))
{ {
StopMusicStream(xm); StopMusicStream(&xm);
PlayMusicStream(xm); PlayMusicStream(xm);
} }

View File

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

View File

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

View File

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