共用方式為


IAudioEndpointVolume::GetVolumeStepInfo 方法 (endpointvolume.h)

GetVolumeStepInfo 方法會取得磁碟區範圍中目前步驟的相關信息。

語法

HRESULT GetVolumeStepInfo(
  [out] UINT *pnStep,
  [out] UINT *pnStepCount
);

參數

[out] pnStep

方法寫入目前步驟索引的 UINT 變數指標。 此索引是範圍從 0 到 *pStepCount– 1 的值,其中 0 代表最小磁碟區層級, 而 *pStepCount – 1 代表最大層級。

[out] pnStepCount

方法寫入磁碟區範圍中步驟數目的 UINT 變數指標。 此數目在 IAudioEndpointVolume 介面實例的存留期內維持不變。

傳回值

如果方法成功,它會傳回 S_OK。 如果失敗,可能的傳回碼包括,但不限於下表所示的值。

傳回碼 Description
E_POINTER
參數 pnStep 和 pnStepCount 都是 NULL

備註

這個方法代表輸入或離開音訊端點裝置的音訊數據流音量層級,做為離散音量層級範圍內的索引或「步驟」。 輸出值 *pnStepCount 是範圍中的步驟數目。 輸出值 *pnStep 是目前磁碟區層級的步驟索引。 如果步驟數目為 n = *pnStepCount,則步驟索引 *pnStep 可以假設從 0 (最小磁碟區) 到 n – 1 (最大磁碟區) 的值。

在範圍從 0 到 n – 1 之間,相鄰步驟之間的連續間隔不一定代表線性訊號幅度或減號中的統一音量遞增。 在 Windows Vista 中, GetVolumeStepInfo 會定義索引與音量層級的關聯性, (訊號幅度) 為音訊磁帶曲線。 請注意,曲線的形狀可能會在未來的 Windows 版本中變更。 如需音訊磁帶曲線的詳細資訊,請參閱 音訊磁帶音量控件

音訊應用程式可以呼叫 IAudioEndpointVolume::VolumeStepUpIAudioEndpointVolume::VolumeStepDown 方法,以增加或減少音量層級一個間隔。 任一種方法都會先計算對應至音頻磁帶曲線下一個點的理想化音量層級。 接下來,方法會選取最接近理想層級的端點磁碟區設定。 若要取得端點磁碟區設定的範圍和粒度,請呼叫 IEndpointVolume::GetVolumeRange 方法。 如果音訊端點裝置實作硬體音量控制, GetVolumeRange 會描述硬體音量設定。 否則,EndpointVolume API 會在軟體中實作端點磁碟區控件,而 GetVolumeRange 會描述軟體實作控件的磁碟區設定。

規格需求

需求
最低支援的用戶端 Windows Vista [傳統型應用程式 |UWP 應用程式]
最低支援的伺服器 Windows Server 2008 [傳統型應用程式 |UWP 應用程式]
目標平台 Windows
標頭 endpointvolume.h

另請參閱

IAudioEndpointVolume 介面

IAudioEndpointVolume::VolumeStepDown

IAudioEndpointVolume::VolumeStepUp