SDL 混音器声音无法播放
SDL Mixer Sound Not Playing
我正在使用 SDL 制作游戏,但我的声音处理程序类不起作用,我无法弄清楚原因。文件路径绝对正确,我SDL_Mixer正确设置,因为我以前有过正确的声音工作,我也没有收到任何错误或警告,游戏运行良好,只是没有音乐。
SoundHandler.h:
enum Sounds
{
BACKGROUND_MUSIC, STICK_COLLECT
};
class SoundHandler
{
public:
SoundHandler();
void PlaySound(Sounds sound);
private:
Mix_Music *backMusic;
Mix_Music *stickCollect;
};
声音处理程序.cpp:
SoundHandler::SoundHandler()
{
Mix_OpenAudio(22050, MIX_DEFAULT_FORMAT, 2, 4096);
this->backMusic = Mix_LoadMUS("Data//Music//Background.mp3");
this->stickCollect = Mix_LoadMUS("Data//Sounds//StickCollect.mp3");
Mix_VolumeMusic(128);
}
void SoundHandler::PlaySound(Sounds sound)
{
if(sound == BACKGROUND_MUSIC)
{
Mix_PlayMusic(this->backMusic, -1);
}
if(sound == STICK_COLLECT)
{
Mix_PlayMusic(this->stickCollect, 1);
}
}
主.cpp相关线路:
// Initialise Sound
SoundHandler soundHandler;
// Play Background Music
soundHandler.PlaySound(BACKGROUND_MUSIC);
// Play Sound
soundHandler.PlaySound(STICK_COLLECT);
我认为问题出在文件路径中的双斜杠上,请尝试使用单斜杠。
您将有很长时间的调试时间而没有错误检查。
相关文章:
- 如何在C++中播放声音?
- 有没有办法毫不拖延地播放声音?
- 在不打开应用程序的情况下在MinGW c++中播放声音(.wav)文件
- 如何在QT中飞溅之前播放声音?
- 计时器达到零时如何播放声音?
- 使用MinGW播放声音
- 如何从McIsendstring()中解决此错误并使其播放声音
- 如何在 c++ 中播放声音
- 视觉 在C++中正确使用播放声音功能
- 切换音频设备时播放声音的SDL问题
- 有没有一种简单的方法可以使用SFML在后台线程中播放声音
- 如何使用7.1音频系统sfml播放声音
- 在做其他事情时,在C 中播放声音
- 当Windows XP(32位,SP3)播放声音时,随机应用程序暂停半秒钟
- 在 DirectX Windows 8 应用中播放声音
- C 确定是否播放声音
- 播放 C/C++ 声音的最简单方法
- 无法使用适用于Android的Qt使手机播放声音或振动
- 与CocosDenshion一起按顺序播放声音
- Qt c++在按键时播放声音 - 几秒钟后停止工作