Commit Graph

122 Commits

Author SHA1 Message Date
Rémi Bernon 2e1934598d mmdevapi: Support new AUDCLNT_* creation flags.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=25173
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=45700
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>
2020-07-13 21:22:11 +02:00
Rémi Bernon a8e7523ff1 winealsa.drv: Increase buffer size to fix format-overflow warning.
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>
2019-11-14 21:03:56 +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 b56d19d3a0 mmdevapi: Avoid reporting odd numbers of channels.
Fixes sound in Touhou Luna Nights with some surround sound
configurations.

Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-10 23:20:41 +02:00
Gabriel Ivăncescu 9d48b3294c winealsa.drv: Adjust the buffer volume before sending it to ALSA.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=38182
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>
2019-05-28 20:12:39 +02:00
Michael Stefaniuc edf2df3679 winealsa.drv: Remove useless cast to self.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-26 20:25:02 +01:00
Michael Stefaniuc 05a6b3049d winealsa.drv: 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 10:16:02 +02:00
Andrey Gusev f4131cbe97 winealsa.drv: Fix uninitialized variable warning.
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>
2017-07-18 20:43:34 +02:00
Michael Stefaniuc 383cc92197 winealsa.drv: Use debugstr_guid() to trace a guid.
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-08 21:51:30 +09:00
Andrew Eikum b8753ada42 winealsa.drv: Default to Stereo instead of 5.1 Surround.
Some popular ALSA plugins claim support for a large number of channels
because they have the capability to mix that down to the actual hardware
configuration.

Instead of defaulting to 5.1 Surround sound for these plugins, let's
fall back on the much more common Stereo configuration.  Users with
actual 5.1 Surround setups can tell us about it in winecfg.
2015-05-19 19:24:20 +09:00
Nikolay Sivov 8095210d2c winealsa: Fix a leak of a silence buffer (Valgrind). 2015-04-13 15:04:59 +09:00
Michael Stefaniuc 8fcfa67a56 winealsa.drv: The result of a comparison is already a BOOL. 2015-04-01 17:02:34 +09:00
Mark Harmstone dcf8767b58 winealsa: Do not destroy remapping info on IsFormatSupported. 2015-01-13 17:51:30 +01:00
Mark Harmstone a3f33daa6a winealsa: Support up to 6 channels. 2015-01-05 16:28:03 +01:00
Mark Harmstone acccdce4c4 winealsa: Return PKEY_AudioEndpoint_PhysicalSpeakers device prop. 2014-12-29 22:20:30 +01:00
Andrew Eikum d301254e72 mmdevapi: More accurately track device position. 2014-12-17 17:10:20 +01:00
Mark Harmstone a73669aed8 winealsa: Implement GetPropValue and return device path. 2014-12-04 22:16:38 +01:00
Mark Harmstone 8fe52db332 winealsa: Disable channel remapping for capture devices. 2014-11-10 19:23:32 +09:00
Sebastian Lackner ef1aad985d winealsa.drv: Avoid endless loop if registry keys are not accessible. 2014-11-04 16:11:26 +09:00
Andrew Eikum b950b9a835 mmdevapi: Don't stop sending event signals after IAudioClient::Stop. 2014-06-30 10:32:36 +02:00
Marcus Meissner eddf841ab3 winealsa/wineoss/winecoreaudio: Calculate frequency in 64bit (Coverity). 2014-06-17 09:07:34 +02:00
Andrew Eikum 0e84a59d89 mmdevapi: Clock rate should be in bytes for shared mode. 2014-05-19 16:01:07 +02:00
Andrew Eikum b634666e13 mmdevapi: Make buffer size divisible by number of periods. 2014-05-19 16:01:03 +02:00
Frédéric Delanoy 901fff3c07 winealsa.drv: Use BOOL type where appropriate. 2013-12-02 10:54:56 +01:00
Andrew Eikum a5975bb601 mmdevapi: Fill buffer with silence in IAudioRenderClient::GetBuffer. 2013-11-12 19:06:09 +01:00
Jeff Klein 4e565b0ef0 winealsa.drv: Implement IMarshal for IAudioClient. 2013-08-02 11:36:31 +02:00
Alexandre Julliard d2f41e762a winealsa.drv: Don't bother to delete critical sections at process exit. 2013-05-16 12:56:31 +02:00
Andrew Talbot 23bf25b0c0 winealsa.drv: Avoid signed-unsigned integer comparisons. 2013-03-04 11:15:02 +01:00
Jörg Höhle a39e423f6f mmdevapi: Avoid lock contention after SetEvent. 2012-12-20 18:06:53 +01:00
Jörg Höhle 17f098869f winealsa: Separate read and write pointers. 2012-12-18 19:21:31 +01:00
Jörg Höhle b18c5e811f mmdevapi: SetEventHandle is allowed only once. 2012-12-18 16:30:36 +01:00
Andrew Eikum 4f32f8e185 winealsa.drv: Be less strict about wValidBitsPerSample. 2012-12-14 17:37:45 +01:00
Andrew Eikum 1d1aa7e8a1 winealsa.drv: Improve IsFormatSupported handling. 2012-12-04 00:02:15 +01:00
Jörg Höhle c596ddffab winealsa: Fix capture overrun logging. 2012-10-31 18:07:40 +01:00
Henri Verbeet fd06135d51 winealsa: Avoid depending on ddraw.h. 2012-10-25 22:27:43 +02:00
Andrew Eikum 19e9de7dde winealsa.drv: Special-case copying common sample sizes in a tight loop. 2012-08-22 12:00:09 +02:00
Andrew Eikum d402231e3f winealsa.drv: Remap mmdevapi channels to correct ALSA channels. 2012-08-17 09:56:13 +02:00
Andrew Eikum 36eb79e7f8 winealsa.drv: Don't cap the allowed number of channels. 2012-08-17 09:56:08 +02:00
Francois Gouget fac36c55e9 Assorted typo, spelling, wording and case fixes. 2012-05-15 16:26:43 +02:00
Marcus Meissner 272535b948 winealsa.drv: Fixed buffer to RegEnumKeyExW. 2012-04-10 16:21:30 +02:00
Andrew Eikum f461e8496d winealsa.drv: Enumerate ALSA devices in a single pass. 2012-04-09 17:23:08 +02:00
Andrew Eikum ea231aba40 winealsa.drv: Prefix device names with direction indication. 2012-04-05 11:56:04 +02:00
Andrew Eikum e87cb774d1 mmdevapi: Use device GUIDs as unique identifiers. 2012-04-04 17:25:25 +02:00
Andrew Eikum 027623a007 winealsa.drv: Use device GUIDs as keys. 2012-04-04 17:24:49 +02:00
Andrew Eikum 73cdf6530c winealsa.drv: Optionally load extra ALSA device names from the registry. 2012-02-15 12:06:38 +01:00
Alexandre Julliard 19015ae19e winealsa: Avoid memory leak with snd_card_get_name. 2012-02-01 16:55:53 +01:00
Andrew Eikum 5860a5b386 mmdevapi: Correctly convert UINT32 to LONG32. 2012-01-30 20:44:50 +01:00
Jörg Höhle 594002d011 winealsa: Fix -errno typo. 2012-01-27 18:05:55 +01:00
Andrew Eikum 7c52a257fb winealsa: Avoid underrun by adding a lead-in when starting with few samples. 2012-01-27 18:05:55 +01:00