aboutsummaryrefslogtreecommitdiffstats
path: root/alc/effects/pshifter.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Use deduction guides instead of helper functions for spansChris Robinson2023-05-051-2/+2
|
* Simplify effect state buffer handling someChris Robinson2023-04-041-2/+2
|
* Increase the pitch shifter oversample factor to 8Chris Robinson2023-01-191-38/+37
| | | | | | And use 32-bit float processing. Float precision doesn't seem to be detrimental to the overall quality, while 8x oversampling seems to help against the harmonics.
* Improve the output scaling of the pitch shifterChris Robinson2023-01-191-1/+1
| | | | | | For tones than land exactly on a frequency bin, which are subject to the least amount of error when not adjusted, this produces a level that more closely matches the original input.
* Don't return a large-ish array on the stackChris Robinson2023-01-191-15/+17
|
* Slightly improve phase wrapping in the pitch shifterChris Robinson2023-01-191-10/+11
|
* Limit pitch shifter pitch between 0.5 and 2.Chris Robinson2023-01-181-1/+1
| | | | | | The current algorithm isn't designed to go beyond that. The course tuning property is limited to that range as well, though the fine tuning property could potentially extend it out by half a semitone.
* Use constexpr variables instead of macrosChris Robinson2023-01-181-51/+57
|
* Use a variable to handle a long value definitionChris Robinson2023-01-181-2/+3
|
* Make a variable for a reused valueChris Robinson2023-01-171-2/+2
|
* Use a better frequency bin target for pitch shiftingChris Robinson2023-01-171-22/+46
| | | | And slightly adjust the Hann window.
* Avoid manually specifying FFT template parametersChris Robinson2022-12-141-2/+2
|
* Use complex floats for convolution reverb FFTsChris Robinson2022-11-241-2/+2
|
* Inline and precompute some CalcDirectionCoeffs callsChris Robinson2022-08-181-1/+1
|
* Use proper array sizes for more gainsChris Robinson2022-08-151-2/+2
|
* Get rid of MathDefsChris Robinson2022-01-271-5/+5
|
* Move the effects base and effectslot to coreChris Robinson2021-12-171-1/+1
|
* Update include headersChris Robinson2021-04-271-2/+2
| | | | Don't add alc/ to the include paths.
* Move some functions to coreChris Robinson2021-04-251-6/+16
| | | | And clean up more includes
* Create a base the ALCdevice and ALCcontext structsChris Robinson2021-04-241-4/+4
| | | | | A base that contains the API-agnostic data, with ALCdevice and ALCcontext being for AL-specific data.
* Avoid copying buffers for aligning overlapped windowsChris Robinson2021-01-301-16/+20
|
* Store buffer info in the queue entryChris Robinson2021-01-241-2/+2
|
* Return an intrusive_ptr from EffectStateFactory::createChris Robinson2020-12-281-1/+2
|
* Avoid including voice.h in alcontext.hChris Robinson2020-12-271-0/+1
|
* Combine EffectState::deviceUpdate with setBufferChris Robinson2020-12-261-2/+2
|
* Avoid AL types and enums in the effect processorsChris Robinson2020-12-241-2/+2
|
* Move AL EffectProp handling to separate sourcesChris Robinson2020-11-251-80/+1
|
* Avoid an unnecessary multiplierChris Robinson2020-11-091-15/+12
|
* Fix pitch shifter bin countChris Robinson2020-11-091-1/+1
|
* Simplify some pitch shifter scaling calculationsChris Robinson2020-11-081-8/+7
|
* Use a separate structure for the active effect slot propertiesChris Robinson2020-11-071-4/+7
|
* Replace the mixer fraction macros with constexpr variablesChris Robinson2020-10-211-4/+4
|
* Use inline wrappers to clarify forward/inverse FFTsChris Robinson2020-09-131-2/+2
|
* Don't leave the negative frequencies as 0 for inverse FFTChris Robinson2020-09-081-3/+3
|
* Round the pitch shifter frequency bin targetsChris Robinson2020-05-221-1/+1
|
* Revert "Fix the FFT half point for the shifter effects"Chris Robinson2020-05-091-6/+6
| | | | This reverts commit 12bb5a47cda0ef6ec1ced73ccf5d267a71f9e710.
* Fix the FFT half point for the shifter effectsChris Robinson2020-05-081-6/+6
|
* Slightly improve the Hann windowsChris Robinson2020-05-081-2/+2
| | | | | | There's no need to include the 0 terms on the ends since they'll never contribute a sample. So extend the width to have the 0 terms just outside the window where it wouldn't contribute anyway.
* Avoid an unnecessary out parameterChris Robinson2020-04-211-3/+2
|
* Remove another unnecessary return valueChris Robinson2020-04-161-4/+2
|
* Throw exceptions for errors in the effect getters/settersChris Robinson2020-04-101-39/+45
|
* Avoid ALfloat and ALint in the effectsChris Robinson2020-04-081-9/+9
|
* Use a standard bool instead of ALbooleanChris Robinson2020-03-281-4/+4
|
* More cleanup for the pitch shifterChris Robinson2020-03-221-102/+70
|
* Some type cleanupChris Robinson2020-03-221-28/+26
|
* Clean up the pitch and frequency shifter someChris Robinson2020-03-221-31/+28
|
* Avoid some pre-C++14 workaroundsChris Robinson2020-03-221-4/+3
|
* Fix some more implicit conversions noted by GCCChris Robinson2019-09-141-9/+10
|
* Fix implicit conversions in the effectsChris Robinson2019-09-141-4/+4
|
* Use a span for effect state inputChris Robinson2019-08-261-2/+2
|