目次 - API(機能別) - 再生と録音 - SDL_LoadWAV

# SDL_LoadWAV

ファイルからWAVEを読み込む

## 構文

`SDL_AudioSpec* SDL_LoadWAV(const char* file, SDL_AudioSpec* spec, Uint8** audio_buf, Uint32* audio_len)`

## 引数

file | 読み込むファイルの名前
spec | 出力形式のSDL_AudioSpec
audio_buf | 音声バッファ
audio_len | 音声バッファのバイト数

## 戻り値

この関数は呼び出しに成功すると, 元のWAVEの音声データが設定されたSDL_AudioSpecを戻す. audio_bufには音声データが確保されたバッファへのポインタが, audio_lenには音声バッファのバイト長が代入される.

WAVEファイルを開けない, 不明な形式, または壊れている場合はNULLを戻す. SDL_GetError()を呼んで詳細を知ることができる.

アプリケーションが戻されたaudio_bufを使った後は, SDL_FreeWAV()を呼んで解放する必要がある.

## サンプルコード

``

    SDL_AudioSpec wav_spec;
    Uint32 wav_length;
    Uint8 *wav_buffer;

    /* WAVを読み込む */
    if (SDL_LoadWAV("test.wav", &wav_spec, &wav_buffer, &wav_length) == NULL) {
        fprintf(stderr, "test.wavを開けなかった: %s\n", SDL_GetError());
    } else {
        /* ここでWAVを処理する. そして... */
        SDL_FreeWAV(wav_buffer);
    }

## 詳細

SDL_LoadWAV()はSDL_LoadWAV_RW()を呼び出すマクロである.

このマクロはSDL_LoadWAV_RW()をファイルI/O APIを使わずにファイル名を渡せるようにするために存在する.

## 関連項目(関数)

SDL_FreeWAV
SDL_LoadWAV_RW

## SDL Wikiへのリンク

SDL_LoadWAV - SDL Wiki