-
3237d949
by Giovanni Mascellani at 2025-11-07T16:18:42+01:00
dsound: Use AUTOCONVERTPCM when initializing the render audio client.
Initializing the audio client without AUTOCONVERTPCM is expected
to fail when the requested sampling rate or channel count does not
match the mixing format. Such behavior is not currently modeled on
Wine, but it should be introduced, and since here we expect
automatic format conversion to work we add the flag.
-
bfa7387c
by Giovanni Mascellani at 2025-11-07T16:18:42+01:00
dsound: Always require a floating-point mixing format.
The mixer algorithm only supports floating-point, any other format
is just unusable for us. Also, AUTOCONVERTPCM is expected to do
automatic conversion anyway.
-
a3fd8815
by Giovanni Mascellani at 2025-11-07T16:18:42+01:00
dsound: Simplify computing the mixing format.
-
94341f9a
by Giovanni Mascellani at 2025-11-07T16:18:42+01:00
dsound: Do not query for mixing format support.
Despite its name, IsFormatSupported() doesn't really predict what
Initialize() will return, especially when AUTOCONVERTPCM is used.
So there's no point querying it, let's just call Initialize() and
that will tell whether the format is accepted or not.
It is also useless to change to the recommended format: both if
we're going to use a primary buffer or not, the format that is
computer in DSOUND_WaveFormat() is what everything else expects,
and if it cannot be satisfied there's not point continuing.
-
b1ee321e
by Giovanni Mascellani at 2025-11-07T16:18:42+01:00
dsound: Do not query for supported formats for the primary buffer.
We use AUTOCONVERTPCM, so everything is supported anyway.