共用方式為


IMiniportAudioSignalProcessing::GetModes 方法 (portcls.h)

GetModes 方法會擷取音訊釘選所支援的音訊號處理模式。

語法

NTSTATUS GetModes(
  [in]            ULONG Pin,
  [out, optional] GUID  *SignalProcessingModes,
  [in, out]       ULONG *NumSignalProcessingModes
);

參數

[in] Pin

音訊釘選的索引。

[out, optional] SignalProcessingModes

這個參數是選擇性的。 它會傳回 GUID 陣列,以識別 Pin 參數所支援的訊號處理模式。

[in, out] NumSignalProcessingModes

當做輸入使用時,它會指定可以寫入至 SignalProcessingModes 中所指定之緩衝區的項目數目,。 當做輸出使用時,它會傳回寫入緩衝區的項目數目。

傳回值

如果呼叫成功,GetModes 會傳回STATUS_SUCCESS。 否則,方法會傳回適當的錯誤碼。

言論

如果 SignalProcessingModes 為 NULL,則 GetModes 將支援的模式數目寫入 NumSignalProcessingModes 並傳回STATUS_SUCCESS。 這可讓呼叫端查詢支援的模式數目,以便配置緩衝區。

如果 SignalProcessingModes 不是 NULL,GetModes 會確認 NumSignalProcessingModes 大於或等於支援模式的數目。 如果是,則方法會將支援的模式寫入 SignalProcessingModes 緩衝區、將支援模式的實際數目寫入 NumSignalProcessingModes,並傳回STATUS_SUCCESS。

下表提供並說明錯誤訊息,GetModes傳回的錯誤訊息。

錯誤碼 描述
STATUS_BUFFER_TOO_SMALL NumSignalProcessingModes 所保留的緩衝區太小。
STATUS_INVALID_PARAMETER Pin 參數的值表示 >的 Pin 識別碼 = 篩選上的針腳處理站數目。 針腳索引是以零起始,因此對於篩選上的 n 個 pin Factory,最高的索引值應該是 n-1。
STATUS_NOT_SUPPORTED 已為不支援訊號處理模式的針腳指定 Pin 識別碼。 例如,如果 Pin 識別碼參考音訊回送釘選或網橋接,則 GetModes 會傳回此錯誤碼。

要求

要求 價值
最低支援的用戶端 Windows 8.1
支援的最低伺服器 Windows Server 2012 R2
目標平臺 普遍
標頭 portcls.h

另請參閱

IMiniportAudioSignalProcessing