1748 Commits

Author SHA1 Message Date
Chris Robinson
0e5c221a3c Dynamically allocate space for HRTF tables 2011-09-18 10:09:32 -07:00
Chris Robinson
25f7c27043 Store the HRTF tables used in the device 2011-09-18 09:52:40 -07:00
Chris Robinson
ec3b78e52d Fix a mutex leak in a capture open error path 2011-09-16 02:17:51 -07:00
Chris Robinson
4e903c84cf Fix comment on external HRTF file format 2011-09-15 02:27:02 -07:00
Chris Robinson
ae3ec4e767 Trace compatible HRTF formats when loading instead of on error 2011-09-15 02:05:48 -07:00
Chris Robinson
fd22226242 Make alcSetError static 2011-09-14 11:58:51 -07:00
Chris Robinson
fe1e046ea6 Remove a couple ineffective alcSetError calls 2011-09-14 11:55:57 -07:00
Chris Robinson
2171aaa35c Use IsDebuggerPresent instead of the VC-only __try/__except 2011-09-14 02:10:42 -07:00
Chris Robinson
97024151e4 Return an error from the CaptureSamples method instead of setting it 2011-09-14 02:01:35 -07:00
Chris Robinson
62dfea43c6 Limit the minimum ALSA capture size to 100ms, and the maximum period size to 50ms 2011-09-13 23:51:22 -07:00
Chris Robinson
a4f8408150 Use maxu to clamp PulseAudio's capture buffer size 2011-09-13 21:53:34 -07:00
Chris Robinson
80f2b787ef Pre-apply the deferred source offset only when it's playing or paused 2011-09-12 06:04:40 -07:00
Chris Robinson
404cfde33e Rename the ALEffect_ macros to ALeffectState_ to reflect what they work on 2011-09-12 05:59:23 -07:00
Chris Robinson
145bc6da6b Be a bit more robust while handling the global device list 2011-09-12 03:57:53 -07:00
Chris Robinson
69b10e2d7c Remove the context from being current before removing it from the device 2011-09-12 03:35:21 -07:00
Chris Robinson
25e86e8e91 Get rid of IsContext 2011-09-12 03:18:27 -07:00
Chris Robinson
780417ba39 Use VerifyDevice to validate a device handle instead of IsDevice 2011-09-12 02:17:31 -07:00
Chris Robinson
9f159bfb33 Look for __ALSOFT_TRAP_ERROR to trap both AL and ALC errors 2011-09-12 01:50:57 -07:00
Chris Robinson
c2e9cda2d1 Shorten some warning messages 2011-09-12 01:21:54 -07:00
Chris Robinson
1d6ecee64f Use the active source list when stopping sources on disconnect 2011-09-12 01:11:46 -07:00
Chris Robinson
3ee2826565 Minor cleanup for applying click-removal to wet buffers 2011-09-12 01:09:01 -07:00
Chris Robinson
0ceea27b44 Remove the effect slot parameter from the effect process method 2011-09-12 00:44:52 -07:00
Chris Robinson
0dc5837b82 Fix a possible race condition when setting an effect on a slot 2011-09-11 20:51:30 -07:00
Chris Robinson
b4cbb3380a Fix non-GCC CompExchangePtr implementations 2011-09-11 09:39:29 -07:00
Chris Robinson
d9cb2baf4a Don't increment the context reference count when locked 2011-09-11 09:29:24 -07:00
Chris Robinson
8f456f68ff Remove GetLockedContext 2011-09-11 09:28:30 -07:00
Chris Robinson
54a421ec58 Get rid of some more GetLockedContext calls 2011-09-11 09:13:01 -07:00
Chris Robinson
6ce420afe3 Use function pointers to set type-specific effect properties 2011-09-11 08:59:47 -07:00
Chris Robinson
8028770901 Avoid accessing EAX-only reverb properties for non-EAX updates 2011-09-11 08:50:48 -07:00
Chris Robinson
d51b93f869 Remove the union from the effect parameter types 2011-09-11 07:42:23 -07:00
Chris Robinson
ab2b62c980 Use function pointers to set type-specific filter properties 2011-09-11 07:34:03 -07:00
Chris Robinson
97fa7cc9ac More lock avoidance 2011-09-11 06:58:49 -07:00
Chris Robinson
2648a9b011 Just reference the context when checking for extensions 2011-09-11 04:32:34 -07:00
Chris Robinson
1fdc25df75 Use a RWLock to protect access to a buffer instead of the device lock 2011-09-11 03:57:40 -07:00
Chris Robinson
4db24af59a Avoid holding the context lock for the buffer functions 2011-09-11 02:37:52 -07:00
Chris Robinson
d85c12c385 Avoid holding the context lock when setting auxiliary slot properties 2011-09-11 02:01:31 -07:00
Chris Robinson
ccd8cbc2a9 Make some listener properties volatile 2011-09-11 01:26:09 -07:00
Chris Robinson
1075cce7b3 Mark some source properties volatile 2011-09-11 01:18:57 -07:00
Chris Robinson
89f438df71 Small fixes to setting the source's direct filter and auxiliary send 2011-09-11 00:58:33 -07:00
Chris Robinson
97027a7ad9 Avoid holding the context lock while setting source parameters
Note that some parameters still need the lock when getting or setting them.
2011-09-11 00:47:31 -07:00
Chris Robinson
3a8ef2f0d6 Initialize source parameters before adding the source to the map 2011-09-10 21:21:07 -07:00
Chris Robinson
4c8e6dead1 Don't defer stopped and initial source state changes
Typically when these are set, an app will be releasing the buffer from the
source, possibly to immediately reuse it. There would be an extra burden placed
on the app if it was required to process updates before it could fully release
the buffer from the source.
2011-09-10 21:02:50 -07:00
Chris Robinson
c19a7408d9 Add a comment about when FreeContext and FreeDevice are called 2011-09-10 20:52:19 -07:00
Chris Robinson
c7b9d27b85 Trace the device pointer when warning about leftover objects 2011-09-10 20:49:16 -07:00
Chris Robinson
30510dc478 Set the device-connected flag to false first when handling a disconnect 2011-09-10 19:22:46 -07:00
Chris Robinson
b788ae52b0 Condense some code 2011-09-10 19:19:32 -07:00
Chris Robinson
ccbd67eab6 Clean up some code comments 2011-09-10 19:14:14 -07:00
Chris Robinson
f21b1eefda Lock the lists while probing devices 2011-09-10 09:12:02 -07:00
Chris Robinson
6cd55a0a10 Clean up some comments 2011-09-10 09:00:01 -07:00
Chris Robinson
0c5c63f4ba Slightly modify a warning 2011-09-10 07:49:35 -07:00