KSPROPERTY_AUDIO_PEAKMETER2
Windows 8引進了 KSPROPERTY_AUDIO_PEAKMETER2 屬性,報告自上次重設尖峰計節點以來,尖峰計節點 (KSNODETYPE_PEAKMETER) 發生的音訊訊號層級上限。
使用量摘要表格
Get | 集合 | 目標 | 屬性描述元類型 | 屬性值類型 |
---|---|---|---|---|
是 |
否 |
透過篩選或釘選實例的節點 |
KSNODEPROPERTY_AUDIO_CHANNEL | LONG |
(作業資料) 的屬性值為 LONG 類型,並指定節點上的尖峰樣本值。 如果尖峰值為負值,則會使用其絕對值。
傳回值
KSPROPERTY_AUDIO_PEAKMETER2屬性要求會傳回STATUS_SUCCESS,表示它已順利完成。 否則,要求會傳回適當的錯誤狀態碼。 下表顯示可能的錯誤狀態碼。
狀態碼 | 意義 |
---|---|
STATUS_NOT_IMPLEMENTED |
KS 篩選準則無法傳回尖峰計的目前值。 |
備註
KSPROPERTY_AUDIO_PEAKMETER2屬性幾乎與 KSPROPERTY_AUDIO_PEAKMETER 屬性相同。 KSPROPERTY_AUDIO_PEAKMETER2 屬性是透過 Windows 8 引進,以提供針腳拓撲的改良硬體計量。 舊版KSPROPERTY_AUDIO_PEAKMETER屬性已被取代,不應再使用。
SignedMinimum 必須設定為 LONG_MIN (而不是 0x8000) ,而 SignedMaximum 必須設定為 LONG_MAX (而不是 0x7fff) 。 此外,請注意,尖峰計量值相對於這個小數位數,而小數位數以幅度表示線性。
因此,例如,如果您在從 -1 到 +1 的刻度上分別 (從 -1 到 +1) ,則LONG_MAX尖峰計量值會正確報告指定時間範圍的最大電壓值。 相反地,尖峰計量值為零 (0) 應該用來報告無聲,其中所有波的值都是零。 但是,如果尖峰值介於零 (0) 與LONG_MAX 之間 ,則報告的電壓值會從原始值線性減少。
因此,在介於 -0.5 到 +0.5 之間的波動 (從 -1 到 +1) 時,尖峰計量值必須設定為 LONG_MAX/2。
KS 音訊篩選準則會同步處理這個屬性要求。 如果要求成功,它會重設尖峰計,以將累積的尖峰值初始化為零。 如果要求不成功,則不會變更尖峰計。
系統會在 IRQL PASSIVE_LEVEL傳送KSPROPERTY_AUDIO_PEAKMETER2屬性的IOCTL_KS_PROPERTY要求。
規格需求
標頭 |
Ksmedia.h (包含 Ksmedia.h) |