录音,然后保存成wave格式。录音时,将数据暂时写到内存快上(使用WAVEHDR结构)再写成wave文件时,wave头格式中的裸数据使用来自WAVEHDR.lpData的数据,wave头格式中的data段的数据长度用来自WAVEHDR.dwBufferLength的数据的数据,wave头格式中的header段的文件长度("RIFF"标志后)使用WAVEHDR.dwBufferLength+44-8,(其他方面的格式没问题已确定没问题)。通过以上方法写出来的wave文件,播放器不支持(也就是格式错误了),但是不知道错在哪里?希望高手出马。
WAVEHDR.lpData长度不一定是18,还要加上WAVEFORMATEX结构中的cbSize
4x = 8+12+WAVEHDR.lpData长度+8
前提,只有fmt和Data在Riff结下
录制音乐结束,保存wave时,如何指定其声道(如保存为左声道,或右声道)