翻譯Speaker-Configuration要求
注意 此資訊適用于 Windows XP 和舊版作業系統。 從 Windows Vista 開始, IDirectSound::GetSpeakerConfig 和 IDirectSound::SetSpeakerConfig 已被取代。
當應用程式呼叫IDirectSound::SetSpeakerConfig (請參閱Microsoft Windows SDK檔) 來變更說話者設定時,DirectSound 會將指定的 DSSPEAKER_Xxx說話者組態參數轉譯為對等的 KSAUDIO_Xxx通道組態遮罩。 它會將包含此遮罩的 set-property 要求傳送 KSPROPERTY_AUDIO_CHANNEL_CONFIG 至代表 DirectSound 裝置的篩選準則。
在下表中,左側的每個DSSPEAKER_Xxx 參數都會與右邊的對等KSAUDIO_Xxx 通道組態遮罩配對。
DSSPEAKER 參數 | KSAUDIO Channel-Configuration Mask |
---|---|
DSSPEAKER_DIRECTOUT |
KSAUDIO_SPEAKER_DIRECTOUT |
DSSPEAKER_HEADPHONE |
KSAUDIO_SPEAKER_STEREO |
DSSPEAKER_MONO |
KSAUDIO_SPEAKER_MONO |
DSSPEAKER_STEREO |
KSAUDIO_SPEAKER_STEREO |
DSSPEAKER_QUAD |
KSAUDIO_SPEAKER_QUAD |
DSSPEAKER_SURROUND |
KSAUDIO_SPEAKER_SURROUND |
DSSPEAKER_5POINT1 |
KSAUDIO_SPEAKER_5POINT1 |
DSSPEAKER_7POINT1 |
KSAUDIO_SPEAKER_7POINT1 |
在上表中,DirectSound 會使用相同的通道遮罩來指定其耳機和身歷聲喇叭組態,KSAUDIO_SPEAKER_STEREO。 為了區分這兩個組態,DirectSound 會傳送第二個 set-property 要求,以指定說話者幾何 (查看 KSPROPERTY_AUDIO_STEREO_SPEAKER_GEOMETRY) 。 為了指出耳機,DirectSound 會以喇叭幾何要求傳遞值KSAUDIO_STEREO_SPEAKER_GEOMETRY_HEADPHONE。
不過,在身歷聲喇叭的情況下, SetSpeakerConfig 的呼叫端可以指定數個可能的其中一個DSSPEAKER_Xxx 身歷聲喇叭幾何。 這些資料會出現在下表的左欄中,而對等的 KSAUDIO_Xxx 參數會出現在右側。
DSSPEAKER Stereo-Speaker Geometry | KSAUDIO Stereo-Speaker Geometry |
---|---|
DSSPEAKER_GEOMETRY_WIDE |
KSAUDIO_STEREO_SPEAKER_GEOMETRY_WIDE |
DSSPEAKER_GEOMETRY_NARROW |
KSAUDIO_STEREO_SPEAKER_GEOMETRY_NARROW |
DSSPEAKER_GEOMETRY_MIN |
KSAUDIO_STEREO_SPEAKER_GEOMETRY_MIN |
DSSPEAKER_GEOMETRY_MAX |
KSAUDIO_STEREO_SPEAKER_GEOMETRY_MAX |
如果呼叫端未明確指定上述左欄中的其中一個幾何,則 DirectSound 預設會假設DSSPEAKER_GEOMETRY_WIDE。