Core Audio(一)

时间:2021-04-24 01:36:55

Core Audio APIs

core audio apis是vista之后引入的,不使用与之前的windows版本;core audio apis提供访问endpoint devices,比如耳机、麦克风等,它是higher-level audio APIs(比如directsound, waveXXX 函数)的基础。

(一)Windows Core Audio APIs简介

1.功能:

(1)低延时,几乎无故障的音频流。

(2)提高可靠性 ( 很多音频函数从核心态移到了用户态 )

(3)提高了安全性 (在安全的,低优先级别的线程处理被保护的音频内容)

(4)分配了特定的系统级别的规则 (console, multimedia, communications) 给单独的音频设备

(5)用户可以直接操作,相应 endpoint 设备的软件抽象 ( 如:扩音器,耳麦及麦克风 )

2. 以下higher-level APIs的基础:

(1)DirectSound

(2)DirectMusic

(3)Windows multimedia waveXxx and mixerXxx functions

(4)Media Foundation

3.需要用到这些核心的 API的地方:

(1)专业的音频应用程序 (PRO AUDIO)

(2)实时通信 (RTC) 应用程序

(3)第三方音频 API

一个 PRO AUDIO 和 RTC 应用程序可能需要直接用底层 Core Audio API 访问音频硬件来达到最小延时的效果,一个第三方的音频 API 需要直接访问 Core Audio API 来实现高层的 API 没有提供的功能;

4.Api包括(这些 API 提供对于设备的抽象概念,这些概念被描述成为 Audio Endpoint Device ):

(1)Multimedia Device (MMDevice) API :用这些 API 来枚举系统中的音频设备。

(2)Windows Audio Session API (WASAPI) :用这些 API 来创建和管理来自音频设备音频流。

(3)DeviceTopology API :用这些 API 来直接访问声音适配器中的硬件数据通路的拓扑特性(如音量控制,复用器等)

(4)EndpointVolume API :用这些 API 直接访问音频设备的声音控制。这些 API 通常是给那些以独占模式管理音频流的应用程序。

本文参考文档:http://msdn.microsoft.com/en-us/library/dd370802(v=vs.85).aspx