Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Add missing extern "C" | Chris Robinson | 2018-10-29 | 1 | -0/+8 |
| | |||||
* | Handle C++-only compile flags in cmake | Chris Robinson | 2018-10-29 | 1 | -3/+4 |
| | |||||
* | Fix a couple internal headers to compile with C++ | Chris Robinson | 2018-10-29 | 2 | -3/+3 |
| | |||||
* | Merge pull request #240 from ShFil119/impr/simplify_statements | kcat | 2018-10-29 | 12 | -35/+35 |
|\ | | | | | Simplify some statements | ||||
| * | Simplify some statements | Filip Gawin | 2018-10-29 | 12 | -35/+35 |
|/ | |||||
* | Merge pull request #236 from alexey-lysiuk/macos_semaphore | kcat | 2018-10-15 | 2 | -0/+43 |
|\ | | | | | Use GCD semaphore on macOS | ||||
| * | Use GCD semaphore on macOS | alexey.lysiuk | 2018-10-15 | 2 | -0/+43 |
|/ | | | Unnamed POSIX semaphore doesn't work on macOS | ||||
* | Release 1.19.1openal-soft-1.19.1 | Chris Robinson | 2018-10-11 | 1 | -1/+1 |
| | |||||
* | Use the common init/close functions for alffplay | Chris Robinson | 2018-10-10 | 2 | -34/+16 |
| | |||||
* | Allow building alffplay without experimental extensions | Chris Robinson | 2018-10-08 | 1 | -12/+42 |
| | |||||
* | Add a comment about waiting to kill the event thread | Chris Robinson | 2018-10-07 | 1 | -0/+5 |
| | |||||
* | Use a 24-bit dither depth limit | Chris Robinson | 2018-10-03 | 1 | -1/+1 |
| | |||||
* | Don't limit output for ALC_DONT_CARE_SOFT and float samples | Chris Robinson | 2018-10-03 | 2 | -7/+27 |
| | |||||
* | Don't try to get the JNIEnv on Android | Chris Robinson | 2018-10-02 | 3 | -82/+7 |
| | | | | | It's currently not used. More stuff is needed anyway which may need a different approach. | ||||
* | Add back an inadvertently removed static | Chris Robinson | 2018-10-02 | 1 | -1/+1 |
| | |||||
* | Use < instead of != for some loop checks | Chris Robinson | 2018-10-01 | 1 | -2/+2 |
| | |||||
* | Don't scale the reverb fade counter so much | Chris Robinson | 2018-09-30 | 1 | -5/+6 |
| | |||||
* | Ensure BUFFERSIZE is a power of 2 | Chris Robinson | 2018-09-30 | 1 | -2/+4 |
| | |||||
* | Make the Compressor struct opaque | Chris Robinson | 2018-09-30 | 3 | -73/+71 |
| | |||||
* | Fix some length ranges | Chris Robinson | 2018-09-29 | 1 | -2/+8 |
| | |||||
* | Improve a couple loops | Chris Robinson | 2018-09-29 | 1 | -7/+15 |
| | | | | | | Avoid masking the index with each iteration, and instead do up to when the mask would apply. This allows for better optimizations, in particular fewer instructions and better chances for vectorization. | ||||
* | Don't use a ringbuffer design for the limiter's side chain | Chris Robinson | 2018-09-29 | 2 | -39/+37 |
| | | | | | | Rather than continuously wrapping when used, each update uses it from the front and copies the tail to the front at the end. This allows for more effficient accesses in loops. | ||||
* | Add some assumes for the limiter | Chris Robinson | 2018-09-29 | 1 | -0/+17 |
| | |||||
* | Simplify a lower-bound clamp | Chris Robinson | 2018-09-28 | 1 | -2/+1 |
| | |||||
* | Constify a couple more variables | Chris Robinson | 2018-09-28 | 1 | -2/+2 |
| | |||||
* | Update changelog | Chris Robinson | 2018-09-26 | 1 | -0/+3 |
| | |||||
* | Include the limiter's lookAhead delay in the device latency | Chris Robinson | 2018-09-25 | 6 | -8/+25 |
| | |||||
* | Don't hardcode the limiter threshold | Chris Robinson | 2018-09-25 | 1 | -8/+23 |
| | | | | It's now calculated from the output sample type and dither depth. | ||||
* | Update the output limiter/compressor | Chris Robinson | 2018-09-25 | 4 | -168/+431 |
| | | | | | | | | | | This provides better characteristics for an amplitude limiter. In particular, it utilizes the peak amplitude instead of the RMS, and the used parameters basically guarantee no output samples exceed the given threshold... almost, due to floating-point errors as the threshold is converted from dB to log-e for the envelope, then is negated and converted to linear amplitude to apply to the signal. It's quite possible for some rounding errors to creep in and not perfectly saturate the result. | ||||
* | Only compare the reverb params that induce a need for fading | Chris Robinson | 2018-09-23 | 1 | -23/+41 |
| | | | | | | | The offsets and coefficients are controlled by a relatively small set of input parameters, just with different base constants or different calculations. This lead to numerous redundant checks since if one value didn't change, others that use the same inputs wouldn't have either. | ||||
* | Clear reverb gain coefficients when doing a device update | Chris Robinson | 2018-09-23 | 1 | -0/+49 |
| | |||||
* | Rename ALreverbState to ReverbState | Chris Robinson | 2018-09-23 | 1 | -23/+23 |
| | |||||
* | Update changelog | Chris Robinson | 2018-09-22 | 1 | -0/+13 |
| | |||||
* | Improve the gain stepping difference check | Chris Robinson | 2018-09-22 | 3 | -12/+15 |
| | | | | | Given the more stable stepping now in use, check that the total difference is enough for perceptible transition, instead of the step itself. | ||||
* | Adjust comment spacing | Chris Robinson | 2018-09-21 | 1 | -1/+1 |
| | |||||
* | Use an internal event to more timely release old effect states | Chris Robinson | 2018-09-21 | 4 | -5/+47 |
| | |||||
* | Remove an unnecessary mutex | Chris Robinson | 2018-09-20 | 3 | -5/+0 |
| | |||||
* | Stop the event thread when releasing the context | Chris Robinson | 2018-09-20 | 1 | -6/+6 |
| | | | | To ensure no user callback gets called after alcDestroyContext. | ||||
* | Put user events in a union structure | Chris Robinson | 2018-09-20 | 6 | -36/+43 |
| | |||||
* | Always start the event thread with the context | Chris Robinson | 2018-09-20 | 3 | -45/+31 |
| | |||||
* | Remove another duplicate function | Chris Robinson | 2018-09-19 | 16 | -59/+42 |
| | |||||
* | Combine nearly-duplicate structures | Chris Robinson | 2018-09-19 | 4 | -24/+15 |
| | |||||
* | Remove a couple duplicate functions | Chris Robinson | 2018-09-19 | 3 | -35/+8 |
| | |||||
* | Add macros for commonly used square roots | Chris Robinson | 2018-09-19 | 4 | -19/+22 |
| | |||||
* | Use ALsizei for the source resample position | Chris Robinson | 2018-09-18 | 5 | -8/+5 |
| | |||||
* | Properly queue buffers for OpenSL capture | Chris Robinson | 2018-09-17 | 1 | -32/+9 |
| | |||||
* | Fix some potential race conditions with OpenSL | Chris Robinson | 2018-09-17 | 1 | -42/+62 |
| | | | | | | | | | For playback, increment the ring buffer's write pointer before queueing audio, to handle cases where the callback is invoked, advancing the read pointer, before the write pointer is advanced. For capture, limit the number of re-queued chunks to the number of fully read chunks. | ||||
* | Handle the bsinc C resampler like the others | Chris Robinson | 2018-09-17 | 5 | -49/+38 |
| | |||||
* | Fix buffer queue mixing logic | Chris Robinson | 2018-09-16 | 1 | -11/+13 |
| | | | | | | In particular, the source sample position was reduced by the size of the next buffer list item when one is completed, rather than the size of the one it just completed. | ||||
* | Check the effect slot list size only when there's no free entries | Chris Robinson | 2018-09-14 | 1 | -6/+7 |
| | | | | | The list can contain (reuable) NULL entries, so the max - current_size doesn't indicate how many can be allocated. |