Chris Robinson
3fc9791747
Rename CONST_FUNC and PRINTF_STYLE, and fix non-GNU AL_PRINT
2014-05-23 08:30:33 -07:00
Chris Robinson
7d997277a0
AL_SOFT_block_alignment is now considered done
2014-05-22 12:27:07 -07:00
Chris Robinson
a48f5d26fd
Ensure a proper amount of new elements are being reserved when inserting
2014-05-22 12:16:22 -07:00
Chris Robinson
9008bcbe54
Include strings.h if it exists for strncasecmp
2014-05-22 11:33:09 -07:00
Chris Robinson
2729a1549b
Add a needed header for the CoreAudio backend
2014-05-22 11:29:26 -07:00
Chris Robinson
e32e3df3aa
Use the first non-0-length buffer when starting a source
2014-05-22 11:08:21 -07:00
Chris Robinson
85e990e915
Don't try to use the non-standard alloca.h
...
Variable-length arrays are C99 standard and are preferred over alloca. The only
compiler that needs alloca (MSVC) has it in malloc.h.
2014-05-22 08:46:13 -07:00
Chris Robinson
2b3550b61c
Use an unsigned type for the win32 size_t formatter
2014-05-22 08:02:39 -07:00
Chris Robinson
100c059157
Mark some functions as const
2014-05-22 07:40:22 -07:00
Chris Robinson
ecdfcdbfa5
The lower value of the gain vector contains the closest target value
2014-05-21 21:20:44 -07:00
Chris Robinson
2e38de349c
Don't clear the current and step gain values when updating a source
2014-05-21 16:32:24 -07:00
Chris Robinson
6ea050cc6c
Use the current buffer item for static sources too
2014-05-21 15:37:22 -07:00
Chris Robinson
4b433c900e
Copy samples if needed in the 'copy' resampler
2014-05-21 15:24:40 -07:00
Chris Robinson
dd2e6b7902
Properly process all samples with a bandpass filter
2014-05-21 14:59:21 -07:00
Chris Robinson
e650db98f7
Use the correct input for HRTF mixing
2014-05-21 14:48:46 -07:00
Chris Robinson
4a8d38c19a
Update the active source's direct and send properties after each mix
2014-05-21 14:47:25 -07:00
Chris Robinson
f313ce2a96
Add some asserts to verify block alignment for conversion
2014-05-20 09:16:54 -07:00
Chris Robinson
cd983245f1
Return a sample pointer from resamplers
...
Both resampling and filtering now avoid copying samples when they no-op.
2014-05-19 05:46:01 -07:00
Chris Robinson
8e04a8a022
Put per-channel filter properties together
2014-05-19 02:24:31 -07:00
Chris Robinson
7b782f6afa
Return a sample pointer from DoFilters
...
This allows us to avoid copying samples when no filtering is needed. Doing the
same for resampling would require another temporary buffer in the device.
2014-05-19 01:54:52 -07:00
Chris Robinson
ef9dfe3772
Move an HRTF mixer parameter and shorten a couple variable names
2014-05-18 11:05:38 -07:00
Chris Robinson
9317ec59b9
Don't pass the SendParams to the wet-path mixer
2014-05-18 10:35:11 -07:00
Chris Robinson
c9083d04fa
Don't pass the DirectParams to the dry-path mixer
2014-05-18 10:24:07 -07:00
Chris Robinson
5a1abf6918
Use different parameters for HRTF mixers
2014-05-18 09:31:08 -07:00
Chris Robinson
29b5dae6aa
Pass some DirectParams as function parameters
2014-05-18 08:59:10 -07:00
Chris Robinson
bd2721dc7a
Use _mm_setr_ps instead of _mm_set_ps
...
Apparently _mm_set_ps loads in reverse order compared to _mm_load_ps, so
_mm_setr_ps should give what we really want.
2014-05-18 06:35:33 -07:00
Chris Robinson
a5631e05cc
Add a ALfilterState method to process multiple samples at once
2014-05-18 06:23:20 -07:00
Chris Robinson
cd53a4b74c
Reset filter properties when setting a null filter type
2014-05-17 08:05:49 -07:00
Chris Robinson
190ab90c0d
Support the band-pass filter
2014-05-17 08:04:14 -07:00
Chris Robinson
82dd2d875e
Apply high-pass source filters as needed
2014-05-17 07:54:25 -07:00
Chris Robinson
3a26ebef0b
Implementing handling high-pass filter properties
2014-05-17 07:29:50 -07:00
Chris Robinson
0b5b39d5e6
Add a flag to specify when the low-pass filter needs to apply
2014-05-17 07:17:48 -07:00
Chris Robinson
70f1e54068
Use logarithmic adjustment for the gain in the autowah effect
2014-05-17 03:08:04 -07:00
Chris Robinson
1efddac3db
Document the different filter types, and combine some split lines
2014-05-17 02:09:43 -07:00
Chris Robinson
c5b25ba2a7
Rename freq_scale parameter to freq_mult
2014-05-17 01:32:55 -07:00
Chris Robinson
a11e1c0858
Ensure that LoopEnd > LoopStart
...
For the benefit of Clang's static analysis, which doesn't know that a
static source will always have a valid buffer and a buffer must have a
non-0 loop range.
2014-05-15 01:44:29 -07:00
Chris Robinson
fdcdda2ed3
Initialize a pointer to NULL instead of a string
2014-05-15 01:39:42 -07:00
Chris Robinson
028bd9767c
Don't bother stripping whitespace from comments
2014-05-15 01:37:01 -07:00
Chris Robinson
042003896f
Early-out when outN is 0
2014-05-15 01:32:32 -07:00
Chris Robinson
6dcd4fec7d
Remove some unnecessary casts
2014-05-15 01:21:22 -07:00
Chris Robinson
ef1b34dcd2
Initialize some variables when declaring them
2014-05-15 01:14:31 -07:00
Chris Robinson
f0797e27f3
Initialize newformat to AL_NONE instead of a valid format
2014-05-15 01:11:38 -07:00
Chris Robinson
16d3316f70
Use an enum for the chorus and flanger waveforms
2014-05-14 23:51:24 -07:00
Chris Robinson
a6974a6c83
Don't try to read the internal capture buffer into itself
2014-05-14 21:20:28 -07:00
Chris Robinson
a1fbb434e8
Remove a dead assignment
2014-05-14 05:27:16 -07:00
Chris Robinson
debd5346fb
Add a couple asserts to ensure a proper buffer
...
It should not be possible for a playing or paused source to not have a
valid buffer, but Clang's static analyzer doesn't know that. Hopefully
an assert will convince it.
2014-05-14 03:40:01 -07:00
Chris Robinson
f311f74001
Avoid freeing an in-use capture buffer
...
When stopping, ALSA may capture into its own storage buffer. Do not free
the storage buffer if it first reads from it.
2014-05-14 03:22:42 -07:00
Chris Robinson
1d2504d12e
Make RefCount a non-integer type
...
It should only be accessed through the appropriate functions to ensure proper
atomicity.
2014-05-14 02:47:07 -07:00
Chris Robinson
4454ae25c7
Add HF Reference as a filter property
2014-05-14 01:24:18 -07:00
Chris Robinson
3582a44dff
Make LOWPASSFREQREF a float value
2014-05-11 10:09:52 -07:00