当应用程序在Windows上调用waveOutWrite(HWAVEOUT hwo, LPWAVEHDR pwh, UINT cbwh)
时,我会保存一份发送到内存中音频卡的音频数据(由pwh-> lpData指向)。
现在我想将音频数据保存为磁盘上的WAV格式文件,我该怎么做?
我有指向音频数据块的指针和音频数据的大小。
答案 0 :(得分:2)
wav格式为pretty trivial,并且很容易编写自己的实现。或者,您可以使用libsndfile等库。
答案 1 :(得分:0)
使用传统多媒体API,您将使用mmioOpen
,mmioCreateChunk
,mmioWrite
系列函数。以下是代码段:WAV saving?。 API允许您编写这些RIFF文件,但结构不是那么复杂,您可以直接写入二进制文件。
仍然是WinAPI,但与waveOutWrite