IAudioSystemEffects2::GetEffectsList 方法 (audioenginebaseapo.h)
GetEffectsList 方法可用來擷取目前作用中的音訊處理效果清單,並在清單變更時儲存要發出訊號的事件。
語法
HRESULT GetEffectsList(
[out] LPGUID *ppEffectsIds,
[out] UINT *pcEffects,
[in] HANDLE Event
);
參數
[out] ppEffectsIds
代表音訊處理效果之 GUID 清單的指標。 呼叫端負責呼叫 CoTaskMemFree 來釋放此記憶體。
[out] pcEffects
清單中的音訊處理效果計數。
[in] Event
如果清單變更,將會發出訊號的事件 HANDLE。
傳回值
GetEffectsList 方法會傳回S_OK,如果方法呼叫成功。 如果清單中沒有任何效果,函式仍會成功, ppEffectsIds 會傳回 NULL 指標, 而pcEffects 會傳回計數為 0。
備註
當 GetEffectsList 所傳回清單的音訊處理效果變更時,APO 會發出指定的事件訊號。 APO 會使用此事件,直到再次呼叫 GetEffectsList ,或 APO 已終結為止。 傳遞的句柄可以是 NULL,在此情況下,APO 會停止使用任何先前的句柄,而且不會發出事件訊號。
APO 會實作這個方法,以允許 Windows 探索 APO 所套用的目前效果。 效果清單可能會取決於 APO 初始化的處理模式,以及任何終端用戶設定。 處理模式是由 APOInitSystemEffects2 的 AudioProcessingMode 成員表示。
API 應該使用 Windows 所定義的 GUID 來識別效果,例如AUDIO_EFFECT_TYPE_ACOUSTIC_ECHO_CANCELLATION。 APO 應該只在少數情況下定義並傳回自定義 GUID,其中效果的類型與 Windows 所定義的類型明顯不同。
規格需求
需求 | 值 |
---|---|
目標平台 | 桌面 |
標頭 | audioenginebaseapo.h |