Commit graph

260 commits

Author SHA1 Message Date
Davide Beatrici 2fa22538a5 mmdevapi: Integrate winecoreaudio's additions in unixlib.h.
The data type for "done" was accidentally changed in e29dc33aeb.

BOOL is basically the same as UINT32, but it should only be used for flags.
BOOLEAN would be better for that though, as it's single-byte.
2022-09-16 19:15:05 +02:00
Davide Beatrici d2c9a9f021 mmdevapi: Integrate wineoss's additions in unixlib.h. 2022-09-08 18:41:10 +02:00
Davide Beatrici 51604ad186 mmdevapi/tests: Fix fail message referencing "Start" instead of "Stop" in test_session(). 2022-08-23 09:40:01 -05:00
Davide Beatrici 447615747f mmdevapi/tests: Fix typos in spatial audio fail messages. 2022-08-23 09:40:01 -05:00
Davide Beatrici ebdee3cd80 mmdevapi/tests: Distinguish GetChannelCount() calls in test_volume_dependence() fail messages. 2022-08-23 09:40:00 -05:00
Davide Beatrici 874260d12e mmdevapi/tests: Fix fail messages referencing GetChannelCount() instead of GetChannelVolume(). 2022-08-23 09:40:00 -05:00
Davide Beatrici e29dc33aeb mmdevapi: Integrate winepulse's additions in unixlib.h. 2022-08-16 22:27:53 +02:00
Davide Beatrici 19baa29565 winealsa: Move common unixlib.h content into mmdevapi. 2022-08-16 22:27:53 +02:00
Claire Girka 67f9c76386 mmdevapi: Override product strings for DualSense controller audio devices.
Some games expect the DualSense audio device (used for haptic feedback and
controller speaker) to be called “Wireless Controller”.
2022-06-30 19:03:30 +02:00
Jacek Caban 9a8fdc724b mmdevapi: Remove android from default driver list.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
2022-06-07 15:26:08 +02:00
Gabriel Ivăncescu 653d04d7f9 mmdevapi: Warn if returned device name is too long.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-26 19:02:59 +02:00
Gabriel Ivăncescu f5fc65ab86 mmdevapi: Don't clear possibly uninitialized PropVariant.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-26 19:02:59 +02:00
Eric Pouech 8e1b054be4 mmdevapi/tests: Enable compilation with long types.
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-03-03 21:30:35 +01:00
Eric Pouech 86891eeadf mmdevapi: Enable compilation with long types.
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-15 16:34:16 +01:00
Alexandre Julliard f0cd33c69e include: Add support for defining Win32 types as 'long' where possible.
Add -DWINE_NO_LONG_TYPES to modules that still have compilation
warnings with long types.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-27 20:38:22 +01:00
Rémi Bernon 32ee835d3c mmdevapi/tests: Check that GetMixFormat returns an IEEE_FLOAT format.
And that a corresponding PCM format is supported.

Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-21 16:58:36 +01:00
Alexandre Julliard 088a787a2c makefiles: Make -mno-cygwin the default.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-20 22:45:48 +02:00
Rémi Bernon ff57031d16 mmdevapi: Use a struct list to keep device list.
It's not guarded but devices are only created on driver initialization
and destroyed on DLL detach.

Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-04 20:01:39 +02:00
Rémi Bernon 0f147492de mmdevapi: Load devices on driver initialization.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-04 20:01:36 +02:00
Rémi Bernon 4caea555af mmdevapi: Make MMDevEnumerator a static variable.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-04 20:01:33 +02:00
Alexandre Julliard c45d792de3 mmdevapi: Avoid wcsncpy().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-04 21:33:14 +02:00
Alexandre Julliard 5d82baf974 winecrt0: Add a default implementation DllRegisterServer()/DllUnregisterServer().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-30 22:59:50 +02:00
Alexandre Julliard bd6b53740c winecrt0: Add a default implementation for DllCanUnloadNow().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-30 22:59:50 +02:00
Paul Gofman 11daf18690 mmdevapi: Return success from SAORS_GetAvailableDynamicObjectCount().
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Arkadiusz Hiler <arek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-22 21:12:54 +02:00
Andrew Eikum 6de9bd06ba mmdevapi: Support device ID paths in ActivateAudioInterfaceAsync.
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-14 17:04:35 +02:00
Jacek Caban 25f5734ead mmdevapi/tests: Use nameless unions.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-26 16:48:30 +01:00
Jacek Caban e636c2a22a mmdevapi: Use nameless unions.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-26 16:48:30 +01:00
Jacek Caban b39b9eea39 include: Don't default to WINE_NO_NAMELESS_EXTENSION for Wine build.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-22 21:48:38 +01:00
Paul Gofman 1d66a108b9 mmdevapi: Make spatial audio objects buffer update size constant.
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-19 19:55:34 +01:00
Arkadiusz Hiler 3cdf1fa928 mmdevapi: Add SpatialAudio tests.
Signed-off-by: Arkadiusz Hiler <ahiler@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-04 23:11:22 +01:00
Andrew Eikum 7e64247a6e mmdevapi: Implement SpatialAudio features.
This makes car radio / ambient noises audible in Cyberpunk 2077.

