音訊裝置 DDI 參考

音訊裝置 DDI 參考技術的概觀。

若要開發音訊裝置 DDI 參考,您需要下列標頭:

如需這項技術的程式設計指引,請參閱:

列舉

 
APO_FLAG

APO_FLAG列舉會定義常數,這些常數會由音訊處理物件 (APO) 做為旗標使用。
APO_LOG_LEVEL

指定以 IAudioProcessingObjectLoggingService::ApoLog 記錄的 APO 事件層級。
APO_NOTIFICATION_TYPE

指定APO_NOTIFICATION的類型。
APO_REFERENCE_STREAM_PROPERTIES

指定 IApoAcousticEchoCancellation2::GetDesiredReferenceStreamProperties 回呼方法的回送資料流程屬性。
AUDIO_SYSTEMEFFECT_STATE

指定系統效果音訊處理物件的狀態, (sAPO) 音訊效果。
DEVICE_ORIENTATION_TYPE

指定類型APO_NOTIFICATION_TYPE_DEVICE_ORIENTATION通知的裝置方向值。
KSPROPERTY_AUDIOEFFECTSDISCOVERY

KSPROPERTY_AUDIOEFFECTSDISCOVERY列舉會定義常數,該常數是由音訊處理物件清單 (API) 使用。

函式

 
AcceptInput

在其其中一個輔助輸入上提供 APO 的輸入。
AddAuxiliaryInput

將輔助輸入新增至 APO,並提供初始化參數。
AERT_Allocate

AERT_Allocate公用程式函式會配置並鎖定記憶體區段以供音訊處理物件使用。
AERT_Free

AERT_Free公用程式函式會釋放 (釋放AERT_Allocate函式鎖定的) 記憶體,以供音訊處理物件用來處理音訊資料。
ApoLog

記錄 APO 事件。
APOProcess

APOProcess 方法會使 APO 進行處理傳遞。
CalcInputFrames

CalcInputFrames 方法會傳回 APO 產生指定輸出畫面格數目所需的輸入畫面數。
CalcOutputFrames

CalcOutputFrames 方法會傳回 APO 針對指定輸入畫面格數目所需的輸出畫面數。
提交

進行變更之後,這個方法會儲存變更。
CreateAudioMediaType

CreateAudioMediaType 函式會使用呼叫端指定的格式來建立描述音訊格式的媒體類型物件。
CreateAudioMediaTypeFromUncompressedAudioFormat

CreateAudioMediaTypeFromUncompressedAudioFormat 函式會使用 UNCOMPRESSEDAUDIOFORMAT 結構中提供的資訊來建立描述音訊格式的媒體類型物件。
GetApoNotificationRegistrationInfo

由系統呼叫,以允許用戶端註冊以接收 APO 端點和系統效果通知的通知回呼。
GetApoNotificationRegistrationInfo2

由系統呼叫,以允許用戶端註冊以接收 APO 端點和系統效果通知的通知回呼。 這個方法會新增參數,可用來判斷目前裝置上執行的 Windows 版本所支援的通知類型。
GetAt

從專案的屬性陣列取得屬性索引鍵。
GetAudioFormat

GetAudioFormat 方法會傳回音頻資料格式的顯示方式X 結構。
GetControllableSystemEffectsList

由系統效果音訊處理物件實作 (sAPO) 音訊效果,讓呼叫者取得目前的效果清單。
GetCount

這個方法會傳回附加至檔案的屬性數目計數。
GetDesiredReferenceStreamProperties

如果相關聯的音訊端點支援回送資料流程,請要求一組屬性。
GetEffectsList

GetEffectsList 方法可用來擷取目前使用中的音訊處理效果清單,並在清單變更時儲存要發出訊號的事件。
GetFormat

GetFormat 方法會擷取自訂格式的 IAudioMediaType 標記法。
GetFormatCount

GetFormatCount 方法會擷取系統效果音訊處理物件所支援的自訂格式數目, (sAPO) 。
GetFormatRepresentation

GetFormatRepresentation 方法會擷取自訂格式的字串表示,以便顯示在使用者介面上。
GetInputChannelCount

GetInputChannelCount 會針對此 APO 傳回輸入通道計數, (每個畫面格的樣本數) 。
GetLatency

