Commit Graph

170 Commits

Author SHA1 Message Date
Andrew Eikum bc10fd3ce6 mmdevapi: Sessions should be unique per-device. 2011-06-14 12:59:39 +02:00
Jörg Höhle fd2d6f3928 winecoreaudio: mmdevapi's mixer format is 32bit floating point. 2011-06-06 21:49:21 +02:00
Jörg Höhle 8337ffb727 winecoreaudio: Properly allocate the WAVEFORMATEXTENSIBLE returned by GetMixFormat. 2011-06-06 21:49:21 +02:00
Andrew Eikum 38d80c7310 winecoreaudio.drv: Partially implement IAudioSessionManager2. 2011-06-06 21:49:19 +02:00
Andrew Eikum e8f3d4736a winecoreaudio.drv: Implement volume control interfaces. 2011-05-09 11:58:52 +02:00
Andrew Eikum b9a66b1bc3 winecoreaudio.drv: Store the PropertyScope in ACImpl. 2011-05-09 11:58:50 +02:00
Andrew Eikum 5f4081e1f2 winecoreaudio.drv: Move IAudioClock closer to its related interfaces. 2011-05-09 11:58:48 +02:00
Andrew Eikum 3025f7f505 winecoreaudio.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
Ken Thomases 518675fbb5 winecoreaudio.drv: Link against ole32 for CoTaskMemAlloc/Free. 2011-04-28 11:11:21 +02:00
Andrew Eikum d4c0bedd95 winecoreaudio.drv: Properly allocate and free the WAVEFORMATEX returned by IsFormatSupported. 2011-04-27 17:49:57 +02:00
Andrew Eikum d2f7b628d9 winecoreaudio.drv: Add mmdevapi driver. 2011-04-25 19:38:19 +02:00
Jörg Höhle 75dbd1162e winmm: Audio drivers unconditionally invoke DriverCallback. 2011-04-11 17:32:29 +02:00
Alexandre Julliard 41d9d0a2f3 winecoreaudio.drv: Remove unnecessary ifdefs. 2011-03-28 22:15:12 +02:00
Jörg Höhle a74c29e081 winecoreaudio: Fix 64-bits incompatibilities. 2011-03-14 13:13:17 +01:00
Jörg Höhle 5021f6102b winecoreaudio: Ignore failure to notify winmm wave clients. 2011-03-14 13:12:56 +01:00
Jörg Höhle c0d6db3944 winecoreaudio: Do not access MIDIHDR past notification callback. 2011-03-14 13:12:16 +01:00
Charles Davis 8c6353ea7e winecoreaudio: Fix deprecation warnings in mixer.c. 2011-01-31 13:01:13 +01:00
Charles Davis 94d1e8ec7f winecoreaudio: Fix deprecation warnings in audio.c. 2011-01-31 13:01:13 +01:00
Charles Davis b149d7bc7b winecoreaudio: Fix deprecation warnings in audiounit.c. 2011-01-31 13:01:12 +01:00
Charles Davis 459d9427a8 winecoreaudio: Don't use Component Manager on Mac OS 10.6. 2011-01-31 13:01:12 +01:00
Jörg Höhle 2e54019391 winecoreaudio: OSStatus is not necessarily a FOURCC. 2010-11-15 15:03:49 +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
Jörg Höhle 201c26530d winecoreaudio: Use same hard-coded limit on frequency as ALSA/OSS. 2010-08-16 12:59:32 +02:00
Alexandre Julliard b86d515ed6 dlls: Remove explicit imports of kernel32 and ntdll. 2010-07-21 17:38:36 +02:00
Michael Stefaniuc bf00cd3380 winecoreaudio.drv: Remove superfluous casts of zero. 2010-03-29 11:49:53 +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 945588a302 winecoreaudio: Ignore failure to notify MIDI clients. 2010-02-05 13:14:45 +01:00
Jörg Höhle 9c8ce89bf0 winecoreaudio: MOD_MIDIPORT has 0 voices and notes and FFFF ChannelMask. 2010-02-03 15:49:32 +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
Jörg Höhle ffeef37be2 winecoreaudio: Fix a float cast in the computation of MIDI volume. 2010-02-02 11:47:20 +01:00
Austin English 7222e8b665 winecoreaudio.drv: Reorder includes to avoid OS X bug. 2010-01-19 15:03:55 +01:00
Henri Verbeet c369f33893 winecoreaudio.drv: Use wine_dbg_sprintf() in a few debug utility functions. 2009-11-30 12:49:50 +01:00
Ken Thomases 3d93a19266 winecoreaudio: Allow getting/setting volume on device as well as instances. 2009-10-23 12:02:27 +02:00
Ken Thomases fd596b9cb8 winecoreaudio: Fix incorrect casts from float to DWORD in wodGetVolume. 2009-10-20 14:00:35 +02:00
Jörg Höhle f6ac7696af winecoreaudio: Move ERR&WARN out of OSSpinLock sections. 2009-10-19 15:03:24 +02:00
Ken Thomases f639c4df54 winecoreaudio: Quiet a noisy FIXME. 2009-10-16 13:36:34 +02:00
Ken Thomases 2245c9b1f1 winecoreaudio: Minor grammar fix in comment. 2009-10-12 12:33:31 +02:00
Ken Thomases 687db1c680 winecoreaudio: Fix an error check (bad copy-paste). 2009-10-12 12:33:31 +02:00
Ken Thomases c67f4cd565 winecoreaudio: Fix declaration of CoreAudio_MIDIRelease to match definition. 2009-10-12 12:33:31 +02:00
Ken Thomases ef87a050c6 winecoreaudio: Allow opening multiple wave-out instances. 2009-10-12 12:33:30 +02:00
Ken Thomases 31ce96ff69 winecoreaudio: For WODM_* messages, treat dwUser as a driver instance handle. 2009-10-12 12:33:30 +02:00
Ken Thomases 2435919814 winecoreaudio: Make wodMessage signature match WINEMM_msgFunc32 typedef. 2009-10-12 12:33:30 +02:00
Ken Thomases 5d8177c23c winecoreaudio: Move instance-specific fields of WINE_WAVEOUT to sub-struct. 2009-10-12 12:33:29 +02:00
Ken Thomases b3ea0441c5 winecoreaudio: Remove some unused structure fields. 2009-10-12 12:33:29 +02:00
Ken Thomases e690d7c83b winecoreaudio: Add more debug logging. 2009-10-12 12:32:51 +02:00
Ken Thomases 1b5ca01aeb winecoreaudio: Consolidate formatting of FOURCC values in a function. 2009-10-12 12:19:02 +02:00
Jörg Höhle b16fc0e163 winecoreaudio: Accept up to 8 channels. 2009-10-05 15:01:33 +02:00
Jörg Höhle c5b2acfb04 winecoreaudio: Added WAVEFORMATEXTENSIBLE support, for PCM only. 2009-09-16 15:26:54 -05:00
Jörg Höhle e6770a4011 winecoreaudio: Enforce invariant about BlockAlign and nAvgBytesPerSec. 2009-09-16 15:26:43 -05:00
Jörg Höhle 89fe38ca9e winecoreaudio: Make supported format test more restrictive. 2009-09-16 15:26:28 -05:00
Ken Thomases 131a046302 winecoreaudio: Fix building on Snow Leopard. 2009-05-04 12:51:55 +02:00
Ken Thomases dff10db044 winecoreaudio: Avoid a race between closing and opening the waveIn device. 2009-04-13 17:33:24 -05:00
Ken Thomases 5c4ed3bcce winecoreaudio: For waveOut, don't use STOPPED state; it's redundant.
The distinction between PLAYING and STOPPED has always been whether
lpPlayPtr is NULL, so just use that instead of two states.
2009-04-13 17:33:17 -05:00
Ken Thomases 06d705e7df winecoreaudio: Avoid a race between closing and opening the waveOut device. 2009-04-13 17:32:59 -05:00
Ken Thomases 1f8d743c76 winecoreaudio: Avoid potential deadlock in wodOpen. 2009-04-13 17:32:50 -05:00
Ken Thomases ff0ff663c3 winecoreaudio: Eliminate some unnecessary code.
The WAVE_DIRECTSOUND bit of dwFlags isn't examined, so no point in correcting
it.
2009-04-13 17:32:35 -05:00
Ken Thomases ad1090c23c winecoreaudio: Fix a copy-paste accident ("In" vs. "Out"). 2009-02-24 16:57:27 +01:00
Ken Thomases 4cfa5b875c winecoreaudio.drv: Add support for waveOutBreakLoop/WODM_BREAKLOOP. 2009-02-06 13:04:37 +01:00
Rob Shearman a4644e5a87 winecoreaudio: Remove some unnecessary text conversions by using snprintfW instead of snprintf.
Change the remaining text conversions to use the Unix CP as the
strings come from system library functions.
2009-01-02 14:27:35 +01:00
Alexandre Julliard ab1040b35d winecoreaudio: Fix a redefinition warning. 2009-01-02 13:54:49 +01:00
Francois Gouget 0216e3e6c6 winecoreaudio.drv: Remove an unused debug channel (midi). 2008-12-29 11:35:37 +01:00
Christian Costa d700042f05 winecoreaudio.drv: Initialize correctly the header before adding it to the queue. 2008-12-22 14:14:52 +01:00
Andrew Talbot 1d5d237800 winecoreaudio.drv: Do nothing if HAVE_AUDIOUNIT_AUDIOUNIT_H is not defined. 2008-12-22 10:28:58 +01:00
Aric Stewart 686ea70c18 coreaudio: Make sure Port_SendToMessageThread is not NULL before calling CFMessagePortSendRequest.
Prevents crashing when closing audio device during playback.
2008-07-10 12:30:56 +02:00
Alexandre Julliard dad21bbcbf makefiles: List the static libraries as normal imports instead of extra libs. 2008-04-30 14:23:55 +02:00
Andrew Talbot 11f198df0b winecoreaudio.drv: Assign to structs instead of using memcpy. 2008-03-26 10:33:27 +01:00
Ken Thomases c885d05378 coreaudio: Signal driver load failure if any component fails to initialize. 2008-03-12 12:01:40 +01:00
Ken Thomases fa2d39e45f coreaudio: Standardize on DRV_SUCCESS/FAILURE status codes for setup functions. 2008-03-12 12:01:31 +01:00
Aric Stewart b5511ac6bf coreaudio: Set mDataByteSize of the buffer to the amount data provided. Greatly helps reduce audio corruption on buffer underflows. 2008-02-21 20:23:17 +01:00
Francois Gouget d0794c4aeb Assorted spelling fixes. 2008-01-23 21:16:22 +01:00
Aric Stewart b314f13219 coreaudio: Verify valid lineId in MIXER_GETLINECONTROLSF_ONEBYTYPE. 2007-11-29 15:32:09 +01:00
Aric Stewart fd812bdc1a winecoreaudio: Implement WIDM_GETPOS. 2007-11-28 13:40:29 +01:00
Francois Gouget 5266e57975 Assorted spelling fixes. 2007-07-31 21:37:50 +02:00
Emmanuel Maillard 6ccb663953 winecoreaudio: MIDIIn_MessageHandler: Fix non-SysEx messages parsing. 2007-07-13 14:43:23 +02:00
Ken Thomases f203ed946b winecoreaudio: Report format error on sample rate mismatch when opening wave-in device. 2007-07-13 14:43:00 +02:00
Ken Thomases 41303fbd6a winecoreaudio: Protect against AudioUnitRender clobbering our buffer list. 2007-07-13 14:42:53 +02:00
Ken Thomases 2fc548ae65 winecoreaudio: Correct the AudioBufferList allocated for input. 2007-07-13 14:42:40 +02:00
Ken Thomases 438c748953 winecoreaudio: Improve safety of iterations when returning WAVEHDRs to client. 2007-07-12 12:59:15 +02:00
Ken Thomases 1b4ad056b3 winecoreaudio: Enable DirectSound HEL mode for input. 2007-07-12 12:59:01 +02:00
Ken Thomases 631f306c3e winecoreaudio: Enable DirectSound HEL mode for output. 2007-07-12 12:58:55 +02:00
Ken Thomases 4906ffaa5b winecoreaudio: Make wodReset fail if called on a closed device. 2007-06-20 15:10:59 +02:00
Ken Thomases ed10114b12 winecoreaudio: Move notify of completed WAVEHDRs to end of wodReset. 2007-06-20 15:10:59 +02:00
Ken Thomases 58e37cbebf winecoreaudio: Move a variable declaration to narrower scope, reduce whitespace. 2007-06-20 15:10:59 +02:00
Ken Thomases de480f0b6e winecoreaudio: Extract loop, wodNotifyClient for WAVEHDRs in list, to separate function. 2007-06-20 15:10:58 +02:00
Emmanuel Maillard 260591fef6 winecoreaudio: Initial implementation of MIX_SetControlDetails. 2007-05-14 17:34:48 +02:00
Emmanuel Maillard ad635c60d3 winecoreaudio: Initial implementation of MIX_GetControlDetails. 2007-05-14 17:34:48 +02:00
Emmanuel Maillard 33e24d7ecc winecoreaudio: Initial implementation of MIX_GetLineControls. 2007-05-14 17:34:48 +02:00
Emmanuel Maillard 7f5a322e25 winecoreaudio: Initial implementation of MIX_GetLineInfo. 2007-05-14 17:34:48 +02:00
Emmanuel Maillard 7fb0861bf6 winecoreaudio: Implement MIX_GetDevCaps. 2007-05-14 17:34:48 +02:00
Emmanuel Maillard db6318ea91 winecoreaudio: Implement MIX_Open and MIX_GetNumDevs. 2007-05-14 17:34:48 +02:00
Emmanuel Maillard e64485d5a9 winecoreaudio: Initial mixer support on Mac OS X.
Find all lines and initialize controls.
2007-05-14 17:34:26 +02:00
Emmanuel Maillard 622ee1c4cc winecoreaudio.drv: Implement MIDIOut_Data when device is a MOD_MIDIPORT.
Implement MIDIOut_Send.
2007-05-01 11:42:24 +02:00
Emmanuel Maillard dea9878c2d winecoreaudio.drv: Create only one MIDIOutPort and one MIDIInPort for all destinations and sources. 2007-05-01 11:42:24 +02:00
Emmanuel Maillard 41b8a570dc winecoreaudio.drv: MIDIIn_MessageHandler: Remove a TRACE and simplify skipping SysEx. 2007-05-01 11:42:24 +02:00
Francois Gouget 5a8fc34033 Assorted spelling fixes. 2007-04-30 12:35:11 +02:00
Emmanuel Maillard 9369c37a4c winecoreaudio: Handle non System Exclusive messages. 2007-04-30 12:19:12 +02:00
Alexandre Julliard b43167a4cf winecoreaudio: Avoid sizeof in trace. 2007-04-27 11:55:07 +02:00
Emmanuel Maillard 6ef7b129a9 winecoreaudio: Implement MIDIIn_Prepare and MIDIIn_Unprepare. 2007-04-27 11:17:45 +02:00