Dropped SDL_Mixer, using JailAudio. TODO: MP3>OGG
This commit is contained in:
@@ -1,52 +1,43 @@
|
||||
#include "MusicManager.h"
|
||||
#include "const.h"
|
||||
#include "jail_audio.h"
|
||||
#include "fileManager.h"
|
||||
|
||||
MusicManager::MusicManager(void) {
|
||||
music = NULL;
|
||||
JA_Music music = NULL; //= JA_LoadMusic("intro2.ogg");
|
||||
|
||||
void music_init() {
|
||||
JA_Init(48000, AUDIO_S16, 2);
|
||||
//return Mix_OpenAudio(MIX_DEFAULT_FREQUENCY, MIX_DEFAULT_FORMAT, 2, 1024);
|
||||
}
|
||||
|
||||
MusicManager::~MusicManager(void) {
|
||||
Mix_FreeMusic(music);
|
||||
Mix_CloseAudio();
|
||||
void music_quit() {
|
||||
if (music != NULL) JA_DeleteMusic(music);
|
||||
}
|
||||
|
||||
bool MusicManager::Init() {
|
||||
return Mix_OpenAudio(MIX_DEFAULT_FREQUENCY, MIX_DEFAULT_FORMAT, 2, 1024);
|
||||
}
|
||||
|
||||
void MusicManager::Load(char *musicfilename)
|
||||
{
|
||||
void music_load(const char *musicfilename) {
|
||||
if (music != NULL) {
|
||||
Mix_HaltMusic();
|
||||
Mix_FreeMusic(music);
|
||||
JA_StopMusic();
|
||||
JA_DeleteMusic(music);
|
||||
}
|
||||
Mix_VolumeMusic(MIX_MAX_VOLUME);
|
||||
//Get the bitmap's buffer and size from the resource file
|
||||
int filesize = 0;
|
||||
char *buffer = GetBufferFromResource(musicfilename, &filesize);
|
||||
const char *buffer = file_getBufferFromResource(musicfilename, filesize);
|
||||
|
||||
//Load the buffer into a surface using RWops
|
||||
SDL_RWops *rw = SDL_RWFromMem(buffer, filesize);
|
||||
//SDL_Surface *temp = SDL_LoadBMP_RW(rw, 1);
|
||||
music = Mix_LoadMUS_RW(rw);
|
||||
|
||||
//Release the bitmap buffer memory
|
||||
music = JA_LoadMusic((Uint8*)buffer, filesize);
|
||||
//free(buffer);
|
||||
}
|
||||
|
||||
void MusicManager::Play(int loops) {
|
||||
Mix_PlayMusic(music, loops);
|
||||
void music_play(const int loops) {
|
||||
JA_PlayMusic(music, loops);
|
||||
}
|
||||
|
||||
void MusicManager::Pause() {
|
||||
Mix_PauseMusic();
|
||||
void music_pause() {
|
||||
JA_PauseMusic();
|
||||
}
|
||||
|
||||
void MusicManager::FadeOut() {
|
||||
Mix_FadeOutMusic(500);
|
||||
void music_fadeOut() {
|
||||
JA_StopMusic();
|
||||
}
|
||||
|
||||
bool MusicManager::Sonant() {
|
||||
return (Mix_PlayingMusic() == 1) && (Mix_FadingMusic() != MIX_FADING_OUT);
|
||||
const bool music_sonant() {
|
||||
return JA_GetMusicState() == JA_MUSIC_PLAYING;
|
||||
}
|
||||
Reference in New Issue
Block a user