aboutsummaryrefslogtreecommitdiffstats
path: root/alc/effects/reverb.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Precalculate some valuesChris Robinson2020-04-161-11/+17
| | | | | MSVC isn't as willing to precompute sqrt and log10 results from known input values.
* Simplify some reverb update codeChris Robinson2020-04-161-49/+36
|
* Remove another unnecessary return valueChris Robinson2020-04-161-6/+4
|
* Remove an always-true return valueChris Robinson2020-04-161-8/+5
|
* Get rid of the specialized MixRow_ methodsChris Robinson2020-04-161-18/+41
|
* Throw exceptions for errors in the effect getters/settersChris Robinson2020-04-101-378/+378
|
* Clean up some more unnecessary uses of AL typesChris Robinson2020-04-081-3/+3
|
* Avoid ALfloat and ALint in the effectsChris Robinson2020-04-081-160/+160
|
* Combine the late reverb feedback and modulator delay linesChris Robinson2020-04-061-37/+24
|
* Include the average modulation delay for the late reverb feedbackChris Robinson2020-04-061-59/+63
|
* Reimplement the modulation stage for reverbChris Robinson2020-04-051-37/+199
| | | | | This seems to be quite close recordings from real hardware, so it's probably good enough.
* Use a standard bool instead of ALbooleanChris Robinson2020-03-281-4/+4
|
* Use a span for the band-splitter inputChris Robinson2019-12-251-2/+2
|
* Pass a span for the biquad filter inputChris Robinson2019-12-251-8/+8
|
* Use unique setters for biquad filter parametersChris Robinson2019-12-211-18/+9
| | | | One for whether a slope parameter is used, and one for bandwidth.
* Avoid storing an integer in a pointerChris Robinson2019-09-211-3/+6
| | | | | | C++ does not guarantee that, given an int of sufficient size, converting int->ptr->int will result in the original value. A pointer may have more than one integer representation. Only ptr->int->ptr round trips are well-defined.
* Remove and simplify some functionsChris Robinson2019-09-201-6/+8
|
* Fix a few warnings from MSVCChris Robinson2019-09-141-2/+2
|
* Fix implicit conversions in the effectsChris Robinson2019-09-141-11/+11
|
* Remove a couple unnecessary variablesChris Robinson2019-08-271-7/+5
|
* Remove some unnecessary local spansChris Robinson2019-08-261-23/+18
|
* Use a span for effect state inputChris Robinson2019-08-261-3/+4
|
* Fade reverb over the whole updateChris Robinson2019-08-241-106/+104
| | | | | | | Since the early and late panning gains fade over the course of the update, it should match the fading done by the feedback loops to avoid percussive "blasts" when transitioning to a long-decay low-gain environment from a short-decay high-gain environment.
* Make a couple functions into member functionsChris Robinson2019-08-231-72/+72
|
* Pass samplesToDo as size_t to effectsChris Robinson2019-08-201-6/+6
|
* Use size_t for reverb offsets and masksChris Robinson2019-08-201-97/+92
|
* Simplify passing some span parametersChris Robinson2019-08-201-10/+6
|
* Try to fix span construction for MSVCChris Robinson2019-08-201-3/+3
|
* Use size_t for the NFC and biquad filters' sample countChris Robinson2019-08-201-1/+1
|
* Pass a span for the Mix function's inputChris Robinson2019-08-201-10/+10
|
* Pass the MixRow buffer size as a spanChris Robinson2019-08-201-15/+17
|
* Change NUM_LINES to a size_t for MSVCChris Robinson2019-08-191-33/+33
|
* Fix for GCC5 decaying an array to a pointerChris Robinson2019-08-191-6/+6
|
* More logically separate temp reverb buffersChris Robinson2019-08-191-37/+36
|
* Allow using a variable channel stride for MixRowSamplesChris Robinson2019-08-191-5/+10
|
* Don't require MixRow's output to be a FloatBufferLineChris Robinson2019-08-181-5/+5
|
* Reduce the size of reverb's temporary buffer storageChris Robinson2019-08-181-85/+94
| | | | The size of ReverbState is now almost half of what it was.
* Avoid an out parameter for VectorPartialScatterChris Robinson2019-08-171-5/+7
|
* Use a std::array for the reverb sample bufferChris Robinson2019-08-171-19/+11
|
* Simplify the weighted decay time calculationChris Robinson2019-08-081-9/+5
|
* Turn a couple methods into member functionsChris Robinson2019-08-081-41/+40
|
* Remove the ReverbSpeedOfSound hackChris Robinson2019-08-051-5/+4
| | | | | | | No other effect depends on context or listener properties, so reverb being the only exception for speed of sound and meters per unit was putting extra work on the effect engine for no real reason. Especially since the reverb decay time should be the time actual time to decay irrespective of other settings.
* Modify LIKELY and UNLIKELY to not need extra parenthesisChris Robinson2019-08-041-1/+1
|
* Use a smart pointer for holding the context's deviceChris Robinson2019-08-011-1/+1
|
* Move another function to a ALCcontext methodChris Robinson2019-07-301-13/+10
|
* Properly prefix ALCcontext membersChris Robinson2019-07-301-2/+2
|
* Rename al/* sources to avoid camel-caseChris Robinson2019-07-291-3/+3
|
* Rename Alc to alcChris Robinson2019-07-281-0/+2102