Chris Robinson
5d039309b3
Use doubles for the constructed listener matrix
...
This helps the stability of transforms to local space for sources that are at
or near the listener. With a single-precision matrix, even FLT_EPSILON might
not be enough to detect matching positions.
2015-11-11 08:19:33 -08:00
Chris Robinson
ff62d22d31
Move the bsincTable to a separate file
2015-11-10 18:48:30 -08:00
Chris Robinson
ffcdcbd5fa
Update the bsinc table
...
Precision is increased to cover the full 32-bit float range.
2015-11-10 18:40:33 -08:00
Chris Robinson
a37cda0214
Add a tool to generate the bsinc tables
2015-11-10 18:40:11 -08:00
Chris Robinson
10bcda27a9
Remove autowah from the excludefx list
...
The autowah effect hasn't been enabled for some time due to issues with it
breaking output, and doesn't seem likely to get fixed any time soon.
2015-11-09 14:25:20 -08:00
Chris Robinson
062d7e3487
Update the fix-rate config option description
2015-11-09 11:47:56 -08:00
Chris Robinson
de53ff4aff
Build with -std=c11 if possible
2015-11-09 11:36:02 -08:00
Chris Robinson
ceee5c8ffb
Remove some unused function checks
2015-11-08 00:19:55 -08:00
Chris Robinson
9891d61206
Add options to disable Pulse's and ALSA's resamplers
2015-11-07 23:05:45 -08:00
Chris Robinson
fe00b65d9a
Correct a comment about the new bsinc resampler
...
It always performs anti-aliasing, even when up-sampling.
2015-11-07 06:16:54 -08:00
Chris Robinson
91258cc192
Simplify reverb panning rotations
2015-11-07 06:15:29 -08:00
Chris Robinson
ec7b21cd14
Remove a const to silence some warnings
2015-11-06 22:17:15 -08:00
Chris Robinson
de74498cd9
Use more accurate floating point literals
2015-11-06 10:27:28 -08:00
Chris Robinson
858230f452
Include float.h if present before defining math stuff
2015-11-06 02:38:34 -08:00
Chris Robinson
d6f4e5139f
Add another cast for MSVC
2015-11-06 02:23:42 -08:00
Chris Robinson
368f2d6907
Use ALuint instead of size_t for a loop iterator
2015-11-06 02:21:24 -08:00
Chris Robinson
16a6e010fd
Add a cast to silence an MSVC warning
2015-11-06 02:18:42 -08:00
Chris Robinson
3e992309a5
Use a more appropriate type in MatchFilter
2015-11-06 02:13:28 -08:00
Chris Robinson
b6682ede61
Cast a double->float return to silence MSVC
2015-11-06 02:05:22 -08:00
Chris Robinson
203c249bf7
Add missing math.h include for sin()
2015-11-06 00:13:02 -08:00
Chris Robinson
8c6d891694
Pan each early/late delay line separately
2015-11-05 23:46:39 -08:00
Chris Robinson
431c89ece9
Manually inline and condense the bsinc resampler
2015-11-05 21:57:12 -08:00
Chris Robinson
46e72a48ad
Remove an unneeded memset that was overwriting memory
2015-11-05 19:45:04 -08:00
Chris Robinson
b9e192b78a
Implement a band-limited sinc resampler
...
This is essentially a 12-point sinc resampler, unless it's resampling to a rate
higher than the output, at which point it will vary between 12 and 24 points
and do anti-aliasing to avoid/reduce frequencies going over nyquist.
Code provided by Christopher Fitzgerald.
2015-11-05 09:42:08 -08:00
Chris Robinson
dce3d0c7bf
Change the Kaiser rippling limit to -60dB
...
This improves the transition cutoff, shortening its width and reducing the
amount of error.
2015-11-04 19:13:25 -08:00
Chris Robinson
bd0acf2843
Replace the Lanczos window with Kaiser for the sinc resampler
2015-11-04 06:40:54 -08:00
Chris Robinson
c57f571920
Pass in the Q parameter for setting the filter parameters
...
Also better handle the peaking filter gain.
2015-11-01 05:41:06 -08:00
Chris Robinson
f094d94608
Remove an unused struct field
2015-11-01 01:01:27 -07:00
Chris Robinson
3121c30396
Fix a comment
2015-11-01 00:13:02 -07:00
Chris Robinson
4a9dd6576f
Add an impulse "waveform" to altonegen
2015-10-31 05:15:13 -07:00
Chris Robinson
0644ebbaa2
Use modff to split the modulation delay components
2015-10-31 01:35:01 -07:00
Chris Robinson
19c437de6d
Add missing config.h entry for modff
2015-10-30 01:37:39 -07:00
Chris Robinson
0713b8c322
Check for modff
2015-10-29 16:38:58 -07:00
Chris Robinson
c3d58947c3
Mix reverb to output in the inner loop
2015-10-29 03:23:50 -07:00
Chris Robinson
79ad54f0c3
Include the echo's attenuation of the late reverb in the late reverb gain
2015-10-29 02:10:07 -07:00
Chris Robinson
62f1df77d7
Do up to 256 samples per reverb inner loop iteration
2015-10-29 01:40:23 -07:00
Chris Robinson
f4a53cf609
Add an HRTF example
...
Doubles as a psuedo-test to play a sound with HRTF.
2015-10-28 18:52:49 -07:00
Chris Robinson
bd73cdab0d
Pass the appropriate BackendInfo explicitly to ProbeDevices
2015-10-28 18:10:12 -07:00
Chris Robinson
59c6fc966d
Print enumerated HRTFs in openal-info
2015-10-28 14:47:58 -07:00
Chris Robinson
35c4aae3d6
Finalize ALC_SOFT_HRTF
2015-10-28 13:38:30 -07:00
Chris Robinson
b7a6a7da6a
Right-align the HRTF Mode label
2015-10-28 03:15:01 -07:00
Chris Robinson
63259872d1
Remove the Reverb Bost option from alsoft-config
...
It's not really an appropriate setting for most users to play with. The option
still exists, but it's no longer editable in the GUI.
2015-10-28 03:09:15 -07:00
Chris Robinson
9ce2b8f9a7
Always update all reverb properties
...
The EAX-only effect properties will be set to compatible defaults when standard
reverb is set, and the EAX-only effects will be skipped during sample
processing.
2015-10-28 02:36:48 -07:00
Chris Robinson
8f8bf1f605
Do multiple samples at once in each reverb component
2015-10-28 01:57:51 -07:00
Chris Robinson
e472cfcc53
Rename ALC_NUM_HRTF_SPECIFIER_SOFT to ALC_NUM_HRTF_SPECIFIERS_SOFT
2015-10-26 22:34:02 -07:00
Chris Robinson
6b627caf52
Add a comment about fegetenv possibly saving the SSE register for us
2015-10-26 01:49:56 -07:00
Chris Robinson
45f11d7b64
Set the current gain immediately if the target is close enough
2015-10-26 01:48:12 -07:00
Chris Robinson
90349b384f
Use the correct position in the SSE resamplers for left-over processing
2015-10-25 14:07:58 -07:00
Chris Robinson
fc03a955e9
Fix the SSE4.1 resamplers
...
Apparently the given _mm_extract_epi32 index obeys memory order, rather than
component order.
2015-10-24 17:37:53 -07:00
Chris Robinson
8d89c8be9e
Remove a couple unused parameters
2015-10-24 16:57:32 -07:00