首先我要告诉你的是:我也没实际弄过Wave文件,更不清楚真正的格式。我如下办法只是猜测:1、时间定位:Wave的采样率有11KHz、22KHz、44KHz。那么每11K、22K、44K个字(注意!不是字节)就是一秒的声音。2、格式:我所知道的Wave格式是这样的(以前弄过)。立体声:Type SSound16
RD As Integer
LD As Integer
End TypeType SSound8
RD As Byte
LD As Byte
End Type单声道Type MSound16
MD As Integer
End TypeType MSound8
MD As Byte
End Type目前的难点是我还不清楚WAVE的文件头格式。你可以去找类似的资料。把其中一段音乐的字抓出来,配上新的文件头然后存为一个临时文件就可以用MediaPlay播放了。这仅仅是我想出来的一个很笨蛋的办法。DirectX里有DirectSound和DirectMusic的一些API。你可以去多媒体开发以及游戏论坛里向懂得DirectX的人请教。DirectX虽然多是在VC里应用,但是VB里也可以用,不过方式上有点小小的区别。
RD As Integer
LD As Integer
End TypeType SSound8
RD As Byte
LD As Byte
End Type单声道Type MSound16
MD As Integer
End TypeType MSound8
MD As Byte
End Type目前的难点是我还不清楚WAVE的文件头格式。你可以去找类似的资料。把其中一段音乐的字抓出来,配上新的文件头然后存为一个临时文件就可以用MediaPlay播放了。这仅仅是我想出来的一个很笨蛋的办法。DirectX里有DirectSound和DirectMusic的一些API。你可以去多媒体开发以及游戏论坛里向懂得DirectX的人请教。DirectX虽然多是在VC里应用,但是VB里也可以用,不过方式上有点小小的区别。
解决方案 »
- 关于sndPlaySound的问题
- 如何做文件下载进度条?(用http方法)
- 登录服务器数据库的问题
- vb开发控件放到IE中,如何做到控件改动后网页自动下载自动升级且只下载升级一次?
- 请问什么是帐套?
- 关于VB串口通讯使用MSCOMM控件的问题,希望各位高手前来帮忙。。。。。。
- 我怎么才能得到域名下的计算机名?
- 如何使textbox中选中的文本变字体!
- 句柄问题!高手请进!100分送上!
- 谁有每条程序都加中文注释的源代码。(让我学习学习)
- 为何结果集可以显示但不能修改,系统提示只读,给分
- vb,水晶8.0 用ODBC做数据源,做好的报表安装到其他的计算机上,安装路经改变了,就出ODBC PATH错误.详细情进
这就什么代码都不用写了