PlayMusicStream now uses index
This commit is contained in:
parent
529d20ee6a
commit
9737c58054
3 changed files with 21 additions and 12 deletions
29
src/audio.c
29
src/audio.c
|
@ -763,19 +763,18 @@ void SetSoundPitch(Sound sound, float pitch)
|
||||||
//----------------------------------------------------------------------------------
|
//----------------------------------------------------------------------------------
|
||||||
|
|
||||||
// Start music playing (open stream)
|
// Start music playing (open stream)
|
||||||
void PlayMusicStream(char *fileName)
|
// returns 0 on success
|
||||||
|
int PlayMusicStream(int musicIndex, char *fileName)
|
||||||
{
|
{
|
||||||
int musicIndex;
|
int musicIndex = index;
|
||||||
int mixIndex;
|
int mixIndex;
|
||||||
for(musicIndex = 0; musicIndex < MAX_MUSIC_STREAMS; musicIndex++) // find empty music slot
|
|
||||||
{
|
if(currentMusic[musicIndex].stream != NULL || currentMusic[musicIndex].chipTune) return 1; // error
|
||||||
if(currentMusic[musicIndex].stream == NULL && !currentMusic[musicIndex].chipTune) break;
|
|
||||||
else if(musicIndex = MAX_MUSIC_STREAMS - 1) return;
|
|
||||||
}
|
|
||||||
for(mixIndex = 0; mixIndex < MAX_AUDIO_CONTEXTS; mixIndex++) // find empty mix channel slot
|
for(mixIndex = 0; mixIndex < MAX_AUDIO_CONTEXTS; mixIndex++) // find empty mix channel slot
|
||||||
{
|
{
|
||||||
if(mixChannelsActive_g[mixIndex] == NULL) break;
|
if(mixChannelsActive_g[mixIndex] == NULL) break;
|
||||||
else if(musicIndex = MAX_AUDIO_CONTEXTS - 1) return;
|
else if(musicIndex = MAX_AUDIO_CONTEXTS - 1) return 2; // error
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -787,6 +786,7 @@ void PlayMusicStream(char *fileName)
|
||||||
if (currentMusic[musicIndex].stream == NULL)
|
if (currentMusic[musicIndex].stream == NULL)
|
||||||
{
|
{
|
||||||
TraceLog(WARNING, "[%s] OGG audio file could not be opened", fileName);
|
TraceLog(WARNING, "[%s] OGG audio file could not be opened", fileName);
|
||||||
|
return 3; // error
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -828,9 +828,18 @@ void PlayMusicStream(char *fileName)
|
||||||
|
|
||||||
currentMusic[musicIndex].ctx = InitAudioContext(48000, mixIndex, 2, true);
|
currentMusic[musicIndex].ctx = InitAudioContext(48000, mixIndex, 2, true);
|
||||||
}
|
}
|
||||||
else TraceLog(WARNING, "[%s] XM file could not be opened", fileName);
|
else
|
||||||
|
{
|
||||||
|
TraceLog(WARNING, "[%s] XM file could not be opened", fileName);
|
||||||
|
return 4; // error
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else TraceLog(WARNING, "[%s] Music extension not recognized, it can't be loaded", fileName);
|
else
|
||||||
|
{
|
||||||
|
TraceLog(WARNING, "[%s] Music extension not recognized, it can't be loaded", fileName);
|
||||||
|
return 5; // error
|
||||||
|
}
|
||||||
|
return 0; // normal return
|
||||||
}
|
}
|
||||||
|
|
||||||
// Stop music playing for individual music index of currentMusic array (close stream)
|
// Stop music playing for individual music index of currentMusic array (close stream)
|
||||||
|
|
|
@ -100,7 +100,7 @@ bool IsSoundPlaying(Sound sound); // Check if a so
|
||||||
void SetSoundVolume(Sound sound, float volume); // Set volume for a sound (1.0 is max level)
|
void SetSoundVolume(Sound sound, float volume); // Set volume for a sound (1.0 is max level)
|
||||||
void SetSoundPitch(Sound sound, float pitch); // Set pitch for a sound (1.0 is base level)
|
void SetSoundPitch(Sound sound, float pitch); // Set pitch for a sound (1.0 is base level)
|
||||||
|
|
||||||
void PlayMusicStream(char *fileName); // Start music playing (open stream)
|
int PlayMusicStream(int musicIndex, char *fileName); // Start music playing (open stream)
|
||||||
void UpdateMusicStream(void); // Updates buffers for music streaming
|
void UpdateMusicStream(void); // Updates buffers for music streaming
|
||||||
void StopMusicStream(int index); // Stop music playing (close stream)
|
void StopMusicStream(int index); // Stop music playing (close stream)
|
||||||
void PauseMusicStream(int index); // Pause music playing
|
void PauseMusicStream(int index); // Pause music playing
|
||||||
|
|
|
@ -894,7 +894,7 @@ bool IsSoundPlaying(Sound sound); // Check if a so
|
||||||
void SetSoundVolume(Sound sound, float volume); // Set volume for a sound (1.0 is max level)
|
void SetSoundVolume(Sound sound, float volume); // Set volume for a sound (1.0 is max level)
|
||||||
void SetSoundPitch(Sound sound, float pitch); // Set pitch for a sound (1.0 is base level)
|
void SetSoundPitch(Sound sound, float pitch); // Set pitch for a sound (1.0 is base level)
|
||||||
|
|
||||||
void PlayMusicStream(char *fileName); // Start music playing (open stream)
|
int PlayMusicStream(int musicIndex, char *fileName); // Start music playing (open stream)
|
||||||
void UpdateMusicStream(void); // Updates buffers for music streaming
|
void UpdateMusicStream(void); // Updates buffers for music streaming
|
||||||
void StopMusicStream(int index); // Stop music playing (close stream)
|
void StopMusicStream(int index); // Stop music playing (close stream)
|
||||||
void PauseMusicStream(int index); // Pause music playing
|
void PauseMusicStream(int index); // Pause music playing
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue