dsound: Vista/XP SP2 reworked the Speaker Configuration.
This commit is contained in:
parent
33c7a865cb
commit
999423d34e
|
@ -1172,7 +1172,7 @@ static HRESULT DirectSoundDevice_Create(DirectSoundDevice ** ppDevice)
|
|||
device->ref = 1;
|
||||
device->priolevel = DSSCL_NORMAL;
|
||||
device->state = STATE_STOPPED;
|
||||
device->speaker_config = DSSPEAKER_STEREO | (DSSPEAKER_GEOMETRY_NARROW << 16);
|
||||
device->speaker_config = DSSPEAKER_COMBINED(DSSPEAKER_STEREO, DSSPEAKER_GEOMETRY_WIDE);
|
||||
|
||||
/* 3D listener initial parameters */
|
||||
device->ds3dl.dwSize = sizeof(DS3DLISTENER);
|
||||
|
|
|
@ -1206,7 +1206,7 @@ static DWORD get_channel_mask(unsigned int channels)
|
|||
case 7:
|
||||
return KSAUDIO_SPEAKER_5POINT1 | SPEAKER_BACK_CENTER;
|
||||
case 8:
|
||||
return KSAUDIO_SPEAKER_7POINT1; /* not 7POINT1_SURROUND */
|
||||
return KSAUDIO_SPEAKER_7POINT1_SURROUND; /* Vista deprecates 7POINT1 */
|
||||
}
|
||||
FIXME("Unknown speaker configuration: %u\n", channels);
|
||||
return 0;
|
||||
|
|
|
@ -700,7 +700,7 @@ static DWORD get_channel_mask(unsigned int channels)
|
|||
case 7:
|
||||
return KSAUDIO_SPEAKER_5POINT1 | SPEAKER_BACK_CENTER;
|
||||
case 8:
|
||||
return KSAUDIO_SPEAKER_7POINT1; /* not 7POINT1_SURROUND */
|
||||
return KSAUDIO_SPEAKER_7POINT1_SURROUND; /* Vista deprecates 7POINT1 */
|
||||
}
|
||||
FIXME("Unknown speaker configuration: %u\n", channels);
|
||||
return 0;
|
||||
|
|
|
@ -657,7 +657,7 @@ static DWORD get_channel_mask(unsigned int channels)
|
|||
case 7:
|
||||
return KSAUDIO_SPEAKER_5POINT1 | SPEAKER_BACK_CENTER;
|
||||
case 8:
|
||||
return KSAUDIO_SPEAKER_7POINT1; /* not 7POINT1_SURROUND */
|
||||
return KSAUDIO_SPEAKER_7POINT1_SURROUND; /* Vista deprecates 7POINT1 */
|
||||
}
|
||||
FIXME("Unknown speaker configuration: %u\n", channels);
|
||||
return 0;
|
||||
|
|
|
@ -301,13 +301,18 @@ typedef struct _DSBPOSITIONNOTIFY
|
|||
} DSBPOSITIONNOTIFY,*LPDSBPOSITIONNOTIFY;
|
||||
typedef const DSBPOSITIONNOTIFY *LPCDSBPOSITIONNOTIFY;
|
||||
|
||||
#define DSSPEAKER_DIRECTOUT 0
|
||||
#define DSSPEAKER_HEADPHONE 1
|
||||
#define DSSPEAKER_MONO 2
|
||||
#define DSSPEAKER_QUAD 3
|
||||
#define DSSPEAKER_STEREO 4
|
||||
#define DSSPEAKER_SURROUND 5
|
||||
#define DSSPEAKER_5POINT1 6
|
||||
#define DSSPEAKER_5POINT1_BACK 6
|
||||
#define DSSPEAKER_7POINT1 7
|
||||
#define DSSPEAKER_7POINT1_WIDE 7
|
||||
#define DSSPEAKER_7POINT1_SURROUND 8
|
||||
#define DSSPEAKER_5POINT1_SURROUND 9
|
||||
|
||||
#define DSSPEAKER_GEOMETRY_MIN 0x00000005 /* 5 degrees */
|
||||
#define DSSPEAKER_GEOMETRY_NARROW 0x0000000A /* 10 degrees */
|
||||
|
|
|
@ -34,8 +34,10 @@ DEFINE_GUID(KSDATAFORMAT_SUBTYPE_ALAW, 0x00000006, 0x0000, 0x0010, 0x80, 0x00, 0
|
|||
#define KSAUDIO_SPEAKER_QUAD (SPEAKER_FRONT_LEFT | SPEAKER_FRONT_RIGHT | SPEAKER_BACK_LEFT | SPEAKER_BACK_RIGHT)
|
||||
#define KSAUDIO_SPEAKER_SURROUND (SPEAKER_FRONT_LEFT | SPEAKER_FRONT_RIGHT | SPEAKER_FRONT_CENTER | SPEAKER_BACK_CENTER)
|
||||
#define KSAUDIO_SPEAKER_5POINT1 (SPEAKER_FRONT_LEFT | SPEAKER_FRONT_RIGHT | SPEAKER_FRONT_CENTER | SPEAKER_LOW_FREQUENCY | SPEAKER_BACK_LEFT | SPEAKER_BACK_RIGHT)
|
||||
/* 5:1 SIDE or BACK is not distinguished, only 0x3F shall be used (BACK) */
|
||||
#define KSAUDIO_SPEAKER_5POINT1_SURROUND (SPEAKER_FRONT_LEFT | SPEAKER_FRONT_RIGHT | SPEAKER_FRONT_CENTER | SPEAKER_LOW_FREQUENCY | SPEAKER_SIDE_LEFT | SPEAKER_SIDE_RIGHT)
|
||||
#define KSAUDIO_SPEAKER_7POINT1 (KSAUDIO_SPEAKER_5POINT1 | SPEAKER_FRONT_LEFT_OF_CENTER | SPEAKER_FRONT_RIGHT_OF_CENTER)
|
||||
/* 7:1 home theater 0x63F */
|
||||
#define KSAUDIO_SPEAKER_7POINT1_SURROUND (KSAUDIO_SPEAKER_5POINT1 | SPEAKER_SIDE_LEFT | SPEAKER_SIDE_RIGHT)
|
||||
|
||||
#ifndef REFERENCE_TIME_DEFINED
|
||||
|
|
Loading…
Reference in New Issue