- [NEW] JA_EnableMusic(const bool value) - [NEW] JA_SetSoundVolume(int volume) - [NEW] JA_EnableSound(const bool value)
JailAudio v1.2
JailAudio es una xicoteta api per a reemplaçar lo basic de SDL_mixer. Amb ella es poden carregar cançons en format OGG o sons en format WAV. Per a usar-la nomes tindreu que incloure els arxius jail_audio.cpp, jail_audio.h i stb_vorbis.c al vostre projecte. El seu us es molt senzill i es pot vore un example a l'arxiu main.cpp.
Inicialització
void JA_Init(const int freq, const SDL_AudioFormat format, const int channels);
Inicialitza el subsistema de audio. Es pot especificar la frequència, format i canals, de la mateixa forma que abans creaveu el SDL_AudioDevice.
void JA_Quit();
Tanquem la paraeta.
int JA_SetVolume(int volume);
Canvia el volum general. Es un valor entre 0 i 128. Per defecte està a 128. La música al 100%, el só al 50%.
Música
JA_Music JA_LoadMusic(const char* filename);
Carrega un arxiu OGG en memoria i el guarda a una variable de tipus JA_Music. Es un punter opac, així que nomes val pa usar-lo com a referència a l'hora de fer-lo sonar.
void JA_PlayMusic(JA_Music music, const int loop);
Comença a tocar un OGG. Se li pot dir que faça loop (-1 fa loop, 0 no fa loop (sona 1 vegada), 1 repeteix el so (sona 2 vegades), etc...). Si estava sonant altra musica, pos la para i a prendre per cul.
void JA_PauseMusic();
Pausa la música.
void JA_ResumeMusic();
Continúa la música per on s’havia pausat.
void JA_StopMusic();
Pos això...
int JA_SetMusicVolume(int volume);
Canvia el volum de la música. Es un valor entre 0 i 128. Per defecte està a 128.
JA_Music_state JA_GetMusicState();
Torna el estat de la música, que pot ser JA_MUSIC_INVALID, JA_MUSIC_PLAYING, JA_MUSIC_PAUSEDo JA_MUSIC_STOPPED.
void JA_DeleteMusic(JA_Music music);
Esborra de la memòria una cançò prèviament carregada. Si está sonant pos para de sonar, ningún problema.
Efectes de só
JA_Sound JA_NewSound(Uint8* buffer, Uint32 length);
Crea un nou só a partir d'un buffer en memòria.
JA_Sound JA_LoadSound(const char* filename);
Carrega un àudio des d'un arxiu WAV i el guarda a una variable de tipus JA_Sound. Es un punter opac, així que nomes val pa usar-lo com a referència a l'hora de fer-lo sonar.
int JA_PlaySound(JA_Sound sound, const int loop);
Fa sonar un só prèviament carregat. Se li pot dir que faça loop (-1 fa loop, 0 no fa loop (sona 1 vegada), 1 repeteix el so (sona 2 vegades), etc...). Torna el número del canal en el que està sonant.
void JA_DeleteSound(JA_Sound sound);
Esborra de la memòria un só prèviament carregat. Si el só estava sonant en eixe moment, pos el para, ningún problema.
int JA_SetSoundVolume(int volume);
Especifica el volum dels efecte de só. Es un valor entre 0 i 128. Per defecte està a 64.
Canals de só
void JA_PauseChannel(const int channel);
Pausa el só que estiga sonant en el canal especificat. Si s'especifica -1, pausa tots els canals que estigueren sonant en eixe moment.
void JA_ResumeChannel(const int channel);
Continua sonant el canal especificat, si es que estava pausat. Si s'especifica -1, fa que tots els canals que estigueren pausats es despausen i continuen.
void JA_StopChannel(const int channel);
Para un canal i el deixa lliure. Si s'especifica -1, para tots els canals que estigueren sonant en eixe moment.
JA_Channel_state JA_GetChannelState(const int channel);
Torna el estat del canal especificat, que pot ser JA_CHANNEL_INVALID, JA_CHANNEL_FREE,JA_CHANNEL_PLAYING o JA_CHANNEL_PAUSED.