Chris Robinson
032d0836a7
Declare some variables closer to where they're used
2011-06-29 23:32:48 -07:00
Chris Robinson
5736bbc3e4
Add a source property to skip channel virtualization for multi-channel buffers
...
With virtualization disabled, channels are mapped directly from input to output
and any input channel that is missing an output is dropped. Any virtualization
effects (such as HRTF filters) for positional cues are also skipped.
The idea is to allow applications a way to play pre-filtered audio that channel
vitualization effects could interfere with.
2011-06-29 23:18:49 -07:00
Chris Robinson
1b773a8585
Select the correct resampler
2011-06-28 00:30:00 -07:00
Chris Robinson
3f0214ed6b
Implement capture support for the CoreAudio backend
2011-06-27 23:49:17 -07:00
Chris Robinson
ea83608ee4
Avoid a junk sample at the start of the ring buffer, and allocate the buffer
...
memory at the end of the ring buffer itself.
2011-06-27 14:30:45 -07:00
Chris Robinson
8cae1aee80
Clamp PortAudio output to stereo
2011-06-27 01:00:34 -07:00
Chris Robinson
3db061e670
Combine the two pa_load definitions into one
2011-06-26 15:40:15 -07:00
Chris Robinson
efaaf9b5f9
Don't bother with a per-context lock for disconnecting devices
2011-06-26 01:26:50 -07:00
Chris Robinson
c451bf370d
Remove an incorrect ProcessContext call
2011-06-26 01:22:29 -07:00
Chris Robinson
212b187447
Add a function to check if a device is compatible with the Hrtf filter
2011-06-25 21:39:36 -07:00
Chris Robinson
ac9a6e891f
Fix the cross-compile toolchain script
...
CMAKE_INSTALL_PREFIX is now properly set, and the pkgconfig env vars are set so
it won't find .pc files for the default compiler.
2011-06-25 13:49:40 -07:00
Chris Robinson
1fc44d5788
Select the mixer during a source update
2011-06-25 00:13:56 -07:00
Chris Robinson
913c70557d
Fix formatter for size_t
2011-06-24 15:03:29 -07:00
Chris Robinson
e8b785677d
Make sure to clear HAVE_SNDIO before checking backends
2011-06-23 18:39:16 -07:00
Chris Robinson
5c17eb69cb
Fix comment typo
2011-06-23 17:02:57 -07:00
Chris Robinson
f6d1e0f299
Avoid setting a thread priority for OpenBSD
...
It apparently causes a negative performance impact regardless of which values
are set.
2011-06-23 15:42:35 -07:00
Chris Robinson
e42bdc2022
Fix device Update parameters for sndio
2011-06-23 15:42:16 -07:00
Chris Robinson
cf44f499b8
Be silent about failing to load shared libs
2011-06-22 20:48:45 -07:00
Chris Robinson
39c984fda8
Actually load libsndio.so
2011-06-22 20:45:45 -07:00
Chris Robinson
9c23bc53b7
Update the default drivers config option comment
2011-06-22 19:31:27 -07:00
Chris Robinson
96b6cd46e6
Add a FreeBSD sndio backend
2011-06-22 19:29:13 -07:00
Chris Robinson
bc6e3879d4
Properly handle the PortAudio lib in OpenBSD
2011-06-22 16:43:37 -07:00
Chris Robinson
3dcfd0dc98
Use 'Distance' for the unclamped distance value, since the clamped value is
...
only used for distance attenuation
2011-06-21 12:55:21 -07:00
Chris Robinson
40b8934487
Calculate wet gain when needed
2011-06-18 16:45:26 -07:00
Chris Robinson
0d39ac6528
Allow alThunkAddEntry to return a proper error
2011-06-17 23:59:25 -07:00
Chris Robinson
157e1394d6
Open the log file with config initialization
2011-06-17 18:54:05 -07:00
Chris Robinson
edf78b077e
Use separate lines for HRTF history and values
2011-06-17 16:22:39 -07:00
Chris Robinson
753e64c76c
Do stereo duplication in two passes
...
First using the rear channels, then using the normal stereo channels
2011-06-17 16:20:18 -07:00
Chris Robinson
3a072a294d
Avoid resetting a flag that isn't on
2011-06-17 14:59:10 -07:00
Chris Robinson
23ae3c69b5
Handle the device's disconnected status earlier when playing a source
2011-06-17 13:21:02 -07:00
Chris Robinson
bef9c5e2d5
Avoid some al[Get]Effect* calls from under the context lock
2011-06-17 13:07:47 -07:00
Chris Robinson
58add24830
Call al[Get]Filterf directly from the *v equivalents
...
There are no filter parameters which take multiple values, and besides some
duplicated checks, they call straight through anyway.
2011-06-16 14:40:37 -07:00
Chris Robinson
fdffbfd2c4
Use the predefined filter macros instead of hardcoded values
2011-06-16 10:53:01 -07:00
Chris Robinson
357f841e88
Fix namespacing of EFX filter property values
2011-06-16 10:52:17 -07:00
Chris Robinson
7d73ac4405
Avoid calling some AL functions from under the context lock
...
There are still some more occurances to clear out (deletion in gen error,
effects, some filters), which shall be coming up. There is a possibility for a
deadlock between the listlock and the global/context lock, if another attempt
to get the listlock is made while under the context lock.
2011-06-16 09:14:41 -07:00
Chris Robinson
c429a5be25
The DirectSound DLL is always loaded by the Win32 API
2011-06-16 06:17:57 -07:00
Chris Robinson
fba58fb1f0
Make sure user configuration is always initialized for Windows
2011-06-16 05:36:16 -07:00
Chris Robinson
dad7f1cf0f
Prefer DllMain when in Windows
2011-06-16 05:34:13 -07:00
Chris Robinson
8bee7a2b7f
Don't suspend individual contexts when updating
2011-06-16 05:29:38 -07:00
Chris Robinson
632b4e6332
Avoid some channel order duplication
2011-06-16 00:00:40 -07:00
Chris Robinson
f26798bd19
Remove some unnecessary casts
2011-06-15 23:52:21 -07:00
Chris Robinson
7f4dcefc80
Remove the databuffer functions and structs
...
It's been disabled for a while now, and not likely to be re-enabled.
2011-06-15 23:46:35 -07:00
Chris Robinson
d702cb9b49
Avoid an unnecessary lock when retrieving the current context
2011-06-15 23:22:34 -07:00
Chris Robinson
2081228055
Declare some variables where they're used
2011-06-15 06:45:51 -07:00
Chris Robinson
f85283c036
Don't prematurely set the HRTF flag
2011-06-15 02:00:41 -07:00
Chris Robinson
14d6ab384d
Use a flag to specify when a device is running
2011-06-15 01:59:07 -07:00
Chris Robinson
62036745f3
Separate config init from library init
...
OSX has a bug where the file descriptor resource limit can't be increased once
certain functions (such as fopen) are used. Since lib initialization happens in
a global constructor and includes opening and parsing config files, it prevents
apps from being able to increase the rlimit once the lib is loaded, which is
usually before main().
By delaying config init, it allows apps the opportunity to change the rlimit
before calling certain OpenAL functions.
2011-06-14 09:43:33 -07:00
Chris Robinson
264274685a
Throw an error when no global initialization is available
2011-06-14 08:47:53 -07:00
Chris Robinson
1babf28491
Unset the local context if it's being destroyed
2011-06-14 08:27:09 -07:00
Chris Robinson
5a15dc4ddf
Avoid multiple list searches when destroying devices and contexts
2011-06-14 07:04:08 -07:00