1331 Commits

Author SHA1 Message Date
Chris Robinson
66a700729b Retry opening the DSound device with 16-bit short if 32-bit float output fails 2012-01-17 12:38:47 -08:00
Chris Robinson
a7266442c2 Retry opening the WinMM device with 16-bit short if 32-bit float output fails 2012-01-17 12:21:52 -08:00
Chris Robinson
cf34b9c04e Support 32-bit float in the WinMM backend 2012-01-17 12:17:41 -08:00
Chris Robinson
530597347c Safely insert the new context into the list 2012-01-12 06:13:24 -08:00
Chris Robinson
e772fb7d0e Finalize AL_SOFT_buffer_samples 2012-01-10 01:14:02 -08:00
Chris Robinson
535091e36c Make LockDevice, LockContext, etc, inline 2012-01-09 23:37:03 -08:00
Chris Robinson
18216ab1a9 Remove the warning when a context being released is globally current
Just about every implementation allows this, and there's no direct harm caused
by it. However, leave the warnings for when it's still current on specific
threads, as this can cause issues.
2012-01-01 15:36:31 -08:00
Chris Robinson
5500ed9209 Use the device lock when removing the context from the device's list 2012-01-01 15:22:58 -08:00
Chris Robinson
886f874ff3 Use a proper typedef for handling atomic pointer swaps 2012-01-01 15:00:03 -08:00
Chris Robinson
2691c33b55 Use a string to specify the resampler config option 2011-12-20 01:36:01 -08:00
Chris Robinson
7f6844e48d Use a struct to associate channel enums and their angles 2011-12-20 01:17:11 -08:00
Chris Robinson
a5a929ff72 Restore the old FPU mode if the effects fail to update with new device parameters 2011-12-20 00:35:32 -08:00
Chris Robinson
6a97f6a327 Reset the ALSA device if the number of available samples grows too large 2011-11-28 10:24:24 -08:00
Chris Robinson
dfd02817fa Make ALSA XRUN when the number of available samples exceeds the buffer size 2011-11-28 09:12:30 -08:00
Chris Robinson
222d2363cd Don't fail to insert a map entry when the key exists and the limit is reached 2011-11-26 03:52:07 -08:00
Chris Robinson
14c117ffd3 Initialize listener matrix to identity 2011-11-26 03:37:37 -08:00
Chris Robinson
d5df2ad3ce Define TlsDestructor for Windows static builds, too 2011-11-12 16:00:37 -08:00
Chris Robinson
c56b2734fd Use loops to write reverb output 2011-11-02 08:15:10 -07:00
Chris Robinson
5eebe73f79 Use a loop to write the modulator effect output 2011-11-01 17:12:56 -07:00
Chris Robinson
21d400e3c6 Use panning for echo instead of specifying discrete channels 2011-11-01 17:03:11 -07:00
Chris Robinson
d270188578 Append _SOFT to the ALC loopback format enums 2011-11-01 16:00:47 -07:00
Chris Robinson
fcf9034c2b Calculate the listener matrix when a new orientation is specified
This is so the matrix isn't derived each time a source is updated, and it will
make supporting user-defined matrices easier.
2011-10-30 08:27:24 -07:00
Chris Robinson
956e6f95ec Don't translate the listener velocity 2011-10-30 05:49:17 -07:00
Chris Robinson
50913948a0 Don't transform/translate vectors with an invalid listener orientation 2011-10-30 05:47:14 -07:00
Chris Robinson
319f40462f Initialize/Uninitialize COM as needed 2011-10-24 22:11:16 -07:00
Chris Robinson
e5374f60c9 Don't close devices that are left open on lib shutdown 2011-10-24 08:23:41 -07:00
Chris Robinson
75679c959a Don't update the device update parameters when PulseAudio does an async buffer update
It risks a deadlock, and though the UpdateSize won't change, we'll still fill
as much of the buffer as we can up to a multiple of it
2011-10-19 16:07:56 -07:00
Chris Robinson
0fba3b0e1e Use the local Device variable 2011-10-11 22:30:58 -07:00
Chris Robinson
92a650c827 Use the local variable instead of re-reading the source property 2011-10-11 22:29:06 -07:00
Chris Robinson
3bbde05e0e Use the square root to build the panning table instead of sin/cos 2011-10-10 09:39:02 -07:00
Chris Robinson
3324bab81e Mark a couple more arrays with restrict 2011-10-08 03:08:13 -07:00
Chris Robinson
81133769de Return the key's value from the map when it's removed 2011-10-06 06:39:13 -07:00
Chris Robinson
a7d3779dfa Check for the HRTF object instead of a flag 2011-10-06 01:16:07 -07:00
Chris Robinson
75fee8c11f Add min/max/clamp methods for 64-bit int 2011-10-04 22:39:35 -07:00
Chris Robinson
9e11b0a8c6 Fix maximum BufferSize calculation 2011-10-04 22:35:01 -07:00
Chris Robinson
5861920453 Rename a variable to avoid confusion 2011-10-04 22:16:54 -07:00
Chris Robinson
eb277cc578 Remove some unneeded templates and parameters 2011-10-04 09:55:36 -07:00
Chris Robinson
20fd648729 Convert samples to float when copying to the stack 2011-10-04 09:47:08 -07:00
Chris Robinson
11caba9807 Use sample frames when handling the buffer length 2011-10-04 02:08:45 -07:00
Chris Robinson
35b4b31d57 Track the temp stack buffer using sample frames instead of bytes 2011-10-03 10:06:09 -07:00
Chris Robinson
e1cbf06653 Don't use a double when calculating the HRTF coefficients 2011-10-02 22:05:03 -07:00
Chris Robinson
5a1959f0cf Make a floating-point constant a float type 2011-10-02 22:01:51 -07:00
Chris Robinson
92f95e4d94 Add support for AL_EXT_ALAW 2011-10-01 04:55:03 -07:00
Chris Robinson
a486045f7c Improve index calculation for reverb modulation updates 2011-10-01 02:38:28 -07:00
Chris Robinson
0e7dc93681 Add some formatting spaces to the reverb state struct 2011-10-01 02:09:17 -07:00
Chris Robinson
a7bbf7a741 Rename LOWPASSFREQCUTOFF to LOWPASSFREQREF 2011-09-30 23:07:15 -07:00
Chris Robinson
bed37a148c Use raise(SIGTRAP) instead of kill(getpid(),SIGTRAP) 2011-09-30 20:46:18 -07:00
Chris Robinson
bf19186223 Apply the initial wet send reverb decay before clamping the gains 2011-09-30 17:51:21 -07:00
Chris Robinson
087e75d47f Multiply by the reciprocal value instead of dividing 2011-09-29 22:29:10 -07:00
Chris Robinson
9e2600cac4 Use fast float-to-int conversions for some mixer-related code 2011-09-29 06:55:00 -07:00