您可以設計音訊硬體來改善驅動程式效能,以避免不必要的數據複製。
您可以實作硬體以執行真正的散佈/收集 DMA,以及撰寫 WavePci 迷你埠驅動程式來管理硬體,以達到最佳結果。 然後,您的裝置可以直接存取播放數據緩衝區或空的記錄緩衝區,無論它們位於系統記憶體中。 這可消除許多不必要的軟體介入和耗時的數據複製。
不過,如果您要設計 WaveCyclic 裝置,您可以藉由將其硬體緩衝區直接存取為系統記憶體來改善其效能。 這可消除從系統記憶體中中繼緩衝區複製數據的額外負荷。
此外,如果您的裝置需要具有與標準 WDM 音訊格式不相容之通道排序的音訊格式,驅動程式可能必須先在中繼緩衝區中執行每個音訊畫面的就地轉換,硬體才能處理它。 這可能會降低效能。 如需詳細資訊,請參閱 多個通道音訊數據和 WAVE 檔案。