Windows PCM音频捕获与播放实现
使用waveOutGetNumDevs和waveOutGetDevCaps来获取波形输出设备的个数和能力。只有在确定设备存在之后,才可以打开设备、使用设备。
|
waveInGetNumDevs |
返回系统中存在的波形输入设备的数量 |
|
waveInAddBuffer |
向波形输入设备添加一个输入缓冲区 |
|
waveInGetDevCaps |
查询指定的波形输入设备以确定其性能 |
|
waveInGetErrorText |
检取由指定的错误代码标识的文本说明 |
|
waveInGetID |
获取指定的波形输入设备的标识符 |
|
waveInGetPosition |
检取指定波形输入设备的当前位置 |
|
waveInMessage |
发送一条消息给波形输入设备的驱动器 |
|
waveInOpen |
为录音而打开一个波形输入设备 |
|
waveInPrepareHeader |
为波形输入准备一个输入缓冲区 |
|
waveInStart |
启动在指定的波形输入设备的输入 |
|
waveInReset |
停止给定的波形输入设备的输入,且将当前位置清零 |
|
waveInStop |
停止在指定的波形输入设备上的输入 |
|
waveInUnprepareHeader |
清除由waveInPrepareHeader函数实现的准备 |
|
WaveInClose |
关闭指定的波形输入设置 |
|
waveOutBreakLoop |
中断给定的波形输出设备上一个循环,并允许播放驱动取列表中的下一个块 |
|
waveOutClose |
关闭指定的波形输出设备 |
|
waveOutGetDevCaps |
查询一个指定的波形输出设备以确定其性能 |
|
waveOutGetErrorText |
检取由指定的错误代码标识的文本说明 |
|
waveOutGetID |
检取指定的波形输出设备的标识符 |
|
waveOutGetNumDevs |
检取系统中存在的波形输出设备的数量 |
|
waveOutGetPitch |
查询一个波形输出设备的当前音调设置 |
|
waveOutGetPlaybackRate |
查询一个波形输出设备当前播放的速度 |
|
waveOutGetPosition |
检取指定波形输出设备的当前播放位置 |
|
waveOutGetVolume |
查询指定波形输出设备的当前音量设置 |
|
waveOutMessage |
发送一条消息给一个波形输出设备的驱动器 |
|
waveOutOpen |
为播放打开一个波形输出设备 |
|
waveOutPause |
暂停指定波形输出设备上的播放 |
|
waveOutPrepareHeader |
为播放准备一个波形缓冲区 |
|
waveOutRestart |
重新启动一个被暂停的波形输出设备 |
|
waveOutSetPitch |
设置一个波形输出设备的音调 |
|
waveOutSetPlaybackRate |
设置指定波形输出设备的速度 |
|
waveOutSetVolume |
设置指定的波形输出设备的音量 |
|
waveOutUnprepareHeader |
清除由waveOutPrepareHeader函数实现的准备 |
|
waveOutWrite |
向指定的波形输出设备发送一个数据块 |
Windows PCM音频捕获与播放实现的更多相关文章
- Windows 下音频数据采集和播放
音频操作所需头文件和链接库 #include<mmsystem.h>#include<mmreg.h>#pragma comment(lib, "winmm.lib ...
- 使用AudioTrack播放PCM音频数据(android)
众所周知,Android的MediaPlayer包含了Audio和video的播放功能,在Android的界面上,Music和Video两个应用程序都是调用MediaPlayer实现的.MediaPl ...
- 使用WindowsAPI实现播放PCM音频的方法
这篇文章主要介绍了使用WindowsAPI实现播放PCM音频的方法,很实用的一个功能,需要的朋友可以参考下 本文介绍了使用WindowsAPI实现播放PCM音频的方法,同前面一篇使用WindowsAP ...
- AudioRecord 录制播放PCM音频
AudioRecord 与 MediaRecorder 区别 AudioRecord 基于字节流录制,输出的是pcm数据,未进行压缩,直接保存的pcm文件不能被播放器识别播放. 可以对音频文件进行实时 ...
- 简单实用的PCM音频播放器--沉寂几年之后回归的第一份笔记
---恢复内容开始--- PCM音频网络流播放,至于用处,就不多解释了. 一个简单的类,基于NAudio,一个简单的拼装类,实例化时三个参数,依次是采样率,系统播放设备Index,播放声道,调用Pla ...
- 视音频数据处理入门:PCM音频采样数据处理
===================================================== 视音频数据处理入门系列文章: 视音频数据处理入门:RGB.YUV像素数据处理 视音频数据处理 ...
- Android OpenSL ES 开发:Android OpenSL 录制 PCM 音频数据
一.实现说明 OpenSL ES的录音要比播放简单一些,在创建好引擎后,再创建好录音接口基本就可以录音了.在这里我们做的是流式录音,所以需要用至少2个buffer来缓存录制好的PCM数据,这里我们可以 ...
- Android OpenSL ES 开发:OpenSL ES利用SoundTouch实现PCM音频的变速和变调
缘由 OpenSL ES 学习到现在已经知道 OpenSL ES 不仅能播放和录制PCM音频数据,还能改变声音大小.设置左声道或右声道播放.还能变速播放,可谓是播放音频的王者.但是变速有一点不好的就是 ...
- C++ 调节PCM音频音量大小
在用解码器解码音频数据得到PCM音频数据块之后,可以在将数据送给声卡播放之前调节其音量大小,具体的实现函数如下: void RaiseVolume(char* buf, UINT32 size, UI ...
随机推荐
- ios输出想保留的整数位(占位符)
int startHour=5; int startMinute=4; //输出前面补0,不管你输入的数据前面有没有0 sp;NSLog(@"====>%@",[NSStri ...
- ArcGIS API for js InfoWindow
说明:有关该示例中怎么引用部署在iis上的离线arcgis api请参考我前面的博文 1.运行效果 2.HTML代码 <!DOCTYPE html> <html> <he ...
- 在安装mysql数据库的过程中,显示msvcp100.dll丢失?则么办?
方案一:重装操作系统为windows10专业版 方案二:问题: 解答: 报错原因是VC运行库不全或者没有安装导致,百度搜索VC集合下载安装, 链接:https://pan.baidu.com/s/1U ...
- Python菜鸟之路:Python基础-Socket基础-1
预热知识 OSI 七层模型 谈到TCP/IP,就不得不说OSI七层模型,OSI 是国际标准化组织(ISO)和国际电报电话咨询委员会(CCITT)联合制定的开放系统互连参考模型,为开放式互连信息系统提供 ...
- nginx 基础配置详解
#本文只对nginx的最基本配置项做一些解释,对于配置文件拆分管理,更详细的集群健康检查的几种方式,检查策略等在此不做详细解释了. #运行用户user nobody;#启动进程,通常设置成和cpu的数 ...
- pip-grep
Pip-pop pip-grep主要是用于方便查看Requirements.txt中那些模块是安装了的.也就是通过输入的然后模块名称然后在Requirements.txt中进行查询.里面比较难的就是d ...
- 使用asn1tools进行asn1编解码
最近在做3GPP的编解码,发现有两个第三方库比较好用.一个是ASN1C(c语言编译环境),一个是python第三方库asn1tools.这里介绍下asn1tools的使用方法: 1 第一步:生成asn ...
- 第一个Spring Boot程序启动报错了(番外篇)
Spring Boot内嵌了一个容器,我可以不用吗?我能不能用外部的容器呢? 当然是可以的! 然后,下面代码在pom文件中一定要有哦! <dependency> <groupId&g ...
- mysql 导入数据是报错:2006 - MySQL server has gone away
导SQL数据库结构+数据时,如果数据是批量插入的话会报错:2006 - MySQL server has gone away. 解决办法:找到你的mysql目录下的my.ini配置文件,加入以下代码 ...
- 忘记apple id如何更新应用?
最近ytkah的app有很多更新提示,之前注册的apple id好久没登录了,突然提示说登录需要验证安全问题,哪还记得噢,最要命的是邮箱收到的加密邮件也需要验证.重新注册一个吧,这次要注意保存相关信息 ...