目次 - 4.関数 - 4.1一般 - Mix_QuerySpec

Mix_QuerySpec

int Mix_QuerySpec(int *frequency, Uint16 *format, int *channels)

frequency
デバイスが使用中の周波数を代入するint型変数へのポインタ
format
デバイスが使用中の形式を代入するUint16型変数へのポインタ
channels
デバイスが使用中のチャネル数を代入するint型変数へのポインタ. 2のときステレオ, 1のときモノラル

開かれたデバイスの現在の出力形式を得る. これらはMix_OpenAudioに渡した値と同じことも違うこともある.

戻り値: 失敗のとき0を戻す. もしデバイスが何度も開かれたならば, その回数を戻す. 失敗の場合は値は設定されない.

サンプルコード

// 使用中のオーディオ形式を獲得し表示する
int numtimesopened, frequency, channels;
Uint16 format;
numtimesopened=Mix_QuerySpec(&frequency, &format, &channels);
if(!numtimesopened) {
    printf("Mix_QuerySpec: %s\n",Mix_GetError());
}
else {
    char *format_str="不明";
    switch(format) {
        case AUDIO_U8: format_str="8bit符号なし"; break;
        case AUDIO_S8: format_str="8bit符号あり"; break;
        case AUDIO_U16LSB: format_str="16bit符号なしリトルエンディアン"; break;
        case AUDIO_S16LSB: format_str="16bit符号ありリトルエンディアン"; break;
        case AUDIO_U16MSB: format_str="16bit符号なしビッグエンディアン"; break;
        case AUDIO_S16MSB: format_str="16bit符号ありビッグエンディアン"; break;
    }
    printf("開いた回数=%d times  周波数=%dHz  形式=%s  チャネル数=%d",
            numtimesopened, frequency, format_str, channels);
}

参照

Mix_OpenAudio

原文へのリンク

4.1.8 Mix_QuerySpec