Windows 驅動程式套件 (WDK) 包含兩個標頭檔,可定義 Windows 多媒體控制台所支援的喇叭設定:
Ksmedia.h defines the channel masks for the KSAUDIO_CHANNEL_CONFIG structure that is used by the KSPROPERTY_AUDIO_CHANNEL_CONFIG property request.
Dsound.h defines a list of speaker-configuration identifiers that can be submitted to the IDirectSound::SetSpeakerConfig method. 如需此方法的詳細資訊,請參閱 Windows SDK 檔。
在 Windows Server 2003、Windows XP SP1、Windows 2000 和 Windows Me/98 中,Ksmedia.h 會定義下表中顯示的 5.1 和 7.1 通道資料流程通道遮罩。
| Parameter name | Channel mask | Speaker positions |
|---|---|---|
KSAUDIO_SPEAKER_5POINT1 |
0x3F |
佛羅里達州、法國、足球俱樂部、倫敦、英國、巴西 |
KSAUDIO_SPEAKER_7POINT1 |
0xFF |
佛羅里達州、法國、法國、 |
上表中的兩個通道遮罩代表 5.1 喇叭設定和 7.1 喇叭設定。 為了識別相同的兩個揚聲器配置,Dsound.h 定義了以下揚聲器配置標識碼:
#define DSSPEAKER_5POINT1 0x00000006
#define DSSPEAKER_7POINT1 0x00000007
在 Windows XP SP2 和更新版本的 Windows 中,Ksmedia.h 會定義下表中顯示的 5.1 和 7.1 通道資料流程的通道遮罩。
| Parameter name | Channel mask | Speaker positions |
|---|---|---|
KSAUDIO_SPEAKER_5POINT1 |
0x3F |
佛羅里達州、法國、足球俱樂部、倫敦、英國、巴西 |
KSAUDIO_SPEAKER_7POINT1_SURROUND |
0x63F |
佛羅里達州、法國、足球俱樂部、LFE、BL、BR、SL、SR |
透過比較前兩張表,可以明顯看出以下幾點:
第一個資料表中0x3F的通道遮罩意義在第二個資料表中並未變更,即使在 Windows SP2 和更新版本的 Windows 中,KSAUDIO_SPEAKER_5POINT1 會解譯為使用 SL 和 SR 喇叭,而不是 BL 和 BR。
支援值為0x63F的新通道遮罩。 此聲道遮罩代表 7.1 家庭劇院揚聲器配置。
Note In Windows Vista and later versions of Windows, the KSAUDIO_SPEAKER_7POINT1 speaker configuration is no longer supported. 因此,它不是控制台中的可用選項。
為了代表同一組揚聲器設定,Dsound.h 會定義下列揚聲器設定標識碼:
#define DSSPEAKER_5POINT1 0x00000006
#define DSSPEAKER_7POINT1 0x00000007
#define DSSPEAKER_7POINT1_SURROUND 0x00000008
#define DSSPEAKER_7POINT1_WIDE DSSPEAKER_7POINT1
DSSPEAKER_7POINT1_SURROUND代表控制台中新的 7.1 家庭劇院揚聲器配置。 DSSPEAKER_7POINT1 和 DSSPEAKER_7POINT1_WIDE 都是相同 7.1 寬配置揚聲器配置的名稱。
如需 DirectSound 喇叭設定的詳細資訊,請參閱 DirectSound Speaker-Configuration 設定。