SDL_AudioStatus SDL_GetAudioDeviceStatus(SDL_AudioDeviceID dev)
dev | SDL_OpenAudioDevice()で開いたオーディオデバイスのID |
void printStatus(SDL_AudioDeviceID dev)
{
switch (SDL_GetAudioDeviceStatus(dev))
{
case SDL_AUDIO_STOPPED: printf("停止中¥n"); break;
case SDL_AUDIO_PLAYING: printf("再生中¥n"); break;
case SDL_AUDIO_PAUSED: printf("一時停止中¥n"); break;
default: printf("???"); break;
}
}
// デバイスは一時停止から始まる
SDL_AudioDeviceID dev;
dev = SDL_OpenAudioDevice(NULL, 0, &desired, &obtained, 0);
if (dev != 0)
{
printStatus(dev); // 「一時停止中」が表示される
SDL_PauseAudioDevice(dev, 0);
printStatus(dev); // 「再生中」が表示される
SDL_PauseAudioDevice(dev, 1);
printStatus(dev); // 「一時停止中」が表示される
SDL_CloseAudioDevice(dev);
printStatus(dev); // 「停止中」が表示される
}