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 個針腳處理站,最高的索引值應該是 n-1。
STATUS_NOT_SUPPORTED 已針對不支援訊號處理模式的針腳指定 Pin 識別碼。 例如,如果 Pin 識別碼參考音訊回送釘選或網橋接, 則 GetModes 會傳回此錯誤碼。

規格需求

需求
最低支援的用戶端 Windows 8.1
最低支援的伺服器 Windows Server 2012 R2
目標平台 Universal
標頭 portcls.h

另請參閱

IMiniportAudioSignalProcessing