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
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
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
Alexandre Julliard
eae787f913
mmdevapi: Build with msvcrt.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-11 08:27:51 +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
Nikolay Sivov
054f1e8c1a
mmdevapi: Fix pointer type cast.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-06 19:28:42 +01:00
Andrew Eikum
ba858c28fd
mmdevapi: Fix some DEVPKEY definitions.
...
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-10 00:39:05 +09:00
Andrey Gusev
424e2addfa
mmdevapi: Use debugstr_guid() in TRACE() message.
...
Signed-off-by: Andrey Gusev <andrey.goosev@gmail.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-23 12:06:40 +09:00
Nikolay Sivov
c5b6e31438
mmdevapi: Use regular list iterator.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-07 22:23:41 +09:00
Andrew Eikum
89de040e4f
mmdevapi: Implement IAudioEndpointVolume::GetVolumeRange.
...
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-10 11:26:09 +09:00
André Hentschel
bbc42a2341
mmdevapi: Skip device if GetId fails (Coverity).
...
Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-12-23 16:32:15 +01:00
Nikolay Sivov
336cc78744
mmdevapi: Return interface pointers instead of impl pointers.
2015-06-01 14:52:40 +09:00
Andrew Eikum
b55cc5e4c5
mmdevapi: Always use 64-bit registry keys.
2015-05-04 15:06:22 +09:00
Nikolay Sivov
f4096a30ea
mmdevapi: Fix returned format leak (Valgrind).
2015-04-13 15:05:03 +09:00
Michael Stefaniuc
a514fe7642
mmdevapi: Don't check for IID_IDirectSoundCapture8, it is just a define (PVS-Studio).
2015-03-06 20:32:02 +09:00
Mark Harmstone
e20307099f
mmdevapi: Do nothing on property store Commit.
2015-02-03 16:30:57 +09:00
Mark Harmstone
7b8dbc4776
mmdevapi: Allow PKEY_AudioEndpoint_PhysicalSpeakers to be overridden.
2015-01-27 21:30:15 +01:00
Mark Harmstone
acccdce4c4
winealsa: Return PKEY_AudioEndpoint_PhysicalSpeakers device prop.
2014-12-29 22:20:30 +01:00
Mark Harmstone
b1ff68b803
mmdevapi: Allow GetPropValue function in audio drivers.
2014-12-04 22:15:34 +01:00
Frédéric Delanoy
e50dfb69ee
mmdevapi: Use BOOL type where appropriate.
2013-11-12 12:58:03 +01:00
Jeff Klein
5b47e9b382
mmdevapi: Correct MMDevPropStore_GetAt.
2013-10-02 13:04:25 +02:00
Thomas Faber
513f8286cb
mmdevapi: Fix build with MSVC.
2013-09-30 20:35:03 +02:00
Andrew Eikum
d4e9b26cbb
mmdevapi: Send notifications to clients when the user-selected default device changes.
2012-12-15 16:33:31 +01:00
Andrew Eikum
8d775ec09b
mmdevapi: Implement (Un)RegisterEndpointNotificationCallback.
2012-12-15 16:33:25 +01:00
Henri Verbeet
5e93aa38ab
mmdevapi: Avoid a couple of dependencies on ddraw.h.
2012-11-05 11:30:30 +01:00
Jacek Caban
223105b9b3
mmdevapi: Use proper helpers for iface calls.
2012-08-15 12:18:39 +02:00
Francois Gouget
4a27f7bf27
mmdevapi: Make MMDevice_GetPropValue() static.
2012-06-12 11:11:29 +02:00
Michael Stefaniuc
5c47973c24
mmdevapi: Remove superfluous NULL pointer check before HeapFree (Smatch).
2012-04-16 11:51:24 +02:00
Andrew Eikum
06c1f255f8
mmdevapi: Indicate data flow direction in IMMDevice::GetId result.
2012-04-06 20:12:26 +02:00
Andrew Eikum
e6638bd86f
mmdevapi: Store device interface in registry.
2012-04-06 20:12:05 +02:00
Andrew Eikum
e87cb774d1
mmdevapi: Use device GUIDs as unique identifiers.
2012-04-04 17:25:25 +02:00
Andrew Eikum
edab3b13f7
mmdevapi: TRACE all COM method calls.
2012-03-28 19:05:06 +02:00
Andrew Eikum
f7d37b38fe
mmdevapi: Only return ACTIVE devices from GetDefaultAudioEndpoint.
...
This prevents invalid devices from being created if the user adds a
device, sets it as default, and then removes it.
2012-02-15 11:56:47 +01:00
Andrew Eikum
66724f617e
mmdevapi: Attempt to determine default devices from the registry.
...
This uses a new, Wine-specific registry key
<HKCU\Software\Wine\Drivers\wine<driver>.drv> to determine the correct
device to use for the various defaults. The drivers still supply their
own defaults which will be chosen if no registry entry is defined. For
portability we use a driver-specific key in order to support default
devices for each of the driver backends.
2011-10-05 16:50:29 -05:00
Andrew Eikum
6adf21173c
mmdevapi: Don't use invalid This pointer on static object.
2011-09-30 10:32:14 -05:00
Henri Verbeet
748efc34c4
mmdevapi: Add a TRACE to info_device_ps_GetValue().
2011-09-02 10:11:34 +02:00
Henri Verbeet
a4fddf5fc8
mmdevapi: Include space for the terminating zero in info_device_ps_GetValue().
2011-09-02 10:11:25 +02:00
Andrew Eikum
f6890ef0e2
winmm: Determine the driver from MMDevAPI.
...
This uses a half-implemented, Wine-specific IMMDevice object to extract
the driver name.
2011-09-01 18:06:37 +02:00
Andrew Eikum
23c26982e9
mmdevapi: Disable sound if the user explicitly selects no driver.
...
This also tweaks the no-driver behavior to report 0 active devices
instead of returning an error code.
2011-08-23 16:53:52 +02:00
Andrew Eikum
f50829c36e
mmdevapi: Don't crash if a driver fails to load.
2011-06-20 11:28:53 +02:00
Andrew Eikum
bc10fd3ce6
mmdevapi: Sessions should be unique per-device.
2011-06-14 12:59:39 +02:00
Andrew Eikum
4e7d039722
mmdevapi: Add support for IAudioSessionManager in IMMDevice::Activate.
2011-06-06 21:49:19 +02:00
Andrew Eikum
91b684325f
mmdevapi: IMMDeviceEnumerator::GetDevice should fail on unknown device ids.
2011-05-16 16:35:27 +02:00
Andrew Eikum
5014099928
mmdevapi: Reimplement using a driver system.
2011-04-25 17:24:50 +02:00
Francois Gouget
fc4014454b
mmdevapi: Reorder a couple of functions to avoid forward declarations and make MMDevice_SetPropValue() static.
2011-04-11 12:07:39 +02:00
Michael Stefaniuc
00d1915902
mmdevapi: Use ifaces instead of vtbl pointers in MMDevice.
2011-01-17 13:23:39 +01:00
Marcus Meissner
acefa93cd6
mmdevapi: Fixed buffer size passed to RegEnumKeyExW.
2010-12-31 16:27:47 +01:00
Michael Stefaniuc
1df7dab115
mmdevapi: Standardize the COM usage in devenum.c.
2010-12-14 12:10:58 +01:00
Henri Verbeet
5c99f4ec6d
mmdevapi: Remove the useless CINTERFACE definitions.
2010-08-17 11:55:33 +02:00