DoubleLi

qq: 517712484 wx: ldbgliet

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

2017年5月10日

摘要: Windows录音API学习笔记 结构体和函数信息 结构体 WAVEINCAPS 该结构描述了一个波形音频输入设备的能力。 typedef struct { WORD wMid; 用于波形音频输入设备的设备驱动程序制造商标识符。 WORD wPid; 声音输入设备的产品识别码。 MMVERSION  阅读全文
posted @ 2017-05-10 11:19 DoubleLi 阅读(2007) 评论(0) 推荐(0)

摘要: 写在前面 一开始是打算用这个老接口做讯飞语音识别的程序,在转移到UWP时发现,这玩意在Windows Runtime中屏蔽(弃用)了,将来会更新使用WASAPI的程序 WaveRecorder类代码下载地址 录音无非两种需求: 1. 非实时获得音频,也就是停止录音了你才需要处理它; 2. 实时获取音 阅读全文
posted @ 2017-05-10 11:17 DoubleLi 阅读(2840) 评论(0) 推荐(0)

摘要: 对于常见的音频播放,使用XAudio2足够了。 时间是把杀猪刀,滑稽的是我成了猪 早在Windows Vista中,M$推出了新的音频架构UAA,其中的CoreAudio接替了DSound、WaveXxx、MediaFundation,通过Core Audio APIs,Windows的音频性能可以 阅读全文
posted @ 2017-05-10 11:14 DoubleLi 阅读(6814) 评论(0) 推荐(0)

摘要: XAudio2 是一个跨平台的API,在Xbox 360及Windows中得到支持。在Xbox 360上, XAudio2作为一个静态库编译到游戏可执行文件中。在Windows上,XAudio2提供一个动态链接库(DLL)。以下例子只使用了其中的一部分功能,并不全面。详情请看微软技术页的XAudio 阅读全文
posted @ 2017-05-10 11:11 DoubleLi 阅读(2456) 评论(0) 推荐(0)

摘要: 在用解码器解码音频数据得到PCM音频数据块之后,可以在将数据送给声卡播放之前调节其音量大小,具体的实现函数如下: [cpp] view plain copy void RaiseVolume(char* buf, UINT32 size, UINT32 uRepeat, double vol)//b 阅读全文
posted @ 2017-05-10 09:28 DoubleLi 阅读(3962) 评论(0) 推荐(0)

摘要: 与上一篇的“C++ 播放音频流(PCM裸流)” 点击打开链接 相对应,本篇是关于用C++实现录音功能的。同样是直接建一个win32控制台程序然后将代码拷过去改个文件名就可以用,也可以下载本人上传的相关工程,这个工程是用VS2013写的,如果是较低的版本就呵呵了。点击打开链接 代码部分如下: [cpp 阅读全文
posted @ 2017-05-10 09:25 DoubleLi 阅读(6615) 评论(0) 推荐(0)

摘要: 直接上代码,如果有需要可以直接建一个win32控制台程序然后将代码拷过去改个文件名就可以用了(注意将声道和频率与你自己的文件对应)。当然我自己也用VS2008写了个例子上传了,如果有需要下载地址如下:点击打开链接。 这份代码是打开文件截取一段数据然后播放的,可以轻松的经过加一条线程的方式改成网络传输 阅读全文
posted @ 2017-05-10 09:16 DoubleLi 阅读(1201) 评论(0) 推荐(0)

摘要: 直接上代码,如果有需要可以直接建一个win32控制台程序然后将代码拷过去改个文件名就可以用了(注意将声道和频率与你自己的文件对应哦)。当然我自己也用VS2008(VS2013好用太多,强烈推荐还是用VS2013,只是它的工程太大,上传起来相当费劲,所以还是用VS2008重写了。。)写了个例子上传了, 阅读全文
posted @ 2017-05-10 09:04 DoubleLi 阅读(3839) 评论(0) 推荐(0)