forked from JailDoctor/JailAudio
32 lines
1.1 KiB
C
32 lines
1.1 KiB
C
#pragma once
|
|
#include <SDL2/SDL.h>
|
|
|
|
enum JA_Channel_state { JA_CHANNEL_INVALID, JA_CHANNEL_FREE, JA_CHANNEL_PLAYING, JA_CHANNEL_PAUSED };
|
|
enum JA_Music_state { JA_MUSIC_INVALID, JA_MUSIC_PLAYING, JA_MUSIC_PAUSED, JA_MUSIC_STOPPED };
|
|
|
|
typedef struct JA_Sound_t *JA_Sound;
|
|
typedef struct JA_Music_t *JA_Music;
|
|
|
|
void JA_Init(const int freq, const SDL_AudioFormat format, const int channels);
|
|
void JA_Quit();
|
|
|
|
JA_Music JA_LoadMusic(const char* filename);
|
|
void JA_PlayMusic(JA_Music music, const int loop = -1);
|
|
void JA_PauseMusic();
|
|
void JA_ResumeMusic();
|
|
void JA_StopMusic();
|
|
JA_Music_state JA_GetMusicState();
|
|
void JA_DeleteMusic(JA_Music music);
|
|
|
|
JA_Sound JA_NewSound(Uint8* buffer, Uint32 length);
|
|
JA_Sound JA_LoadSound(const char* filename);
|
|
int JA_PlaySound(JA_Sound sound, const int loop = 0);
|
|
void JA_PauseChannel(const int channel);
|
|
void JA_ResumeChannel(const int channel);
|
|
void JA_StopChannel(const int channel);
|
|
JA_Channel_state JA_GetChannelState(const int channel);
|
|
int JA_SetChannelVolume(const int channel, int volume);
|
|
|
|
void JA_DeleteSound(JA_Sound sound);
|
|
|
|
int JA_SetVolume(int volume); |