音频应用

 找回密码
 快速注册

QQ登录

只需一步,快速开始

Windows Core Audio 音频开发技术指南

查看数: 23414 | 评论数: 2 | 收藏 0
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2021-6-21 06:42

正文摘要:

  在音视频通信处理流程中,音频方面最基本的无外乎就是音频的采集和播放。windows 平台下,有很多音频采集播放的方法。作为一个 windows 端音频应用程序开发人员,经常会被各种可用的API淹没,比如 MME、Dire ...

回复

5397200 发表于 2021-6-21 06:44:37
Core Audio 使用注意事项

  3.1 windows 有着自己的计时时钟。采集过程中,由于时钟精度问题,采集 callback 的数据大小与恒定的 frameSize 有着一定的差异性。例如以 44100Hz 的采样率去采集,单位时钟内 callback 的数据大小为448,与恒定的441有差异。

  3.2 一旦采集/播放线程被 block 了,将会导致线程处理时间变长,采集/播放取出的数据会产生断裂问题。拿播放为例,用户就会听到卡顿声。

  3.3 使用 GetMixFormat方法 获取默认设备格式时,通常以 WAVEFORMATEX 的结构来指定格式。但是 WAVEFORMATEX 的结构有着一定的局限性,对于双通道以上,或者更高位深精度,或者新的压缩方案的一些设备格式,微软建议使用 WAVEFORMATEXTENSIBLE 可以获得更好的支持。由于某些设备驱动对 WAVEFORMATEX 结构和 WAVEFORMATEXTENSIBLE 结构调用 IsFormatSupported 会得到不同的结果。为了获取到可靠的设备格式,微软建议使用 IsFormatSupported 对 WAVEFORMATEX 格式和 WAVEFORMATEXTENSIBLE 格式都进行一次遍历。

  3.4 音频设备中还有一些其他设置,比如 built-in AEC。built-in AEC 是使用编解码器 DMO 接口配置附加功能,DOM 可能会影响一些设备格式的支持。

  相关引用:

  1.《Practical Digital Audio for C++ Programmers》;

  2.Core Audio APIs - Win32 apps ;

  3.Core Audio APIs - Win32 apps ;

  4.Configuring Codec DMOs - Win32 apps
音频应用搜索

QQ|小黑屋|手机版|音频应用官网微博|音频应用 ( 鄂ICP备16002437号 )

GMT+8, 2025-6-2 22:28 , Processed in 0.033716 second(s), 12 queries , Redis On.

Powered by Audio app

快速回复 返回顶部 返回列表