オーディオデバイスの初期化にはMix_OpenAudio()を使う。ヘッダでの定義は次の通り。
/* Open the mixer with a certain audio format */ extern DECLSPEC int SDLCALL Mix_OpenAudio(int frequency, Uint16 format, int channels, int chunksize);
frequencyはサンプリング周波数。formatは8bitとか16bitとかの波形フォーマット。channnelsはチャンネル数。1がモノラルで2がステレオ。chunksizeはバッファサイズ。
ヘッダには各パラメータのデフォルトの値が定義されていて次の通り。
#define MIX_DEFAULT_FREQUENCY 22050 #if SDL_BYTEORDER == SDL_LIL_ENDIAN #define MIX_DEFAULT_FORMAT AUDIO_S16LSB #else #define MIX_DEFAULT_FORMAT AUDIO_S16MSB #endif #define MIX_DEFAULT_CHANNELS 2
22050Hzで16bit符号ありのステレオ。
サンプルでは次の通り。
Mix_OpenAudio(11025, AUDIO_U8, 1, 512);
サンプリング周波数が11025Hzで8bit符号なし。モノラルでバッファサイズは512。
オーディオデバイスの終了は Mix_CloseAudio()を使う。
Mix_CloseAudio();