GetLatency 方法會傳回此 APO 的延遲。 延遲是周遊 APO 處理階段的框架所花費的時間量。
GetPreferredInputFormat

回呼函式,可讓 APO 指定所提供輸出格式的慣用輸入格式。
GetPreferredOutputFormat

允許 APO 為提供的輸入格式指定慣用輸出格式的回呼函式。
GetRealTimeWorkQueue

取得工作佇列的識別碼,APO 可用來排程需要以即時優先順序執行的工作。
GetRegistrationProperties

GetRegistrationProperties 會傳回 APO) (音訊處理物件的註冊屬性。
GetUncompressedAudioFormat

IAudioMediaType::GetUncompressedAudioFormat 會傳回音頻資料格式的相關資訊。
GetValue

這個方法會擷取特定屬性的資料。
HandleNotification

由系統呼叫,以通知用戶端對 APO 端點或系統效果所做的變更。
初始 化

Initialize 方法會初始化 APO,並支援可變長度的資料。
IsCompressedFormat

IsCompressedFormat 方法會判斷音訊資料格式是否為壓縮格式。
IsEqual

IsEqual 方法會比較兩種媒體類型,並判斷它們是否相同。
IsInputFormatSupported

確認 APO 支援特定的輔助輸入格式。
IsInputFormatSupported

此方法會與 Windows Vista 音訊引擎交涉,以建立音訊資料流程的資料格式。
IsOutputFormatSupported

IsOutputFormatSupported 方法可用來確認支援特定的輸出格式。
LockForProcess

LockForProcess 方法可用來確認 APO 已鎖定並準備好處理資料。
RemoveAuxiliaryInput

從 APO 移除輔助輸入。
重設

Reset 方法會將 APO 重設為其原始狀態。 此方法不會對附加至 APO 輸入或輸出的連線物件造成任何變更。
SetAudioDeviceModulesManager

由系統呼叫,將 IAudioDeviceModulesManager 實例傳遞至音訊處理物件 (API) 實作 IAudioDeviceModulesClient 介面。
SetAudioSystemEffectState

由系統效果音訊處理物件實作 (sAPO) 音訊效果,以允許呼叫端設定效果的狀態。
SetValue

這個方法會設定屬性值,或取代或移除現有的值。
UnlockForProcess

UnlockForProcess 方法會釋放 LockForProcess 方法對 APO 所加加的鎖定。

介面

 
IApoAcousticEchoCancellation

此介面是由 AEC 實作,以啟用聲場回應取消 (AEC) 案例。
IApoAcousticEchoCancellation2

擴充 IAcousticEchoCancellation,以允許 API 指定參考資料流所需的屬性。
IApoAuxiliaryInputConfiguration

提供 API 可以實作的方法,讓音訊引擎可以新增和移除輔助輸入資料流程。
IApoAuxiliaryInputRT

用來驅動 APO 輔助輸入的即時安全介面。
IAudioDeviceModulesClient

音訊處理物件 (API) 實作這個介面,以取得 IAudioDeviceModulesManager 實例的參考。
IAudioMediaType

IAudioMediaType 介面會公開方法,讓 sAPO 取得用來與音訊引擎交涉以取得適當音訊資料格式的資訊。
IAudioProcessingObject

系統效果音訊處理物件 (sAPOs) 通常用於或從即時進程執行緒呼叫。
IAudioProcessingObjectConfiguration

IAudioProcessingObjectConfiguration 介面可用來設定 APO。 此介面會使用其方法來鎖定和解除鎖定 APO 以進行處理。
IAudioProcessingObjectLoggingService

表示 ADO 的記錄服務。
IAudioProcessingObjectNotifications

由用戶端實作,以註冊和接收 APO 端點和系統效果通知的常見音訊相關通知。
IAudioProcessingObjectNotifications2

由用戶端實作,以註冊和接收 APO 端點和系統效果通知的常見音訊相關通知。 此介面新增了判斷目前裝置上執行之 Windows 版本上支援的通知類型的能力。
IAudioProcessingObjectPreferredFormatSupport

此介面是由 APO 實作,以便指定慣用的輸入或輸出格式。
IAudioProcessingObjectRT

這個介面可以即時模式運作,而且其方法可以稱為即時處理執行緒。
IAudioProcessingObjectRTQueueService

表示 APO 的即時工作佇列服務。
IAudioSystemEffects

IAudioSystemEffects 介面會使用繼承自 IUnknown 的基本方法,而且必須實作 Initialize 方法。
IAudioSystemEffects2

IAudioSystemEffects2 介面已引進Windows 8.1,以擷取指定模式中處理物件的相關資訊。
IAudioSystemEffects3

由需要將 APOInitSystemEffects3 結構傳遞至 IAudioProcessingObject::Initialize 方法的用戶端實作。
IAudioSystemEffectsCustomFormats

Windows Vista 和更新版本的 Windows 支援 IAudioSystemEffectsCustomFormats 介面。
IPropertyStore

這個介面會公開用來列舉及操作屬性值的方法。

結構

 
AcousticEchoCanceller_Reference_Input

包含有關目前聲場 Echo 取消 (AEC) 組態的擴充資訊。
APO_NOTIFICATION

表示變更 APO 端點或系統效果的通知。
APO_NOTIFICATION_DESCRIPTOR

指定要求的 APO 通知。
APO_REG_PROPERTIES

APO_REG_PROPERTIES 結構是由 IAudioProcessingObject::GetRegistrationProperties 用來傳回音頻處理物件的註冊屬性, (APO) 。
APOInitBaseStruct

APOInitBaseStruct 結構是必須在 IAudioProcessingObject::Initialize 中其他初始化資料之前的基本初始化標頭。
APOInitSystemEffects

APOInitSystemEffects 結構會傳遞至系統效果 APO 以進行初始化。
APOInitSystemEffects2

APOInitSystemEffects2 結構是透過 Windows 8.1 引進的,可讓您將額外的初始化內容提供給音訊處理物件, (APO) 進行初始化。
APOInitSystemEffects3

提供 APO 初始化參數,擴充 APOInitSystemEffects2 以新增指定服務提供者進行記錄的功能。
AUDIO_ENDPOINT_PROPERTY_CHANGE_APO_NOTIFICATION_DESCRIPTOR

指定端點屬性變更 APO 通知。
AUDIO_ENDPOINT_PROPERTY_CHANGE_NOTIFICATION

表示屬性變更 APO 通知。
AUDIO_ENDPOINT_VOLUME_APO_NOTIFICATION_DESCRIPTOR

指定端點磁片區 APO 通知。
AUDIO_ENDPOINT_VOLUME_CHANGE_NOTIFICATION

表示音訊端點音量變更 APO 通知。
AUDIO_ENDPOINT_VOLUME_CHANGE_NOTIFICATION2

表示音訊端點音量變更 APO 通知。 這是更新版本的 AUDIO_ENDPOINT_VOLUME_CHANGE_NOTIFICATION,可提供磁片區變更事件的其他資訊。
AUDIO_ENVIRONMENT_STATE_CHANGE_NOTIFICATION

表示音訊環境變更 APO 通知。
AUDIO_MICROPHONE_BOOST_APO_NOTIFICATION_DESCRIPTOR

指定端點麥克風提升 APO 通知。
AUDIO_MICROPHONE_BOOST_NOTIFICATION

表示音訊麥克風提升 APO 通知。
AUDIO_SYSTEMEFFECT

表示系統效果音訊處理物件 (sAPO) 音訊效果。
AUDIO_SYSTEMEFFECTS_PROPERTY_CHANGE_NOTIFICATION

表示系統音訊效果 APO 通知。
AUDIO_VOLUME_NOTIFICATION_DATA2

表示磁片區變更通知事件的相關資訊。 AUDIO_ENDPOINT_VOLUME_CHANGE_NOTIFICATION2 結構會使用此結構。
KSP_PINMODE

KSP_PINMODE 結構會指定針腳處理站的 pin 屬性和支援的音訊處理模式。
MDEVICECAPSEX

MDEVICECAPSEX 結構包含隨插即用 (PnP) 設備磁碟機的裝置功能資訊。
MIDIOPENDESC

MIDIOPENDESC 結構是用戶端填滿的結構,可提供如何開啟 MIDI 裝置的相關資訊。
UNCOMPRESSEDAUDIOFORMAT

UNCOMPRESSEDAUDIOFORMAT 結構會指定未壓縮音訊資料格式的畫面播放速率、通道遮罩和其他屬性。
電壓X

WAVEATEX 結構會指定波浪音訊資料流程的資料格式。