變更音調和播放速率
[與此頁面相關聯的功能 「波狀音訊」是舊版功能。 WASAPI和音訊圖表已取代它。 WASAPI和音訊圖表已針對Windows 10和Windows 11進行優化。 Microsoft 強烈建議新程式碼盡可能使用 WASAPI 和 音訊圖形 ,而不是 「波形音訊」。 Microsoft 建議使用舊版 API 的現有程式碼盡可能重寫為使用新的 API。
有些電壓音訊輸出裝置可能會改變音調和聲場音訊資料的播放速率。 並非所有的電壓音訊裝置都支援音調和播放速率變更。 如需如何判斷特定波音訊裝置是否支援音調和播放速率變更的相關資訊,請參閱 裝置和資料類型。
變更音調和播放速率之間的差異如下:
- 變更播放速率是由設備磁碟機執行,而且不需要特殊硬體。 取樣率不會變更,但驅動程式會略過或合成樣本來插補。 例如,如果播放速率由兩個因素變更,則驅動程式會略過其他每個範例。
- 變更音調需要特殊硬體。 播放速率和取樣率不會變更。
Windows 提供下列函式來查詢及設定電壓音訊音調和播放速率。
函式 | 描述 |
---|---|
waveOutGetPitch | 擷取指定之電壓音訊輸出裝置的音調。 |
waveOutGetPlaybackRate | 擷取指定之電壓音訊輸出裝置的播放速率。 |
waveOutSetPitch | 設定指定之電壓音訊輸出裝置的音調。 |
waveOutSetPlaybackRate | 設定指定之電壓音訊輸出裝置的播放速率。 |
音調和播放速率會由以固定點數封裝成雙字值的因素來變更。 上方 16 位會指定數位的整數部分;較低的 16 位會指定小數部分。 例如,值 1.5 會以 0x00018000L 表示。 值 0.75 會以 0x0000C000L 表示。 值為 1.0 (0x00010000) 表示音調或播放速率不變。