Signed-off-by: Arkadiusz Hiler <ahiler@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-04 23:11:22 +01:00
Michael Stefaniuc 591f06d85e mmdevapi: Use wide-char string literals.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-25 21:39:18 +01:00
Andrew Eikum db87636c91 mmdevapi: Support older version of the AudioClientProperties structure.
Warframe when using a win10 prefix uses an xaudio2_9redist.dll which
uses the older AudioClientProperties structure (missing the Options
member).

Based on a patch by Alistair Leslie-Hughes.

Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-20 21:13:53 +01:00
Francois Gouget 7bc0cbc078 mmdevapi/tests: Work around Initialize() render breakage on Win 10.
Calling Initialize() twice causes later Start() operations to report a
failure on Windows 10 >= 1607.

Signed-off-by: Francois Gouget <fgouget@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-12 20:22:33 +01:00
Francois Gouget 8f956d4f3a mmdevapi/tests: Only warn about the console when it is used.
Signed-off-by: Francois Gouget <fgouget@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-12 20:22:33 +01:00
Sven Baars a66bb83191 mmdevapi/tests: Fix some test failures on Windows <= 7.
Signed-off-by: Sven Baars <sbaars@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-13 20:41:16 +02:00
Andrew Eikum 2b69540e74 mmdevapi: Implement ActivateAudioInterfaceAsync.
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-06 21:47:56 +02:00
Andrew Eikum 6314a75006 mmdevapi: Stub implement IAudioClient3.
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-02 09:59:28 +02:00
Andrew Eikum d8ae98d421 mmdevapi: Implement SetClientProperties.
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-02 09:58:45 +02:00
Andrew Eikum 530c79fba2 mmdevapi: Implement IsOffloadCapable.
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-02 09:58:42 +02:00
Andrew Eikum 370a538e54 mmdevapi: Stub implement IAudioClient2.
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-02 09:58:40 +02:00
Alex Henrie 3ea35e7ea1 mmdevapi: Report 100% volume in GetMasterVolumeLevelScalar stub.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=31890
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-24 12:35:03 +01:00
Andrew Eikum 227c47e7a0 mmdevapi: Return E_INVALIDARG for invalid share mode argument.
Matches Windows 10 behavior.

Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-27 19:16:56 +01:00
Andrew Eikum 3c1ee2f80d mmdevapi: Set data pointer to NULL on IAudioCaptureClient::GetBuffer failure.
Matches Windows 10 behavior.

Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-27 19:16:53 +01:00
Andrew Eikum 90f53193ff mmdevapi/tests: Use discontinuity flag to detect broken win7 behavior.
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-27 19:16:50 +01:00
Andrew Eikum ba340e741a mmdevapi/tests: Avoid race condition in capture test.
These tests depended on no data being put into the buffer between calls
to Start() and GetBuffer().

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=47876
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-27 19:16:45 +01:00
Francois Gouget 0cab8eb30d mmdevapi/tests: Fix the spelling of ok() messages.
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-30 11:47:58 +02:00
Alexandre Julliard eae787f913 mmdevapi: Build with msvcrt.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-11 08:27:51 +02:00
Sven Baars acea82ac74 mmdevapi/tests: Use PropVariantClear after calling IPropertyStore_GetValue (Valgrind).
Signed-off-by: Sven Baars <sven.wine@gmail.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-03 22:33:30 +02:00
Michael Stefaniuc a486cd78a3 mmdevapi: Use the ARRAY_SIZE() macro.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-14 09:38:42 +02:00