專屬Speaker-Configuration公用程式

注意 此資訊適用于 Windows XP 和舊版作業系統。 從 Windows Vista 開始, IDirectSound::GetSpeakerConfigIDirectSound::SetSpeakerConfig 已被取代。

硬體廠商偶爾會提供專屬的說話者設定公用程式,以搭配其音訊驅動程式使用,以取代主控台中的喇叭對話方塊。 這類公用程式可能有問題:有時候會以無法通知 Windows 變更的專屬方式變更說話者設定。 如果專屬公用程式中的設定不符合主控台中的設定,這可能會導致使用者體驗不佳。 如果您認為您的裝置需要專屬公用程式,您應該採取下列步驟來整合您的公用程式與 Windows:

  1. 在您的驅動程式中實作支援 KSPROPERTY_AUDIO_CHANNEL_CONFIG 屬性的 DAC 節點。 透過這個節點,Windows 會立即通知驅動程式使用者主控台所做的變更。

  2. 藉由呼叫 DirectSound 方法 GetSpeakerConfigSetSpeakerConfig,設計您的設定公用程式來管理說話者設定。

SetSpeakerConfig呼叫會通知 DirectSound (和 Windows) 公用程式對說話者設定所做的變更。 此外,公用程式的初始化程式碼應該呼叫GetSpeakerConfig,以判斷使用者是否已透過主控台變更任何設定。 如果是,公用程式應該在其使用者介面中反映這些變更。

如果您的裝置支援沒有精確 Windows 對等專案的多重通道格式,您的設定公用程式應該執行下列動作:

  • 變更為沒有精確 Windows 對等專案之說話者設定時,請使用最接近的 Windows 對等專案呼叫 SetSpeakerConfig 。 這是除了進行設定驅動程式所需的任何專屬呼叫之外。

  • 當變更為具有精確 Windows 對等專案的說話者設定時,請呼叫 SetSpeakerConfig 以更新喇叭模式。

如果您讓 Windows 更瞭解裝置的功能,DirectSound 可以啟用某些無法 (啟用的功能,例如多重通道 3D 移動流覽) 。