(endpointvolume.h) 的 IAudioMeterInformation 介面
IAudioMeterInformation介面代表音訊資料流程上的尖峰計量,或從音訊端點裝置進行。 用戶端會呼叫IMMDevice::Activate方法,並將參數iid設定為 REFIID IID_IAudioMeterInformation,以取得端點物件上IAudioMeterInformation介面的參考。
如果串流至端點裝置或從端點裝置串流音訊資料的配接器裝置會實作硬體尖峰計量, IAudioMeterInformation 介面會使用該計量來監視音訊資料流程中的尖峰層級。 如果音訊裝置缺少硬體尖峰計量,音訊引擎會自動在軟體中實作尖峰計量,以透明方式對用戶端實作尖峰計量。
如果裝置具有硬體尖峰計量,用戶端可以使用 IAudioMeterInformation 介面中的方法來監視共用模式和獨佔模式中的裝置尖峰層級。 如果裝置缺少硬體尖峰計量,用戶端可以使用這些方法來監視裝置在共用模式中的尖峰層級,但不能以獨佔模式監視。 在獨佔模式中,用戶端和裝置會直接交換音訊資料,而略過軟體尖峰計量。 在獨佔模式中,軟體尖峰計量一律會報告尖峰值為 0.0。
若要判斷裝置是否有硬體尖峰計量,請呼叫 IAudioMeterInformation::QueryHardwareSupport 方法。
針對轉譯端點裝置, IAudioMeterInformation 介面會先監視輸出資料流程中的尖峰層級,再由端點磁片區控制衰減。 同樣地,針對擷取端點裝置,介面會先監視輸入資料流程中的尖峰層級,再由端點磁片區控制衰減。
IAudioMeterInformation介面中方法所報告的尖峰值正規化為 0.0 到 1.0 的範圍。 例如,如果 PCM 資料流程包含 16 位樣本,而特定計量期間的尖峰樣本值為 –8914,則尖峰計量所記錄的絕對值為 8914, 而 IAudioMeterInformation 介面所報告的標準化尖峰值為 8914/32768 = 0.272。
如需使用 IAudioMeterInformation 介面的程式碼範例,請參閱 尖峰計量。
繼承
IAudioMeterInformation介面繼承自IUnknown介面。 IAudioMeterInformation 也有下列類型的成員:
方法
IAudioMeterInformation介面具有這些方法。
IAudioMeterInformation::GetChannelsPeakValues GetChannelsPeakValues 方法會取得音訊資料流程中所有通道的尖峰取樣值。 |
IAudioMeterInformation::GetMeteringChannelCount GetMeteringChannelCount 方法會取得由尖峰計量監視之音訊資料流程中的通道數目。 |
IAudioMeterInformation::GetPeakValue GetPeakValue 方法會取得音訊資料流程中通道的尖峰樣本值。 |
IAudioMeterInformation::QueryHardwareSupport QueryHardwareSupport 方法會查詢音訊端點裝置是否有其硬體支援的功能。 (IAudioMeterInformation.QueryHardwareSupport) |
需求
最低支援的用戶端 | Windows Vista [傳統型應用程式 |UWP 應用程式] |
最低支援的伺服器 | Windows Server 2008 [傳統型應用程式 |UWP 應用程式] |
目標平台 | Windows |
標頭 | endpointvolume.h |