共用方式為


關於 Windows Core 音訊 API

本檔提供 Microsoft Windows 系列作業系統核心音訊 API 的相關信息。

核心音訊 API 已在 Windows Vista 中引進。 這個新的使用者模式音訊元件集為用戶端應用程式提供改良的音訊功能。 這些功能包括下列各項:

  • 低延遲、故障復原的音訊串流。
  • 改善的可靠性(許多音訊功能已從內核模式移至使用者模式)。
  • 改善安全性(受保護的音訊內容處理是在安全、較低許可權的程式中執行)。
  • 將特定全系統角色(主控台、多媒體和通訊)指派給個別音訊裝置。
  • 使用者直接操作的音訊端點裝置軟體抽象概念(例如喇叭、耳機和麥克風)。

Windows 7 中已改善核心音訊 API。 如需有關已新增之改善和新功能的詳細資訊,請參閱 Windows 7 中核心音訊 API 的新功能。

本文件說明核心音訊 API。 這些 API 可作為下列較高層級 API 的基礎:

  • DirectSound
  • DirectMusic
  • Windows 多媒體 waveXxx混合器Xxx 函式
  • 媒體基礎

這些較高層級的 API 會使用核心音訊 API 來共用音訊裝置的存取權。 Media Foundation 是 Windows Vista 的新功能,而 DirectSound、DirectMusic 和 waveXxxmixerXxx 函式則支援 Windows 98、Windows Millennium Edition 和 Windows 2000 和更新版本。

大部分音訊應用程式會與較高層級的 API 通訊,而不是直接與核心音訊 API 通訊。 使用較高層級 API 的應用程式範例包括:

  • 媒體播放機
  • DVD 播放器
  • 遊戲
  • 播放聲音檔案的商務應用程式,例如 Microsoft Office PowerPoint

一般而言,這些應用程式會與 DirectSound 或 Media Foundation API 通訊。

與核心音訊 API 的直接通訊可能不適用於許多一般用途音訊應用程式。 例如,核心音訊 API 需要音訊串流才能使用音訊裝置的原生數據格式。 不過,開發下列產品類型的第三方軟體開發人員可能需要核心音訊 API 的特殊功能:

  • 專業音訊 (“pro audio”) 應用程式
  • 實時通訊 (RTC) 應用程式
  • 第三方音訊 API

「專業音訊」或 RTC 應用程式可能需要直接存取核心音訊 API 的低階功能,以取得音訊硬體的獨佔存取,以達到最低延遲。 第三方音訊 API 可能需要直接存取核心音訊 API,以實作一組功能,而任何隨附於 Windows 的單一高階音訊 API 都可能無法完全支援這些功能。

使用舊版音訊 API 播放或錄製音訊的應用程式可能需要舊版音訊 API 不支援的其他功能,但核心音訊 API 支援。 在許多情況下,應用程式可以直接透過核心音訊 API 存取這些功能,其可與舊版音訊 API 搭配使用。

核心音訊 API 包括:

  • 多媒體裝置 (MMDevice) API。 用戶端會使用此 API 列舉系統中的音訊端點裝置。
  • Windows 音訊會話 API (WASAPI)。 用戶端會使用此 API 來建立和管理音訊端點裝置的音訊串流。
  • DeviceTopology API。 用戶端會使用此 API 直接存取位於音訊配接器中硬體裝置內之數據路徑的拓撲功能(例如音量控制和多任務器)。
  • EndpointVolume API。 用戶端會使用此 API 直接存取音訊端點裝置上的音量控制。 此 API 主要用於管理獨佔模式音訊資料流的應用程式。

這些 API 支援使用者易記的端點裝置概念,如音訊端點裝置中所述

Microsoft 不打算將此處所述的核心音訊 API 用於舊版 Windows,包括 Microsoft Windows Server 2003、Windows XP、Windows Millennium Edition、Windows 2000 和 Windows 98。

此概觀包含下列主題。

主題 說明
Windows 7 中核心音訊 API 的新功能 摘要說明核心音訊 API 的新功能和改善
標頭檔與系統元件 描述核心音訊 API 的頭檔與系統元件。
使用核心音訊 API 的 SDK 範例 列出使用核心音訊 API 之 Windows SDK 中的範例。

 

核心音訊 API