Chris Robinson
b2d5367830
Fix rolloff calculations for auxiliary sends
2011-07-04 07:32:23 -07:00
Chris Robinson
d307ee8c2f
Implement a lerped lookup of the HRTF coefficients/delays
...
Code supplied by Christopher Fitzgerald
2011-07-04 07:20:38 -07:00
Chris Robinson
202f57552a
Use a proper enum for the distance model
2011-07-03 19:39:19 -07:00
Chris Robinson
5ba864b6da
Calculate the wet gain decay time attenuation with linear values
2011-07-03 19:22:14 -07:00
Chris Robinson
30e97d5223
Read the RoomRolloffFactor property with the other properties
2011-07-03 03:34:40 -07:00
Chris Robinson
69be02c0fd
Set the default auxiliary sends to MAX_SENDS
...
Since the property is ALC_MAX_AUXILIARY_SENDS, it makes more sense to default
it to the maximum and let the app lower it on request.
2011-07-03 03:18:18 -07:00
Chris Robinson
eefda551de
Properly handle input samples for changes with the FIR coefficients
...
This makes sure previously processed samples are not changed due to changes in
the FIR filter. It also applies the coefficients in ascending order with the
values, to improve caching.
2011-07-03 02:14:33 -07:00
Chris Robinson
ac7ca07221
Get rid of a couple typedefs
2011-07-02 21:33:53 -07:00
Chris Robinson
b043390ec2
Update a trace
2011-07-02 19:02:45 -07:00
Chris Robinson
4c94ba6d8a
Properly save the original FPU state when using _controlfp
2011-07-02 02:56:06 -07:00
Chris Robinson
7b87519c15
Move functions to where they're used
2011-07-02 02:54:05 -07:00
Chris Robinson
14bfe0293a
Use separate functions to find valid ALC loopback device formats
2011-07-02 02:51:33 -07:00
Chris Robinson
931d422443
Use separate ALC enums for loopback device formats
2011-07-02 02:25:34 -07:00
Chris Robinson
895150eebe
Update HRTF coefficients
2011-07-01 05:08:57 -07:00
Chris Robinson
a5ccae5779
Do air absorption with linear gain values
...
This copies the way the calculation is done with the wet path
2011-07-01 02:30:15 -07:00
Chris Robinson
1635132fd5
Use a template function to handle processing ring modulator types
2011-07-01 01:48:04 -07:00
Chris Robinson
048aee66cf
Avoid accessing source properties more than once when updating parameters
2011-07-01 01:46:56 -07:00
Chris Robinson
723755788d
Rename Suspend/ProcessContext since they are locking a mutex
2011-06-30 18:10:04 -07:00
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
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
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
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
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
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