Andrew Eikum
bbc5244c0b
winmm: Allow HMIXEROBJ handles in place of device IDs in mixerGetDevCaps.
2015-01-27 21:30:21 +01:00
Andrew Eikum
cba322d71d
winmm: Allow larger MMTIME sizes.
2014-12-15 18:13:35 +01:00
Andrew Eikum
5b7e49e84a
Revert "winmm: Increase mmdevapi buffer sizes.".
...
This reverts commit fdfff7cf60
.
In theory, this commit should have had no affect on winmm-using
applications and just prevented underruns on the mmdevapi side. But
Patrol Falcon abuses the winmm API by modifying the buffer after
passing it to waveOutWrite, and this patch breaks that behavior. We've
improved the winecoreaudio driver since this patch was sent, and so
large buffers should no longer be necessary to avoid underruns.
2014-12-04 11:10:22 +01:00
Qian Hong
b3ebdd904c
winmm: Also initialize sound device thread in mixerGetControlDetails.
...
Fixed volume control in EveryonePiano.
2014-09-29 18:56:00 +02:00
Andrew Eikum
8695369dc5
winmm: Clean up ACM stream after query.
2014-01-29 15:01:12 +01:00
Andrew Eikum
06c95af457
winmm: Also try MSACM conversions with WAVE_FORMAT_QUERY.
2013-11-19 11:08:22 +01:00
Qian Hong
78b2fd8399
winmm: Fixed mixerGetControlDetails with null paDetails.
2013-10-25 13:36:00 +02:00
Andrew Eikum
fdfff7cf60
winmm: Increase mmdevapi buffer sizes.
...
The tiny buffer size caused audio capture glitches on OSX, where the OS
often returns audio in half-second chunks.
2013-08-21 19:55:25 +02:00
Fabrice Bauzac
21e0f739be
winmm: Fix WOD_Open() WID_Open() WAVE_MAPPER no-device case.
2013-08-21 12:13:55 +02:00
Andrew Eikum
0627ddcf15
winmm: Don't count unused frames.
2013-07-27 11:56:28 -05:00
Andrew Talbot
11ebf851b2
winmm: Remove unneeded address-of operator from function name.
2013-04-01 12:19:21 +02:00
Andrew Eikum
2d76befbdd
winmm: Shutdown the devices thread when all devices are closed.
2013-03-26 12:11:47 +01:00
Jörg Höhle
2722f2cbfc
winmm: Fix GetPosition when using MSACM codecs.
2013-03-12 16:29:11 +01:00
Andrew Eikum
f74128f132
winmm: Truncate buffers to align to frame size.
2013-03-11 13:38:30 +01:00
Jörg Höhle
4f0743bffa
winmm: WAVE_OPEN_QUERY causes no WIM/WOM_OPEN notification.
2013-02-22 17:36:21 +01:00
Jörg Höhle
d4b2d48f24
winmm: More compatible waveIn/Out[Un]Prepare WHDR_* flag handling.
2013-02-13 17:19:43 +01:00
Francois Gouget
f963f93964
Assorted spelling fixes.
2013-01-07 11:10:40 +01:00
Michael Stefaniuc
3b4bb9dcf3
winmm: Add missing LeaveCriticalSection on error paths (Smatch).
2013-01-07 11:09:30 +01:00
Andrew Eikum
93348b21f7
winmm: Don't map the device if WAVE_FORMAT_DIRECT is given.
2013-01-02 13:35:51 +01:00
Andrew Eikum
8f03c51e55
winmm: Reroute WAVE_MAPPER devices as the default device changes.
2012-12-28 11:26:40 +01:00
Andrew Eikum
b73da85dec
winmm: Open WAVE_MAPPER devices in their own devices array.
2012-12-27 12:08:21 +01:00
Andrew Eikum
68679158b6
winmm: Don't give a period time to IAudioClient::Initialize.
2012-12-27 12:08:14 +01:00
Andrew Eikum
4ab4bc5d09
winmm: Rearrange device mapping when a new default device is chosen.
2012-12-26 18:23:06 +01:00
Andrew Eikum
08f73e2a07
winmm: Use a separate array to map the default device.
2012-12-24 13:32:58 +01:00
Jörg Höhle
f5628373e5
winmm: Call IsFormatSupported for WAVE_FORMAT_QUERY only.
2012-11-09 11:51:39 +01:00
Jörg Höhle
e3e0bfca20
winmm: Avoid generic MMSYSERR_ERROR during initialisation.
2012-11-09 11:50:45 +01:00
Jörg Höhle
6086c7be19
winmm: Prefer using MMSYSERR_* over AUDCLNT_E_* from mmdevapi.
2012-11-09 11:48:53 +01:00
Maarten Lankhorst
6f84708902
winmm: Do not blindly reset device when already stopped.
2012-10-19 16:51:56 +02:00
Michael Stefaniuc
d94eaa3b20
winmm: Avoid TRUE FALSE conditional expressions.
2012-07-31 12:36:20 +02:00
Andrew Eikum
47332210dd
winmm: Don't call MMDevAPI during process exit.
2012-05-11 15:39:21 +02:00
Andrew Eikum
31291cdc6c
winmm: Close open wave devices upon process detach.
2012-05-08 09:30:31 +02:00
Andrew Eikum
d022cc1ddf
winmm: Support DRV_QUERYDEVICEINTERFACE in waveXxxMessage.
2012-04-06 20:12:21 +02:00
Andrew Eikum
447b045825
winmm: Report waveIn devices' component type as Microphone.
2012-03-28 11:35:52 +02:00
Andrew Eikum
6a6e1bd50e
winmm: Support DRVM_MAPPER_PREFERRED_GET in waveXxxMessage.
2012-03-28 11:35:44 +02:00
Andrew Eikum
74d6990494
winmm: TRACE unhandled messages.
2012-02-07 14:03:02 -06:00
Andrew Eikum
be7a93cf56
winmm: Downgrade most ERRs to WARNs.
2012-02-07 14:02:58 -06:00
Andrew Eikum
6847e882b8
winmm: Initialize COM for MULTITHREADED, not APARTMENTTHREADED.
2012-01-31 20:39:11 +01:00
Andrew Eikum
04ab858fef
winmm: Only start the devices thread when necessary.
2012-01-16 19:32:50 +01:00
Jörg Höhle
d8d4aed845
winmm: GetCurrentPadding is superfluous while recording.
2012-01-11 19:42:53 +01:00
Jörg Höhle
afe7bc06e6
winmm: Ignore broken nBlockAlign and AvgBytes within PCMWAVEFORMAT.
2012-01-06 19:24:27 +01:00
Jörg Höhle
9ef4a0099c
winmm: Fix conversion to MMTIME, avoid floating point arithmetic.
2012-01-05 21:27:34 +01:00
Francois Gouget
814c854fd2
winmm: Give a name to the critical sections, make them static and delete them when unloading the dll.
2011-11-15 19:37:36 +01:00
Jörg Höhle
1cde966c35
winmm: Never write silence, mmdevapi must handle underruns.
2011-10-31 16:53:32 +01:00
Andrew Eikum
0a20ec0935
winmm: Fix clock position calculation.
2011-10-28 17:32:49 +02:00
Michael Stefaniuc
5439aede62
include: Remove 'l' modifier from numeric constants in mmsystem.h.
2011-10-25 16:57:25 +02:00
Andrew Eikum
82f486a1a8
winmm: Use buffer offset when recording.
2011-10-12 17:07:05 +02:00
Andrew Eikum
0d567ff9f8
winmm: Also track input device position.
2011-10-12 17:07:01 +02:00
Andrew Eikum
e19be58e90
winmm: Handle DRV_QUERYMAPPABLE in waveXxxMessage.
2011-10-04 15:20:58 -05:00
Jörg Höhle
3ba00cf538
winmm: Mark headers WHDR_DONE at the last possible time.
2011-09-30 10:31:51 -05:00
Andrew Eikum
b1fdaa81b0
dsound: Remove hardware acceleration support.
2011-09-26 18:38:07 +02:00