Commit Graph

182 Commits

Author SHA1 Message Date
Andrew Eikum e87cb774d1 mmdevapi: Use device GUIDs as unique identifiers. 2012-04-04 17:25:25 +02:00
Andrew Eikum f63267db80 wineoss.drv: Use device GUIDs as keys. 2012-04-04 17:24:54 +02:00
Andrew Eikum 7437eb63fc wineoss.drv: Fix DeleteTimerQueueTimer usage. 2012-02-23 17:40:29 +01:00
Andrew Eikum 67617c78a5 wineoss.drv: Downgrade most ERRs to WARNs. 2012-02-07 14:02:49 -06:00
Andrew Eikum bb1ca58114 wineoss.drv: Don't call GETOSPACE immediately after device initialization. 2012-02-06 10:24:04 -06:00
Andrew Eikum 5860a5b386 mmdevapi: Correctly convert UINT32 to LONG32. 2012-01-30 20:44:50 +01:00
Andrew Eikum 6d3e784d57 wineoss.drv: Fix buffer offset calculation. 2012-01-25 20:39:48 +01:00
Andrew Eikum 2c628af7b2 wineoss.drv: Use GETODELAY instead of GETOSPACE to determine device position. 2012-01-25 20:39:48 +01:00
Andrew Eikum 92e835111b wineoss.drv: Decouple MMDevAPI buffer and OSS buffer. 2012-01-25 20:39:48 +01:00
Jörg Höhle 04cf4dc06f wineoss: Reset accounts for dropped frames in capture mode. 2012-01-13 18:17:32 +01:00
Jörg Höhle 999423d34e dsound: Vista/XP SP2 reworked the Speaker Configuration. 2012-01-13 18:17:31 +01:00
Andrew Eikum 139e31bc00 wineoss.drv: Fix IAudioRenderClient::{Get,Release}Buffer protocol. 2012-01-10 10:48:47 +01:00
Jörg Höhle fcc9b74cb2 mmdevapi: Round buffer size like native in shared mode. 2012-01-09 15:34:47 +01:00
Jörg Höhle 6d23816300 wineoss: GetStreamLatency is constant, SNDCTL_DSP_GETODELAY is dynamic. 2012-01-06 19:24:19 +01:00
Jörg Höhle acd8d60faa mmdevapi: GetDevicePeriod returns constants. 2012-01-06 19:24:17 +01:00
Jörg Höhle 8316a77959 mmdevapi: Avoid HeapRealloc when no data need be copied. 2012-01-06 19:24:17 +01:00
Jörg Höhle 38f9ba0070 mmdevapi: Enforce limits on period and duration. 2011-12-19 20:15:43 +01:00
Francois Gouget c7cb3e6cb2 configure: Use errno.h instead of the non-standard sys/errno.h header. 2011-12-15 17:46:38 +01:00
Andrew Eikum eed756c8dd wineoss.drv: Don't set volume in IAudioClient::Initialize. 2011-12-05 17:39:05 +01:00
Andrew Eikum 3cc871b0b0 wineoss.drv: Add period to latency calculation. 2011-12-01 19:49:11 +01:00
Andrew Eikum 65381d1c37 wineoss.drv: Remove volume setting support. 2011-12-01 19:49:06 +01:00
Jörg Höhle 7c5b90006c mmdevapi: SHAREDMODE_EXCLUSIVE + EVENTCALLBACK is too ... exclusive for now. 2011-11-22 18:24:53 +01:00
Francois Gouget b6117b6869 wineoss.drv: Give a name to the mmdevapi critical sections, make them static and delete them when unloading the dll. 2011-11-15 19:37:35 +01:00
Jörg Höhle 00684f84a5 mmdevapi: IsFormatSupported EXCLUSIVE mode never returns S_FALSE. 2011-10-28 12:49:44 +02:00
Andrew Eikum 1ed42313a9 wineoss.drv: Only write as much data as will fit into the OSS buffer. 2011-10-12 17:06:55 +02:00
Andrew Eikum 8d133f54c2 wineoss.drv: Trim the sub-device part of the device path. 2011-10-11 13:37:49 +02:00
Andrew Eikum 8410dd353c audio: Change winmm import to delayed import. 2011-10-05 14:13:31 -05:00
Andrew Eikum fdda702acd wineoss.drv: Use a temporary OSS device to check format support. 2011-09-28 21:04:36 +02:00
Andrew Eikum f7364dfb4b mmdevapi: Don't fail if dwChannelMask is not set correctly. 2011-09-28 21:04:33 +02:00
Andrew Eikum a83bc10c78 wineoss.drv: Remove wave, mixer, and dsound driver code. 2011-09-26 18:34:20 +02:00
Jörg Höhle fabbebf94b wineoss: Simplify the test for 8bit linear PCM. 2011-09-26 18:09:19 +02:00
Jörg Höhle 8379680095 mmdevapi: Unlock buffer in case of ReleaseBuffer error. 2011-09-22 19:51:52 +02:00
Jörg Höhle 55efce6c9c wineoss: EAGAIN (OSS buffer full) is a regular situation. 2011-09-22 19:51:52 +02:00
Jörg Höhle 03ad9366f1 mmdevapi: Fix stuttering upon start and underrun. 2011-09-22 19:51:52 +02:00
Jörg Höhle 3e1d402881 mmdevapi: IsFormatSupported fills closest match iff it returns S_FALSE. 2011-09-09 14:24:08 +02:00
Jörg Höhle 08dd823c7c mmdevapi: Use UINT32 for a number of frames and UINT64 to sum them. 2011-09-08 20:08:09 +02:00
Jörg Höhle df201d3ef3 mmdevapi: Accept up to 8 channels. 2011-09-07 18:13:29 +02:00
Andrew Eikum c4b94b1ba4 mmdevapi: Automatically select the correct driver. 2011-09-01 18:06:37 +02:00
Jörg Höhle abf5b64f4c mmdevapi: Do not mix frames and bytes. 2011-08-30 17:10:40 +02:00
Jörg Höhle 541075c3db mmdevapi: After GetBuffer, refuse Reset, but Start/Stop is ok. 2011-08-24 11:52:06 +02:00
Jörg Höhle ea47c12ebe wineoss.drv: Fix AudioRenderClient write pointer calculation. 2011-08-22 16:14:34 +02:00
Marcus Meissner 2de37f0214 wineoss.drv: Print strerror of errno, not of -1 (Coverity). 2011-08-22 16:14:31 +02:00
Francois Gouget ed3c9a1eca Assorted spelling fixes. 2011-08-03 14:15:48 +02:00
Andrew Eikum e0f1aa0b05 wineoss.drv: Choose default device using a better method. 2011-07-27 19:42:42 +02:00
Andrew Eikum 80fd691e9e mmdevapi: Use a sane default if no buffer size is requested. 2011-07-18 18:31:06 +02:00
Francois Gouget a53e011021 wineoss.drv: Add a trailing '\n' to a TRACE() call. 2011-07-18 16:23:29 +02:00
Andrew Eikum 2174717fbd mmdevapi: Only enumerate devices that can be opened during initialization. 2011-07-14 14:39:46 +02:00
Francois Gouget 5e6d17384f wineoss.drv: Make the AudioSessionManager methods static. 2011-07-11 18:31:53 +02:00
Jacek Caban dbba09ca29 audiopolicy.idl: Fixed SetGroupingParam declaration. 2011-07-04 13:45:14 +02:00
Andrew Eikum 0085689f5d mmdevapi: Implement ISimpleAudioVolume::{Set, Get}Mute. 2011-06-20 19:31:57 +02:00
Andrew Eikum a93efd5346 mmdevapi: Fix refcounts in IAudioClient::GetService. 2011-06-20 19:31:39 +02:00
Andrew Eikum bc10fd3ce6 mmdevapi: Sessions should be unique per-device. 2011-06-14 12:59:39 +02:00
Jörg Höhle f68a36c87b wineoss: Properly allocate the WAVEFORMATEXTENSIBLE returned by GetMixFormat. 2011-06-06 21:49:21 +02:00
Andrew Eikum a63346aa40 wineoss.drv: Partially implement IAudioSessionManager2. 2011-06-06 21:49:18 +02:00
Marcus Meissner f8c8c13cc5 wineoss.drv: Mark internal symbols with hidden visibility. 2011-05-30 11:12:32 +02:00
Gerald Pfeifer be57450fee wineoss.drv: Cope with system which lack SNDCTL_DSP_HALT. 2011-05-20 10:35:27 +02:00
Gerald Pfeifer bed73e9e73 wineoss.drv: Support platforms that do not feature AFMT_FLOAT. 2011-05-09 12:08:20 +02:00
Gerald Pfeifer 051b64b66f wineoss.drv: Use AFMT_S24_LE instead of AFMT_S24_PACKED. 2011-05-09 12:07:57 +02:00
Andrew Eikum 733ed828be wineoss.drv: Implement volume control interfaces. 2011-05-09 11:58:46 +02:00
Andrew Eikum 836c5fa5bc wineoss.drv: Move IAudioClock closer to its related interfaces. 2011-05-09 11:58:44 +02:00
Alexandre Julliard 92e05ed981 wineoss: Get rid of %ll printf formats. 2011-05-02 21:03:15 +02:00
Alexandre Julliard f60a0f5e56 configure: Improve the detection of OSS v4. 2011-05-02 20:07:04 +02:00
Andrew Eikum 4a95e7b0c9 wineoss.drv: Implement IAudioSessionControl::GetState. 2011-05-02 18:48:20 +02:00
Andrew Eikum 4a37f2f093 mmdevapi: Initialize global driver data at DLL load time. 2011-05-02 18:48:20 +02:00
Andrew Eikum be332326ba wineoss.drv: Add mmdevapi driver. 2011-04-27 17:47:05 +02:00
Austin English 17adb6c408 wineoss.drv: Remove extraneous parentheses (LLVM/Clang). 2011-04-13 14:13:55 +02:00
Jörg Höhle 75dbd1162e winmm: Audio drivers unconditionally invoke DriverCallback. 2011-04-11 17:32:29 +02:00
Alexandre Julliard 1644b25847 wineoss.drv: Remove unnecessary ifdefs. 2011-03-28 22:11:45 +02:00
Jörg Höhle 3a5c79fac2 wineoss: Fix 64-bits incompatibilities. 2011-03-15 17:14:08 +01:00
Jörg Höhle e7b07680c5 wineoss: Ignore failure to notify winmm wave clients. 2011-03-15 17:14:08 +01:00
Marcus Meissner 242cbcaa27 wineoss.drv: Fixed incorrect sizeof() (Coverity). 2011-02-23 15:00:30 +01:00
Michael Stefaniuc 22d645ab4d wineoss.drv: Standardize the COM usage in dscapture.c. 2010-12-08 16:10:42 +01:00
Alexandre Julliard 81b8ee863e makefiles: Add a standard header for all makefiles to replace the common variable initializations. 2010-09-19 12:36:48 +02:00
Alexandre Julliard b86d515ed6 dlls: Remove explicit imports of kernel32 and ntdll. 2010-07-21 17:38:36 +02:00
Eric Pouech 06b6e3bdc7 wineoss.drv: Be consistent for aux devices about what we actually support. 2010-07-19 11:10:13 +02:00
Michael Stefaniuc 4deab508ba wineoss.drv: Avoid a potential NULL pointer dereference in a TRACE. 2010-05-20 13:47:52 +02:00
Jörg Höhle d531d229e5 wineoss: MOD_MIDIPORT has 0 voices and notes and FFFF ChannelMask. 2010-05-05 10:50:56 +02:00
Jörg Höhle 8aeb9ec03a wineoss: Supply FFFFFFFF for midiOutGetVolume, not garbage. 2010-05-05 10:50:50 +02:00
Maarten Lankhorst c0a602c2e9 wineoss.drv: Move opening devices to their respective xxxMessage functions. 2010-04-21 16:14:39 +02:00
Maarten Lankhorst d54dcdfedb wineoss.drv: Clean up DriverProc. 2010-04-21 16:12:44 +02:00
Alexandre Julliard bef5645eb1 makefiles: Remove the no longer needed explicit separators for dependencies. 2010-03-16 13:28:19 +01:00
Jörg Höhle 64b6287e83 winmm: Accept the ancient, smaller MIDIHDR. 2010-02-22 13:18:26 +01:00
Jörg Höhle 4cff4c82a1 wineoss: Do not access WAVEHDR past DriverCallback. 2010-02-22 13:16:28 +01:00
Jörg Höhle 4f1604e92d wineoss: Ignore failure to notify MIDI clients. 2010-02-05 10:10:23 +01:00
Jörg Höhle a758c6a981 winmm: The 64KB buffer limit on MIDIHDR buffers applies to streams only. 2010-02-03 15:49:09 +01:00
Henri Verbeet 3be325040c wineoss.drv: Use wine_dbg_sprintf() in a few debug utility functions. 2009-11-30 12:49:46 +01:00
Jörg Höhle 55fca7778b wineoss: Fix the buffer size check for more than 2 channels. 2009-10-05 15:01:27 +02:00
Jörg Höhle 8870fe38b5 wineoss: Enforce invariant about BlockAlign and nAvgBytesPerSec. 2009-09-16 15:26:19 -05:00
Marcus Meissner 4b0a2f8670 wineoss.drv: 2 more close(mixer) added. 2009-09-10 10:52:35 +02:00
Marcus Meissner 063ddfeead wineoss.drv: Avoid mixer fd leak. 2009-09-08 12:13:29 +02:00
Francois Gouget 5ef481922f Assorted spelling fixes. 2009-04-20 15:25:26 +02:00
Rob Shearman a9bf3813ec wineoss.drv: Use CP_UNIXCP instead of CP_ACP for converting strings that come from system library functions or system headers. 2009-02-19 12:51:46 +01:00
Michael Stefaniuc 3415f7788c include: Change some DWORD to DWORD_PTR in mmddk.h.
This matches the DDK and removes 14 Win64 compile warnings.
2009-02-04 12:26:05 +01:00
Michael Stefaniuc c0a9281c1e wineoss.drv: Remove superfluous pointer casts. 2009-01-22 12:04:55 +01:00
Alexandre Julliard ec1b28edb0 include: Fix a number of mmsystem.h structure for Win64. 2009-01-09 18:08:29 +01:00
Andrew Talbot 897a235e70 wineoss: Remove a superfluous semicolon. 2008-12-24 19:59:09 +01:00
Christian Costa 6710560551 wineoss.drv: Initialize correctly the header before adding it to the queue. 2008-12-22 14:02:35 +01:00
Francois Gouget 2b8b8b837c wineoss.drv: Fix the m[io]dMessage() documentation. 2008-12-19 17:45:29 +01:00
Francois Gouget f5bc44322c wineoss.drv: Make widOpen() and wodOpen() static. 2008-12-12 11:44:30 +01:00
Alexandre Julliard ba3054b60e wineoss.drv: Fix a couple of printf format warnings. 2008-12-04 14:33:07 +01:00