基于VC的声音文件操作(三)
(四)VC中相关的操作
1.mmioOpen
打开一个文件
Syntax
MMIO mmioOpen( LPTSTR szFilename, LPMMIOINFO lpmmioinfo, DWORD dwOpenFlags );
Parameters
- szFilename
- 打开的文件名称
- lpmmioinfo
指向mmioinfo的指针
- dwOpenFlags
MMIO_READ, MMIO_WRITE, and MMIO_READWRITE
Return value
成功返回句柄
2.mmioClose
本函数关闭一个使用mmioOpen函数打开的文件
Syntax
Parameters
- hmmio
-
要关闭的文件的文件句柄
- wFlags
-
标识关闭操作
Return value
成功返回0
3.mmioRead
本函数从一个使用mmioOpen打开的文件中读取指定数量的字节
Syntax
LONG mmioRead( HMMIO hmmio, HPSTR pch, LONG cch );
Parameters
- hmmio
-
文件句柄,被读取的文件的句柄
- pch
-
指向一个缓冲区,包含/存放从文件读取的数据
- cch
-
要从文件读取的字节数
Return value
返回实际读取的字节数.如果已经到达文件尾并且没有更多的字节可供读取,返回值为0,如果从文件读取时发生错误,返回值为-1;
4.mmioCreateChunk
本函数在一个通过mmioOpen函数打开的RIFF文件中建立一个块。
MMRESULT mmioCreateChunk(HMMIO hmmio, LPMMCKINFO lpck,UINT wFlags);
Parameters
hmmio
打开的RIFF文件的文件句柄。
lpck
指向一个缓冲区,接收一个MMCKINFO结构包含的信息,关于这个被创建的块。
wFlags
Flags识别什么类型的块要被创建,List or Riff.
Return Values
如果成功,返回MMSYSERR_NOERROR,否则将包含后面的这些可能的错误值。
5.mmioFlush
本函数写一个文件的I/O缓冲区到磁盘
Syntax
MMRESULT mmioFlush( HMMIO hmmio, UINT fuFlush );
Parameters
- hmmio
- 使用mmioopen打开的文件句柄,
- fuFlush
-
Flag决定如何输出
Return value
成功返回0
6.mmioFOURCC
这个宏转换四个字符到一个四字符代码
版权申明:本站文章均来自网络,如有侵权,请评论 ,收到后立即删除,谢谢!
基于VC的声音文件操作(三)的更多相关文章
- 基于VC的声音文件操作(二)
(二)VC的声音操作 操作声音文件,也就是将WAVE文件打开获取其中的声音数据,根据所需要的声音数据处理算法,进行相应的数学运算,然后将结果重新存储与WAVE格式的文件中去:可以使用CFILE类来实现 ...
- 基于VC的声音文件操作(四)
(五)读取wav的实例 跟据WAVE文件的格式,实现了读取双声道立体声数据的例子如下: BYTE * GetData(Cstring *pString) //获取声音文件数据的函数,pString参数 ...
- 基于VC的声音文件操作(一)
(一)文件格式 1.RIFF文件结构和WAVE文件格式 Windows支持两种RIFF(Resource Interchange File Format,"资源交互文件格式")格式 ...
- 基于VC的声音文件操作(五)
(六)读取波形文件的实例 1.打开文件后,可通过HMMO句柄获得文件中的波形部份:MMCKINFO mmckinfo;mmckinfo.fccType = mmioFOURCC('W','A','V' ...
- Python 函数基础、有序集合、文件操作(三)
一.set 特点: set是一个无序且不重复的元素集合访问速度快:天生解决元素重复问题 方法: 初始化 >>> s1 = set()>>> print(type(s ...
- python学习笔记之文件操作(三)
这篇博客小波主要介绍一下python对文件的操作 对文件的操作主要分为三步: 1.打开文件获取文件的句柄,句柄也是文件描述符 2.通过文件句柄操作文件 3.关闭文件. 现有以下文件,是小波随写的周杰伦 ...
- Python 文件操作三
文件重命名os模块中的rename()可以完成对文件的重命名操作rename(需要修改的文件名, 新的文件名) import os os.rename("11.txt", &quo ...
- C#中基于流的XML文件操作笔记
System.Xml.XmlReader和System.Xml.XmlWriters是两个抽象类,XmlReader提供了对于XML数据的快速,非缓存,只进模式的读取器,XmlWriter表示一个编写 ...
- PHP文件操作(三)-文件的写入
fwrite() //对文件进行写入 fwrite(file,string,length)file:必选项,需要写入的文件string:必选项,规定要写入文件的字符串length:可选项,规定要写入 ...
随机推荐
- Android BaseAdapter的使用
数据适配器有很多种,今天在这里记录一下最通用是适配器BaseAdapter. 首先说一下什么是适配器,这里我从网上找到一幅图片 由上图我们不难看出,所谓的适配器,就是数据与视图之间的桥梁.由它把数据绑 ...
- SQL笔记-第三章,数据的增删改
1.数据的插入 简单的INSERT语句 INSERT INTO T_Person(FName,FAge,FRemark) VALUES(‘Tom’,18,’USA’) 简化的INSERT语句(只对部分 ...
- C语言的time.h解释python的time
clock_t clock(void),对比python的clock() 返回程序执行的时间,clock_t的实际类型是long #include<Windows.h> Sleep(); ...
- ORACLE 回收站导致的故障
ORACLE 回收站导致的故障 一.故障 (1)现象 一个生产环境,oracle数据库挂死,严重影响生产.查死锁sql,发现大量日志插入语句,并且每条运行时间都超过一分钟,插入非常缓慢.据分析 ...
- FTP\TFTP
FTP是文件传输协议的英文简写. FTP 文件传输协议 基于TCP,20和21端口. TFTP 简单文件传输协议,基于UDP,69 只能传输32Mb以下文件,不需要提供账号和密码.tftp xxx.x ...
- 关于Android开发手机连接不上电脑问题解决方案
1.当然首先你得将手机里的usb debug选项选上,否则lsusb是不会有你的设备的2. lsusb 查看usb设备id3. sudo vim /etc/udev/rules.d/51-androi ...
- ajax请求后根据条件进行页面跳转
$.ajx({ url: "@Url.Action("DetectCorporationCompetencyCreated", "DataBase") ...
- LESS与SASS的伯与仲
工作中用到了Bootstrap,涉及到了LESS,对其做了一个简单的了解,CSS的预处理器使用最广泛的就是LESS和Sass,都是努力把CSS武装成为开发语言,让它从简单的描述性语言过渡到具有程序式特 ...
- cocos2d-x 坐标系
OPenGL坐标系:原点为屏幕左下角 屏幕坐标系:原点在屏幕左上角
- sql server 2008 express 使用ip登陆 error:40 错误:2
如图 更好的方法是将IPAll中的TCP端口设置为1433.