aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Add some assumes for the limiterChris Robinson2018-09-291-0/+17
|
* Simplify a lower-bound clampChris Robinson2018-09-281-2/+1
|
* Constify a couple more variablesChris Robinson2018-09-281-2/+2
|
* Update changelogChris Robinson2018-09-261-0/+3
|
* Include the limiter's lookAhead delay in the device latencyChris Robinson2018-09-256-8/+25
|
* Don't hardcode the limiter thresholdChris Robinson2018-09-251-8/+23
| | | | It's now calculated from the output sample type and dither depth.
* Update the output limiter/compressorChris Robinson2018-09-254-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 fadingChris Robinson2018-09-231-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 updateChris Robinson2018-09-231-0/+49
|
* Rename ALreverbState to ReverbStateChris Robinson2018-09-231-23/+23
|
* Update changelogChris Robinson2018-09-221-0/+13
|
* Improve the gain stepping difference checkChris Robinson2018-09-223-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 spacingChris Robinson2018-09-211-1/+1
|
* Use an internal event to more timely release old effect statesChris Robinson2018-09-214-5/+47
|
* Remove an unnecessary mutexChris Robinson2018-09-203-5/+0
|
* Stop the event thread when releasing the contextChris Robinson2018-09-201-6/+6
| | | | To ensure no user callback gets called after alcDestroyContext.
* Put user events in a union structureChris Robinson2018-09-206-36/+43
|
* Always start the event thread with the contextChris Robinson2018-09-203-45/+31
|
* Remove another duplicate functionChris Robinson2018-09-1916-59/+42
|
* Combine nearly-duplicate structuresChris Robinson2018-09-194-24/+15
|
* Remove a couple duplicate functionsChris Robinson2018-09-193-35/+8
|
* Add macros for commonly used square rootsChris Robinson2018-09-194-19/+22
|
* Use ALsizei for the source resample positionChris Robinson2018-09-185-8/+5
|
* Properly queue buffers for OpenSL captureChris Robinson2018-09-171-32/+9
|
* Fix some potential race conditions with OpenSLChris Robinson2018-09-171-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 othersChris Robinson2018-09-175-49/+38
|
* Fix buffer queue mixing logicChris Robinson2018-09-161-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 entriesChris Robinson2018-09-141-6/+7
| | | | | The list can contain (reuable) NULL entries, so the max - current_size doesn't indicate how many can be allocated.
* The last reverb loop update doesn't need an aligned count.Chris Robinson2018-09-111-4/+7
|
* Ensure the max reverb update size is a multiple of 4Chris Robinson2018-09-111-2/+4
| | | | | | It's not an issue for the final mix, but if one loop has an unaligned count, the next loop will have unaligned input and output buffer targets which can crash the SSE mixers.
* Separate the delay line feeding from readingChris Robinson2018-09-101-2/+4
| | | | | Since it feeds a different line than it reads, the feeding could overwrite what's subsequently read.
* Avoid a couple line count assumptionsChris Robinson2018-09-101-2/+2
|
* Combine identical loops into a separate functionChris Robinson2018-09-101-46/+21
|
* Handle the early reflection delay separate from late refeedChris Robinson2018-09-101-57/+40
|
* Some suggested changes for iOSChris Robinson2018-09-071-3/+11
|
* PATH_MAX not MAX_PATHChris Robinson2018-09-071-1/+1
|
* Load .alsoftrc from the app bundle root on macOSChris Robinson2018-09-071-0/+23
| | | | | Not sure what priority this should have. Currently it loads after system-level configs, and before user-level configs.
* Pass the device name list to the backend probe methodChris Robinson2018-09-0720-145/+106
|
* Implement capture support for SoundIOChris Robinson2018-09-071-6/+266
|
* Rename ALCsndioBackendChris Robinson2018-09-073-51/+51
|
* Release 1.19.0openal-soft-1.19.0Chris Robinson2018-09-062-3/+3
|
* Update changelog about 32-bit using SSE2 by defaultChris Robinson2018-09-031-0/+3
|
* Slightly restructure some loopsChris Robinson2018-09-033-39/+34
|
* Extract SIMD values right before using themChris Robinson2018-09-033-21/+21
|
* Avoid double-resizing when appending a char to a stringChris Robinson2018-09-021-2/+2
|
* Read the whole Features string for neon supportChris Robinson2018-09-021-12/+20
|
* Fix a typo in the changelogChris Robinson2018-08-311-1/+1
|
* Update a commentChris Robinson2018-08-311-1/+1
|
* Pass the appropriate /arch switch for x86 MSVCChris Robinson2018-08-311-12/+30
|
* Include the mid-band decay with the density gainChris Robinson2018-08-311-7/+7
|