IChannelAudioVolume::SetChannelVolume 方法 (audioclient.h)
SetChannelVolume 方法會設定音訊會話中指定通道的音量層級。
語法
HRESULT SetChannelVolume(
[in] UINT32 dwIndex,
[in] const float fLevel,
[in] LPCGUID EventContext
);
參數
[in] dwIndex
通道號碼。 如果音訊會話的數據流格式有 N 個通道,則通道編號為 0 到 N– 1。 若要取得通道數目,請呼叫 IChannelAudioVolume::GetChannelCount 方法。
[in] fLevel
通道的磁碟區層級。 有效的磁碟區層級範圍介於 0.0 到 1.0。
[in] EventContext
事件內容 GUID 的指標。 如果呼叫這個方法會產生通道磁碟區變更事件,會話管理員會將通知傳送給所有已註冊 IAudioSessionEvents 介面的用戶端與會話管理員。 會話管理員會在每個通知中包含 EventContext 指標值。 收到通知時,用戶端可以藉由檢查 EventContext 值來判斷它或另一個用戶端是否為事件的來源。 此配置取決於客戶端選取這個參數的值,這個參數在會話中的所有客戶端之間是唯一的。 如果呼叫端提供此參數的 NULL 指標,則用戶端的通知方法會收到 NULL 內容指標。
傳回值
如果方法成功,它會傳回 S_OK。 如果失敗,可能的傳回碼包括,但不限於下表所示的值。
傳回碼 | Description |
---|---|
|
參數 dwIndex 設定為無效的通道號碼,或 參數 fLevel 不在 0.0 到 1.0 的範圍內。 |
|
音訊端點裝置已解除叢集,或音訊硬體或相關聯的硬體資源已重新設定、停用、移除,否則無法使用。 |
|
Windows 音訊服務未執行。 |
備註
如果成功,這個方法會產生通道磁碟區變更事件,而不論新的通道磁碟區層級與先前通道磁碟區層級的值是否不同。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows Vista [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2008 [僅限傳統型應用程式] |
目標平台 | Windows |
標頭 | audioclient.h |