BGM追加

CoreAudioラッパーの実装もひとまず終わったのでaction_gameの作成に戻りました。
久々にHamigaki.Audioを弄ったことですし、BGMをつけてみました。
今日の差分


BGMを再生しているのはこの部分です。

// メンバ変数
::HWND handle_;
audio::direct_sound_device dsound_;
audio::background_player bgm_;

void play_bgm()
{
    audio::vorbis_file_source vf("bgm.ogg");

    const audio::vorbis_info& info = vf.info();
    audio::pcm_format fmt;
    fmt.type = audio::int_le16;
    fmt.channels = info.channels;
    fmt.rate = info.rate;

    dsound_.set_cooperative_level(handle_, ds::priority_level);
    dsound_.format(fmt);

    bgm_.open(
        io_ex::repeat(vf, -1), // 無限ループ
        audio::widen<float>(dsound_.create_buffer(fmt))
    );
    bgm_.play();
}

これだけでBGM再生が出来ます。
なお、このままだとイントロ部分までループされるので微調整が必要です。


今日はサンプルBGMの準備の方が時間かかってます。
曲はかえるのうたイージーリスニングバージョンです。
SingerSongWriterでEZアレンジしただけですけど。