Chris Robinson
78d5492d2c
Use the converters to enable mmdevapi capture
2017-04-11 09:41:23 -07:00
Chris Robinson
bcdd1cee10
Add a mono<->stereo converter
...
This converter always outputs floats, and uses energy-preserving scaling.
2017-04-11 07:25:55 -07:00
Chris Robinson
caae349fdc
Update the given source pointer in the sample converter
2017-04-10 13:40:45 -07:00
Chris Robinson
cc79cb803a
Reduce the size of the temp input buffer
2017-04-10 09:31:25 -07:00
Chris Robinson
8a7bc9ab4f
Trace the capture device format
2017-04-10 09:28:25 -07:00
Chris Robinson
6cc69c8d94
Add a sample converter
...
This is intended to do conversions for interleaved samples, and supports
changing from one DevFmtType to another as well as resampling. It does not
handle remixing channels.
The mixer is more optimized to use the resampling functions directly. However,
this should prove useful for recording with certain backends that won't do the
conversion themselves.
2017-04-10 09:26:06 -07:00
Chris Robinson
81527cdbdd
Convert the CoreAudio backend to the updated backend API
2017-04-09 11:21:02 -07:00
Chris Robinson
aef774a7a0
Handle the source offset fraction as an ALsizei
2017-04-08 14:29:08 -07:00
Chris Robinson
319d097198
Pre-compute the sinc4 resampler coefficient table
2017-04-08 13:43:19 -07:00
Chris Robinson
5ef7d8fe62
Clean up some formatting
2017-04-08 12:27:30 -07:00
Chris Robinson
1f64f9d016
Try to write the full configured buffer length with PulseAudio
...
This basically ignores tlength even if it's smaller than what was requested. It
keeps up-to-date with minreq changes too now, in case that happens.
2017-04-08 10:01:04 -07:00
Chris Robinson
f1a5b6b668
Overwrite the old search path with the new one
2017-04-08 03:00:53 -07:00
Chris Robinson
5e9f5693a4
Combine a couple loops
2017-04-07 14:56:23 -07:00
Chris Robinson
7fd88086f6
Make sure malloc succeeded for 'delays'
2017-04-07 09:49:06 -07:00
Chris Robinson
8f2e4d46ec
Store the HRTF coeffs as a stereo pair
...
This will make it easier to handle HRTF data sets that have separate left and
right ear responses. Will need an mhr version update to take advantage of that.
2017-04-07 08:46:50 -07:00
Chris Robinson
e267f6b88e
Don't explicitly restore the old HRTF when initializing panning
...
Otherwise it won't store the name in the device.
2017-04-07 08:02:13 -07:00
Chris Robinson
b551291840
Allocate temp storage for delays when loading HRTFs
2017-04-07 06:40:42 -07:00
Chris Robinson
36f7dda1ca
Remove another reference to the sinc8 resampler
2017-04-07 03:57:40 -07:00
Chris Robinson
710bbde09c
Ensure SDL_AUDIO_BITSIZE is defined for older SDL2 versions
2017-04-07 03:33:03 -07:00
Chris Robinson
70a097bf59
Clean up a comment
2017-04-07 03:21:40 -07:00
Chris Robinson
338d61f907
Reference count HRTFs and unload them when unused
2017-04-06 13:00:29 -07:00
Chris Robinson
94f514ae5a
Load embedded HRTF entries as-needed
2017-04-06 01:35:09 -07:00
Chris Robinson
37f666fbab
Fix an incorrect message
2017-04-05 12:46:02 -07:00
Chris Robinson
2eaa10fc21
Load HRTF files as needed
...
Currently only applies to external files, rather than embedded datasets. Also,
HRTFs aren't unloaded after being loaded, until library shutdown.
2017-04-05 12:27:30 -07:00
Chris Robinson
f76dea0c03
Store the loaded hrtf entry container in the enumerated hrtf entry
2017-04-05 11:29:58 -07:00
Chris Robinson
e7ca61e8b5
Store the HRTF's filename separate from the entry storage
2017-04-05 07:09:16 -07:00
Chris Robinson
26144ca9df
Rename al_string_* functions to alstr_*
2017-04-04 06:58:53 -07:00
Chris Robinson
b78ddc7ef7
Make sure the mix is done after setting the looping property
2017-04-02 06:40:56 -07:00
Chris Robinson
d52752a3fe
Recognize %-encoded characters for config section names
2017-04-01 06:07:14 -07:00
Chris Robinson
497d078f50
Remove a couple unused macros
2017-04-01 03:04:15 -07:00
Chris Robinson
13d7d6fe95
Don't rely on sizeof being the offset to a struct's unsized array
2017-04-01 03:00:24 -07:00
Chris Robinson
52112b0b8d
Constify a variable
2017-04-01 02:38:44 -07:00
Chris Robinson
1ef916a54b
Make a pointer restrict and assume aligned
2017-04-01 01:08:18 -07:00
Chris Robinson
5f245d5950
Avoid some unnecessary string reallocation
2017-03-31 23:22:06 -07:00
Chris Robinson
af833c8554
Remove a couple more uses of BYTE3
2017-03-31 09:21:31 -07:00
Chris Robinson
90c005bbec
Convert float samples to integer using a power-of-2 multiple
2017-03-31 09:11:28 -07:00
Chris Robinson
355a8898cf
Remove the (u)byte3 sample formats
...
They're not accessible since the removal of the buffer_samples extension, and
were kind of clunky to work with as 24-bit packed values.
2017-03-31 08:15:20 -07:00
Chris Robinson
ac8b4aa5f6
Convert integer samples to float using a power-of-2 divisor
...
This should cut down on unnecessary quantization noise (however minor) for 8-
and 16-bit samples. Unfortunately a power-of-2 multiple can't be used as easily
for converting float samples to integer, due to integer types having a non-
power-of-2 maximum amplitude (it'd require more per-sample clamping).
2017-03-31 06:54:46 -07:00
Chris Robinson
9fb07101dc
Load HRTF coefficients as pre-normalized floats
2017-03-31 04:59:09 -07:00
Chris Robinson
2a8970368f
Combine some HRTF loading code
2017-03-31 03:45:26 -07:00
Chris Robinson
7dc3fb98ab
Use the correct types' sizes for HRTF storage
2017-03-31 02:15:24 -07:00
Chris Robinson
c68dac879c
Update the ambisonic docs to mention the near-field effect
2017-03-29 00:11:38 -07:00
Chris Robinson
facd8ab109
Make ReleaseContext return if any contexts still remain
2017-03-28 05:33:43 -07:00
Chris Robinson
70aefa75e2
Use an array of pointers for effects instead of a linked list
2017-03-27 23:16:23 -07:00
Chris Robinson
b49a79a15f
Require CMake 3.0.2
...
Seems it's necessary for the INCLUDES install property with the cmake config
export.
2017-03-26 21:24:20 -07:00
Chris Robinson
7f55d34a7d
Add include/AL to the exported includes destination
2017-03-26 15:11:15 -07:00
Chris Robinson
9f4e47d7be
Fix HRTF interpolated gain calculation
2017-03-26 02:44:34 -07:00
Chris Robinson
56428cdb74
Use a loop to apply NFC filters
2017-03-25 23:55:44 -07:00
Chris Robinson
1d559ec703
Properly update the resampler label in the UI
2017-03-24 15:34:36 -07:00
Chris Robinson
5c37eca2c5
Use ALsizei for more index lookups
2017-03-24 14:35:25 -07:00