【发布时间】:2014-09-09 14:35:05
【问题描述】:
由于某些非常奇怪的原因,SDL_mixer 绝对不会播放声音。我已经尝试了一切:重新安装库,检查音乐是否真的可以播放,使用 Mix_FadeInMusic 和 Mix_FadeOutMusic,到绝对没有用。它告诉我音乐正在加载,它告诉我它正在播放。我在 VC 2013 中使用 Windows 8.1 64 位。
代码:
SDL_Init(SDL_INIT_EVERYTHING);
// Create window
Mix_Init(MIX_INIT_MP3 | MIX_INIT_OGG | MIX_INIT_FLAC | MIX_INIT_FLUIDSYNTH | MIX_INIT_MOD | MIX_INIT_MODPLUG);
if (Mix_OpenAudio(22050, MIX_DEFAULT_FORMAT, 2, 4096)) {
printf("Unable to open audio!\n");
ovr_Shutdown();
SDL_Quit();
exit(1);
}
music = Mix_LoadMUS(tmpLoc);
if (music == NULL) SDL_ShowSimpleMessageBox(NULL, "", "Music is null", window);
Mix_PlayMusic(music, -1,1000);
if (!Mix_PlayingMusic()) SDL_ShowSimpleMessageBox(NULL, "", "No music playing", window);
// OpenGL stuff
while (quit == false)
{
// Loop
}
Mix_HaltMusic();
Mix_FreeMusic(music);
Mix_CloseAudio();
Mix_Quit();
SDL_DestroyWindow(window);
SDL_Quit();
return 0;
【问题讨论】: