跳到內容

Windows Audio 格式:取樣率、位元深度與負載

本頁內容

簡短回答: 在所研究的 Realtek USB Audio endpoint 上,格式 48 kHz / 24-bit 仍是實務上的選擇。切換到 96 或 192 kHz 並未縮短可用的音訊引擎週期或 XAudio2 佇列估計。16-bit 在 CPU 上的優勢以及停用系統效果的好處均未獲得證實。

狀態: 在單一系統上測量,未在其他裝置上重現。結果不能自動套用到其他音訊驅動程式、DAC 或 Windows build。狀態值的說明見研究方法。

本研究回答了四個問題:

  1. 提高頻率時,shared-mode 音訊引擎週期是否會縮短?
  2. 在 48 kHz 下,16-bit 相對於 24-bit 和 32-bit 是否會降低負載?
  3. 停用系統音效是否能帶來可重現的負載降低?
  4. 對於 48 kHz 的來源,變更 endpoint rate 與 XAudio2 的內部運作有何關聯?

測量並未檢驗音質、FPS、遊戲延遲或數位訊號與喇叭之間的物理延遲。

參數 值
測量日期 2026-08-20
Windows Windows 11 Pro 25H2, x64
OS build 26200.8655
處理器 AMD Ryzen 7 7800X3D, 8 核心 / 16 執行緒
記憶體 32 GB
裝置 喇叭, Realtek USB Audio
驅動程式 Realtek USB Audio 6.4.0.2422 自 2025-08-07
來源 device format 48 kHz, 24-bit PCM, stereo
Shared mix format 48 kHz, 32-bit float, stereo
來源效果 已啟用
測試案例 17 條追蹤,每個案例一條追蹤
追蹤分析 五個連續的 10 秒視窗

來源追蹤記錄了 Windows build 26200 分支與音訊裝置資料。完整的 revision、Windows edition、處理器型號與記憶體容量另外於 2026-08-24 從同一台電腦讀取。測量與重新記錄配置之間相隔四天。

endpoint 的唯一識別碼與原始系統追蹤不公開。

各案例以隨機順序執行。每個案例使用 3 秒預熱,接著 52 秒系統追蹤與五個 10 秒分析視窗。

檢查了兩種類型的負載:

  • 穩定的 shared-mode WASAPI 串流,用於比較頻率、位元深度與效果;
  • 合成 XAudio2 負載,具有 8、32 或 64 個作用中的 voices 以及 44.1 或 48 kHz 的來源。

Windows Audio 的主要指標是 audiodg.exe 程序的 scheduler running time,以每秒執行毫秒數表示。另外讀取了 XAudio2 performance data、glitches 數量與追蹤遺失統計。

同一條追蹤的五個視窗彼此相關,僅用作描述性離散程度。它們不是五次獨立執行。整體系統背景負載有所變動,因此 whole-machine CPU、絕對 DPC 與 ISR 未用於最終結論。

Endpoint rate Frames 週期
44,1 kHz 441 10,0 毫秒
48 kHz 480 10,0 毫秒
96 kHz 960 10,0 毫秒
192 kHz 1920 10,0 毫秒

Endpoint 只回傳 10 毫秒的週期。5 毫秒與 2.5 毫秒的週期不受其驅動程式支援。提高頻率增加了每週期的 frames 數量,但未縮短週期長度。

這是特定裝置與驅動程式組合的特性。Microsoft 指出,可用的 buffer 大小由音訊驅動程式決定,而應用程式可透過 IAudioClient3 請求支援的選項。詳情見:Low Latency Audio。

表中列出單一追蹤內五個視窗的中位數與範圍。單位 мс/с 表示 audiodg.exe 程序在每秒觀察時間內執行了多少毫秒。

Endpoint rate audiodg, median 視窗範圍
44,1 kHz 4,34 毫秒/秒 4,24–4,86 毫秒/秒
48 kHz 4,23 毫秒/秒 4,20–5,63 毫秒/秒
96 kHz 4,77 毫秒/秒 4,72–5,70 毫秒/秒
192 kHz 5,19 毫秒/秒 5,07–5,94 毫秒/秒

在此系列中,96 與 192 kHz 未顯示 audiodg.exe 時間的降低。但每個頻率只有一條追蹤,且背景負載有所變動。該表無法證明頻率之間存在通用的 CPU 差異幅度。

