Windows でアプリケーションが呼び出さwaveOutWrite(HWAVEOUT hwo, LPWAVEHDR pwh, UINT cbwh)
れると、オーディオ カードに送信されたオーディオ データ (pw->lpData が指す) のコピーをメモリに保存します。
音声データを WAV 形式のファイルとしてディスクに保存したいのですが、どのようにすればよいですか?
オーディオ データ ブロックへのポインタとオーディオ データのサイズを取得しました。
wav 形式は非常に簡単で、独自の実装を簡単に作成できます。または、 libsndfileなどのライブラリを使用できます。
従来のマルチメディア API では、、、関数ファミリーを使用mmioOpen
しmmioCreateChunk
ますmmioWrite
。ここにコード スニペットがあります: WAV 保存? . API を使用すると、これらの RIFF ファイルを書き込むことができますが、構造はそれほど複雑ではなく、バイナリ ファイルに直接書き込むことができます。
まだ WinAPI ですが、あなたのwaveOutWrite
: