如何在VC++程序中编代码播放声音?有好几十个小声音文件,如何把他们弄到内存中,这样反复调用能快些?

如何在VC++程序中编代码播放声音?有好几十个小声音文件,如何把他们弄到内存中,这样反复调用能快些?,第1张

两种方法啊:

一种是播放wave文件声音,这个很简单,可以用api函数PlaySound,但是wave声音有个缺点就是不能覆盖播放,就是只能一次播放一个声音文件,停下来后才能播放其他声音

同时可以把wave文件作为资源文件,也就弄到了内存里面了

第二种方法使用MIDI接口播放MIDI声音,不过这个播放起来比较复杂,你可以在网上搜到大量的代码,这个有点是可覆盖播放,并且MIDI音乐文件占的空间特别小,这个但不能放入内存中,只能随文件一起存放在相应位置

至于反复调用,这些函数都提供了响应的参数,可以去msdn中搜到。

还有不明白的可以call我

在头文件里加上

#pragma comment(lib, "winmm.lib")

或者用ls的方法也可以

导入winmm.lib库,有了它才可以支持对windows 多媒体的编程.

谁说没人说话啊?

设单击Command1时发出频率为500㎐,持续时间为1秒的声音。代码如下。

------------------------------------

Private Declare Function Beep Lib "kernel32" (ByVal dwFreq As Long, ByVal dwDuration As Long) As Long

Private Sub Command1_Click()

Beep 500, 1000 '500表示频率,单位为㎐;1000表示持续时间,单位为㎳。

End Sub

-------------------------------------

绝对可以使用。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11562351.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-17
下一篇 2023-05-17

发表评论

登录后才能评论

评论列表(0条)

保存