C++语言程序能让电脑直发出特定频率的声音吗?
答案:2 悬赏:60 手机版
解决时间 2021-11-07 17:01
- 提问者网友:动次大次蹦擦擦
- 2021-11-06 22:28
C++语言程序能让电脑直发出特定频率的声音吗?
最佳答案
- 五星知识达人网友:一袍清酒付
- 2021-11-06 23:21
beep() 可以发出特定频率的声音,用电脑内的“蜂鸣器”发音,不能设置音量。
#include
#include
#include
main()
{
Beep(523,500);Beep(587,500);Beep(659,500);Beep(698,500);Beep(784,500);
Beep(880,500);Beep(980,500);Beep(1060,500);
Sleep(500);
Beep(523,500);Beep(587,500);
Beep(659,500);Beep(698,500);Beep(784,500);
}
---
播放 wav音乐, avi 可以直接调用函数。VC++ 编译器 带有相应的库。
例如 avi:
#include
#pragma comment (lib, "Vfw32.lib")
h_wnd2 = MCIWndCreate(hwnd,NULL,0,"sylvtwt.avi");
MCIWndPlay(h_wnd2);
播放 wav音乐:
#include
#pragma comment (lib, "winmm.lib")
PlaySound (TEXT("D:\\xyz\\zzd.wav"), NULL, SND_ASYNC | SND_NODEFAULT);
===
MP3格式 要自己解码。追问谢谢您的回复~
是这样,我想实现这样一个程序:就是按下键盘上的一个键发出一个音(dol, re, mi,fa...),就像键盘钢琴一样。
那如果Beep只能这样的话,我难道只能每一个音录一个wav文件然后按一个键播放一下播放吗...?这样会不会反应太慢了呀?
我看有的地方说Windows自带一个4M的MIDI音色库,那要怎么能通过C++或者是C语言来发送MIDI消息给MIDI设备让它发出声音呢?
#include
#include
#include
main()
{
Beep(523,500);Beep(587,500);Beep(659,500);Beep(698,500);Beep(784,500);
Beep(880,500);Beep(980,500);Beep(1060,500);
Sleep(500);
Beep(523,500);Beep(587,500);
Beep(659,500);Beep(698,500);Beep(784,500);
}
---
播放 wav音乐, avi 可以直接调用函数。VC++ 编译器 带有相应的库。
例如 avi:
#include
#pragma comment (lib, "Vfw32.lib")
h_wnd2 = MCIWndCreate(hwnd,NULL,0,"sylvtwt.avi");
MCIWndPlay(h_wnd2);
播放 wav音乐:
#include
#pragma comment (lib, "winmm.lib")
PlaySound (TEXT("D:\\xyz\\zzd.wav"), NULL, SND_ASYNC | SND_NODEFAULT);
===
MP3格式 要自己解码。追问谢谢您的回复~
是这样,我想实现这样一个程序:就是按下键盘上的一个键发出一个音(dol, re, mi,fa...),就像键盘钢琴一样。
那如果Beep只能这样的话,我难道只能每一个音录一个wav文件然后按一个键播放一下播放吗...?这样会不会反应太慢了呀?
我看有的地方说Windows自带一个4M的MIDI音色库,那要怎么能通过C++或者是C语言来发送MIDI消息给MIDI设备让它发出声音呢?
全部回答
- 1楼网友:过活
- 2021-11-07 00:04
一般的声音文件都是转成WAV再用API函数PlaySound放出来的.自己控制显卡发声比较难吧.我也不会.
很多游戏的发音都是通过不停播放WAV来实现的.经常放的声音可以整个文件读入内存,再用PlaySound放.追问谢谢回复~
我看有的地方说Windows自带一个4M的MIDI音色库,那要怎么能通过C++或者是C语言来发送MIDI消息给MIDI设备让它发出声音呢?
很多游戏的发音都是通过不停播放WAV来实现的.经常放的声音可以整个文件读入内存,再用PlaySound放.追问谢谢回复~
我看有的地方说Windows自带一个4M的MIDI音色库,那要怎么能通过C++或者是C语言来发送MIDI消息给MIDI设备让它发出声音呢?
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