Device format audiodg, median 視窗範圍
16-bit 4,07 毫秒/秒 4,03–4,35 毫秒/秒
24-bit 4,23 毫秒/秒 4,20–5,63 毫秒/秒
32-bit 4,20 毫秒/秒 4,16–4,64 毫秒/秒

範圍互相重疊,且獨立重複次數不足。根據此系列,不能斷言切換到 16-bit 能帶來可重現的負載降低。

在 48 kHz / 24-bit 下,audiodg.exe 的中位數在啟用效果時為 4,23 毫秒/秒,在停用效果時為 4,39 毫秒/秒。平均值因來源追蹤中一個較高的視窗而朝另一方向變動。

未確立停用效果的可靠優勢。此結果不構成在沒有具體 Audio Processing Object 或驅動程式問題時停用它們的理由。

對於固定的 48 kHz 來源與 32 voices,得到以下 XAudio2 performance data:

Endpoint rate Audio cycles/s 相對於 48 kHz 佇列估計
44,1 kHz 25 116 2,31× 37,28 毫秒
48 kHz 10 870 1,00× 37,27 毫秒
96 kHz 55 574 5,11× 37,18 毫秒
192 kHz 87 016 8,00× 37,18 毫秒

Microsoft 將 AudioCyclesSinceLastQuery 定義為 XAudio2 在上一次請求之後處理音訊所花費的 CPU cycles。CurrentLatencyInSamples 是最後傳送給驅動程式與正在播放的資料之間的近似距離。參見 XAUDIO2_PERFORMANCE_DATA 與 IXAudio2::GetPerformanceData。

在此合成案例中,提高 endpoint rate 增加了 XAudio2 的內部運作,但幾乎未改變其佇列估計。每個變體只得到一份 performance summary,因此這些係數是對該次執行的描述,而非對遊戲的通用預測。

在所有 17 條追蹤中記錄到:

  • 0 audio glitches;
  • 0 遺失的 ETW events;
  • 0 遺失的 ETW buffers。
  • 在所研究的 endpoint 上,44.1、48、96 與 192 kHz 下可用的 shared-mode 週期均維持 10 毫秒。
  • 提高頻率未縮短合成案例中測得的 XAudio2 佇列。
  • 16-bit 在 audiodg.exe 時間上的優勢未獲證實。
  • 停用系統效果的優勢未獲證實。
  • 48 kHz / 24-bit 符合裝置的來源格式,且未顯示出相對於相鄰選項的實務劣勢。
  • 結果未在其他音訊裝置或 Windows build 上重現。
  • 完整的 Windows revision 與電腦整體配置是在測量後四天才記錄,而非在來源追蹤之內。
  • 未測量實體 DAC、ADC、acoustic 或 input-to-sound latency。
  • 未評估音質與差異的可聽性。
  • 未檢查對特定遊戲、FPS 與 frametime 的影響。
  • 未隔離個別 vendor APO 的貢獻。
  • 確切的整體 CPU 效應不能套用到其他效能的處理器。

原始 ETL 不公開:它們包含與程序及系統狀態無關的資訊。上表為手動挑選,不含唯一 endpoint ID、usernames、本機路徑或 command lines。

本研究與所使用的工具屬於 BoosterX 開發者,因此開發者對結果有直接利益。方法與適用範圍已於上文說明,結論可透過公開資料與所列的公開來源驗證。

對於所研究的裝置,合理的做法是保留 48 kHz / 24-bit,並且在沒有具體診斷出的問題時不要停用系統效果。本研究不支持為了較低延遲而選擇 96 或 192 kHz。

這不是適用於所有 DAC 與驅動程式的通用設定。若裝置回報較小的 shared-mode period 或使用不同的音訊路徑,則需要另行測量。

完成後已還原 48 kHz / 24-bit PCM 與系統效果的原始狀態。沒有殘留作用中的追蹤工作階段。

研究完成:2026-08-20。公開來源與措辭已檢查:2026-08-24。

  • 2026-09-20: 結構調整為強制格式——「限制」與「還原狀態」獨立為單獨章節;小數分隔符與時間單位調整為系列風格(逗號、「毫秒」);新增關於利益衝突的免責聲明。
  • 2026-08-24: 首次發布;公開了在單一系統上的測量、結果套用範圍與狀態還原。