社区
资源
帖子详情
一个简单的问题,录音的api是什么呀
sealaugh1980
2003-08-21 03:10:14
我现在正在用vc做程序,想实现录音功能,就是用声卡的mic实现录音,但不知录音的api是什么,请知情者告诉我,不胜感激,100分奉上!!
...全文
120
9
打赏
收藏
一个简单的问题,录音的api是什么呀
我现在正在用vc做程序,想实现录音功能,就是用声卡的mic实现录音,但不知录音的api是什么,请知情者告诉我,不胜感激,100分奉上!!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
tanyaliji
2003-08-27
打赏
举报
回复
MCI_RECORD_PARMS RecordParms;
mciSendCommand (m_wDeviceID, MCI_RECORD,NULL, (DWORD)(LPVOID)&RecordParms);
homey123
2003-08-26
打赏
举报
回复
http://www.vckbase.com/code/listcode.asp?mclsid=7&sclsid=707
homey123
2003-08-26
打赏
举报
回复
waveInAddBuffer 向波形输入设备添加一个输入缓冲区
WaveInClose 关闭指定的波形输入设置
waveInGetDevCaps 查询指定的波形输入设备以确定其性能
waveInGetErrorText 检取由指定的错误代码标识的文本说明
waveInGetID 获取指定的波形输入设备的标识符
waveInGetNumDevs 返回系统中存在的波形输入设备的数量
waveInGetPosition 检取指定波形输入设备的当前位置
waveInMessage 发送一条消息给波形输入设备的驱动器
waveInOpen 为录音而打开一个波形输入设备
waveInPrepareHeader 为波形输入准备一个输入缓冲区
waveInReset 停止给定的波形输入设备的输入,且将当前位置清零
waveInStart 启动在指定的波形输入设备的输入
waveInStop 停止在指定的波形输入设备上的输入
waveInUnprepareHeader 清除由waveInPrepareHeader函数实现的准备
waveOutBreakLoop 中断给定的波形输出设备上一个循环,并允许播放驱动器列表中的下一个块
waveOutClose 关闭指定的波形输出设备
waveOutGetDevCaps 查询一个指定的波形输出设备以确定其性能
waveOutGetErrorText 检取由指定的错误代码标识的文本说明
waveOutGetID 检取指定的波形输出设备的标识符
waveOutGetNumDevs 检取系统中存在的波形输出设备的数量
waveOutGetPitch 查询一个波形输出设备的当前音调设置
waveOutGetPlaybackRate 查询一个波形输出设备当前播放的速度
waveOutGetPosition 检取指定波形输出设备的当前播放位置
waveOutGetVolume 查询指定波形输出设备的当前音量设置
waveOutMessage 发送一条消息给一个波形输出设备的驱动器
waveOutOpen 为播放打开一个波形输出设备
waveOutPause 暂停指定波形输出设备上的播放
waveOutPrepareHeader 为播放准备一个波形缓冲区
waveOutRestart 重新启动一个被暂停的波形输出设备
waveOutSetPitch 设置一个波形输出设备的音调
waveOutSetPlaybackRate 设置指定波形输出设备的速度
waveOutSetVolume 设置指定的波形输出设备的音量
waveOutUnprepareHeader 清除由waveOutPrepareHeader函数实现的准备
waveOutWrite 向指定的波形输出设备发送一个数据块
homey123
2003-08-26
打赏
举报
回复
录音通常都是使用 waveInXXX 一类 API 的,最主要的是 waveInStart (顾名思义就是开始录音),然后是 waveInStop(它能够在你指定的缓冲满的时候返回) ; 如果不用 waveInStop 可以使用 waveInReset(不同于Stop的是该函数不等缓冲满就马上返回那样你才可以终止录音),不过最好跟 waveInGetPosition 配合使用。
说完这些函数,不得不提的是为以上几个函数做准备工作的函数(注意配对使用), waveInOpen 和 waveInClose 配对( waveInOpen 里面指定音频的格式,比方说立体声 和16位音质等); waveInPrepareHeader 和 waveInUnprepareHeader 配对( waveInPrepareHeader 里面指定用来录音缓冲的大小和首地址),紧跟着 waveInPrepareHeader要例行公事调用 waveInAddBuffer( 作用未详,不多说了)。
详细调用过程可以看下面
之前最好调用 waveInGetNumDevs 看看有没有可用的设备)
waveInOpen (该处用 WAVEFORMATEX 结构指定音频格式)
waveInPrepareHeader (该处用 WAVEHDR 结构的 lpData 成员指定缓冲首地址)
waveInAddBuffer
waveInStart
(录制中....)
waveInStop (warning:一定要缓冲满了才返回)
waveInUnprepareHeader
waveInClose
几个重要的结构
//波形格式
typedef struct {
WORD wFormatTag; //编码格式,包括WAVE_FORMAT_PCM,WAVEFORMAT_ADPCM等,更多的音频格式在MMReg.h文件中
WORD nChannels; //声道数,Monaural用1个,stereo用2个
DWORD nSamplesPerSec; //采样频率
DWORD nAvgBytesPerSec; //每秒数据量
WORD nBlockAlign; //块对其
WORD wBitsPerSample; //Wave文件的采样大小(Bit位)
WORD cbSize;
} WAVEFORMATEX;
Windows低层波形音频数据块结构 WAVEHDR
typedef struct {
LPSTR lpData; //指向锁定的数据缓冲区的指针
DWORD dwBufferLength; //数据缓冲区的大小
DWORD dwBytesRecorded; //录音时指明缓冲区中的数据量
DWORD_PTR dwUser; //用户数据
DWORD dwFlags; //提供缓冲区信息的标志
DWORD dwLoops; //循环播放的次数
struct wavehdr_tag * lpNext; //保留
DWORD_PTR reserved; //保留
} WAVEHDR;
u2m
2003-08-25
打赏
举报
回复
wave开头的一系列函数
NeoBean
2003-08-25
打赏
举报
回复
MS Windows 提供一套低级的录音函数,你可以看看msdn关于
waveInXXXXX(...)
^^^^^功能
的介绍。
sealaugh1980
2003-08-25
打赏
举报
回复
我知道播放声音的api是PlaySound,有没有与之相对的RecordSound函数????
akiko
2003-08-21
打赏
举报
回复
MCI_RECORD_PARMS RecordParms;
mciSendCommand (m_wDeviceID, MCI_RECORD,NULL, (DWORD)(LPVOID)&RecordParms);
papaya_stone
2003-08-21
打赏
举报
回复
MSDN中查:MCI Commands
MCI_RECORD
API
实时
录音
源码-易语言
解决E不能长时间录制的
问题
html5
录音
dome.7z
HTML5 实现
录音
,然后上传到服务器”拆开来看,“HTML5 实现
录音
”&“然后上传到服务器”。上传服务器没有任何技术
问题
。主要
问题
是“HTML5能够实现
录音
FFmpeg4.3开发系列之15:同步
录音
录屏并存储或直播实战
敬告:该系列的课程在抓紧录制更新中,敬请大家关注。敬告: 该系列的课程涉及:FFmpeg,WebRTC,SRS,Nginx,Darwin,Live555,等。包括:音视频、流媒体、直播、Android、视频监控28181、等。我将带领大家一起来学习:
录音
录屏、同步机制、存储、直播推流。具体内容包括:1.FFmpeg
录音
录屏讲解及命令行实战。2.FFmpeg录屏
API
实战讲解。3.FFmpeg
录音
API
实战讲解。4.FFmpeg音视频同步
API
实战讲解。5.FFmpeg同步
录音
录屏并直播实战。 音视频与流媒体是一门很复杂的技术,涉及的概念、原理、理论非常多,很多初学者不学 基础理论,而是直接做项目,往往会看到c/c++的代码时一头雾水,不知道代码到底是什么意思,这是为什么呢? 因为没有学习音视频和流媒体的基础理论,就比如学习英语,不学习基本单词,而是天天听英语新闻,总也听不懂。所以呢,一定要认真学习基础理论,然后再学习播放器、转码器、非编、流媒体直播、视频监控、等等。 梅老师从事音视频与流媒体行业18年;曾亲手主导广电直播全套项目,精通h.264/h.265/aac,曾亲自参与百度app上的网页播放器等实战产品。目前全身心自主创业,主要聚焦音视频+流媒体行业,精通音视频加密、流媒体在线转码快编等热门产品。
qt creator项目使用原生Windows进行混声器音量设置(包括
录音
)
本人使用qt5.8,界面
简单
测试(
录音
和放音音量及静音设置),封装好了
一个
类(manager里有写),可以调节应用的混声器音量,或进行静音设置,本人测试没
问题
,如有
问题
愿深入交流及时更正。
媒体示例使用PhoneGap的*兼容的
API
:在移动设备录制和播放
介绍 设置开发环境 设计注意事项 开发和测试用于Android设备使用Eclipse和adb 调试和测试上的苹果iOS *使用Xcode IDE接口设备 遇到的
问题
资源
2,586
社区成员
18,441
社区内容
发帖
与我相关
我的任务
资源
VC/MFC 资源
复制链接
扫一扫
分享
社区描述
VC/MFC 资源
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章