キャプチャしながら再生するプログラムの作成(1)

公開:2012-10-15 21:15
更新:2020-02-15 04:37
カテゴリ:wasapi,c++,desktop,audio,windows,javascript,音楽・動画,windows api

キャプチャしながらWAVファイルを再生するプログラムをきちんと作っていく。

今日は今までのコードでIMMDeviceを使っていたところをWinRTの同等クラス(Windows::Devices::Enumeration::DeviceInformationとか)に置き換えたり、スマートポインタをWRLのComPtrに置き換えてみたりした。Windows Store Appを作りかけたときに書いたコードもあるのでそれを修正して取り込んだりもしている。

しかしながら今日の修正でさらに不安定なものになり、再生すらできないほどになってしまった。std::atomicやboost::lockfreeとかを使ってできる限り排他制御を使わないでバッファの読み書きを行っているつもりなのだがそのあたりがちゃんと動作しない。ひょっとすると今まで偶然動いていただけかもしれない。