|
Windows环境下的麦克风录音系统(8) struct wavehdr_tag * lpNext; DWORD reserved; } WAVEHDR; 相关消息 MM_WIM_OPEN:打开设备时消息,在此期间我们可以进行一些初始化工作 MM_WIM_DATA:当缓存已满或者停止录音时的消息,处理这个消息可以对 缓存进行重新分配,实现不限长度录音 MM_WIM_CLOSE:关闭录音设备时的消息。 5. Multimedia File I/O Multimedia File I/O APIs是Microsoft提供的另外一套强大的针对媒体文件I/O的API,我们知道许多像MediaPlay,RealOne这样的多媒体程序对媒体文件的读写性能要求很高,它们几乎要求实时的将磁盘上的媒体文件以流的形式读入,但是对于一般的文件I/O形式如图1:  图7
1.文件从磁盘上被读入操作系统的File I/O的buffer; 2.然后拷贝到应用程序自己的buffer中; 3.应用程序这时候才能读取文件内容. 上述的过程对于多媒体应用程序来说是低效的而且浪费宝贵的内存资源,如果文件和大的话势必还要采取分段读取等机制,Multimedia File I/O采取了一种直接存取机制(如图2),使得应用程序可以直接读取操作系统的File I/O buffer,大大提高了效率.后面我们会利用此套API实现录音文件的存储. 
|