aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Rename ALfilterState/Type to BiquadState/TypeChris Robinson2018-03-2310-99/+99
|
* Remove an unused struct and move some functions to where they're usedChris Robinson2018-03-231-38/+24
|
* Combine multiple allocations into oneChris Robinson2018-03-231-16/+5
|
* Some formatting cleanupChris Robinson2018-03-221-67/+68
|
* Don't use an ALsizei for a potentially negative valueChris Robinson2018-03-221-2/+3
|
* Define the Hanning window globally once for the pitch shifterChris Robinson2018-03-222-11/+24
|
* Fix a delta phase offset calculation in the pitch shifterChris Robinson2018-03-221-1/+1
| | | | tmp can be negative, and &1 is not the same as %2 in that case.
* Hold some immediate values on the stackChris Robinson2018-03-221-11/+13
|
* Avoid some memset calls in the pitch shifter process loopChris Robinson2018-03-221-4/+11
|
* Use appropriately-sized buffers for the pitch shifterChris Robinson2018-03-221-24/+25
|
* Move NFC filters to the filter directoryChris Robinson2018-03-224-12/+10
|
* Move the filter implementation to a separate directoryChris Robinson2018-03-2217-249/+266
|
* Rename mixer_inc.c to hrtf_inc.cChris Robinson2018-03-224-3/+3
|
* Move mixer sources into a sub-directoryChris Robinson2018-03-2214-22/+21
|
* Use the global MixSamples for the pitch shifter outputChris Robinson2018-03-221-14/+10
|
* Change a parameter type to float since that's what it's used asChris Robinson2018-03-221-3/+3
|
* Slightly restructure the pitch-shifter process loopChris Robinson2018-03-221-115/+110
|
* Fix typo (Substraction -> Subtraction) and rename related functionChris Robinson2018-03-211-3/+3
|
* Avoid duplicate path searches in the routerChris Robinson2018-03-211-18/+39
| | | | | And avoid inadvertently increasing the priority of the system path over the executable's path, or either of them over the current working directory.
* Don't auto-attenuate the pitch shifter outputChris Robinson2018-03-211-3/+4
|
* Don't use mutable fields for constant valuesChris Robinson2018-03-211-39/+42
|
* Avoid placing a 2K sample buffer on the stackChris Robinson2018-03-211-4/+6
|
* Clean up some code formatting in the pitch shifter sourceChris Robinson2018-03-211-494/+478
| | | | | Clean up excessive newlines and extra-long comments, move static inline definitions to their declarations.
* Fix for older MSVC lacking strtofChris Robinson2018-03-211-0/+7
|
* Merge pull request #177 from Raulshc/Pitch-shifterkcat2018-03-2110-10/+543
|\ | | | | EFX:Pitch shifter
| * EFX:Own size for pitch shifter buffersRaulshc2018-03-191-17/+18
| |
| * Alsoft-config: Add pitch shifter effectRaulshc2018-03-183-8/+28
| |
| * EFX:Pitch Shifter implementationRaulshc2018-03-187-2/+514
| | | | | | Add pitch shifter effect using standard phase vocoder, based on work of Stephan Bernsee. Only mono signal processing by now.
* | Update the multi-reverb example with improved transitionsChris Robinson2018-03-201-143/+236
| | | | | | | | | | | | | | | | This better calculates the environment coverage by correctly calculating the portal's extents, improves the panning direction when close to the portal, and applies attenuation based on contribution. Movement has changed to make the listener move back and forth between environments with a stationary source, rather than continually looping environments with a position-relative source.
* | Fix the reverb panning behavior to better fit the specChris Robinson2018-03-191-83/+38
| | | | | | | | | | | | Previously it would attenuate the response from direction opposite to the vector, whereas the property descriptions say it should simply move all reflections toward the given direction.
* | Change the presets for the multireverb exampleChris Robinson2018-03-161-2/+2
|/
* Use a macro template to define similar functionsChris Robinson2018-03-151-78/+48
|
* Remove an extraneous +Chris Robinson2018-03-141-1/+1
|
* Remove an outdated commentChris Robinson2018-03-141-5/+0
|
* Release the PulseAudio mainloop lock soonerChris Robinson2018-03-141-10/+16
|
* Store the filter history in local variablesChris Robinson2018-03-142-28/+34
| | | | | Despite being marked as restrict (and const for src) to mark the pointers as being non-aliased, it seems the compiler optimizes better this way.
* Avoid using pa_stream_begin_write with PulseAudioChris Robinson2018-03-141-23/+9
| | | | | | | | | | | | | It seems to actually have a negative performance impact when the system is under load. Without having actual measurements for any potential benefits, simply go with the recommended (and previous fallback) method of allocating space for the write and passing the free method. Ideally some kind of ring buffer could be used, so rather than constantly allocating and freeing blocks of memory, it uses the same memory over again with the callback marking each one as reusable. Unfortunately the callback isn't given much information to work with, and the update size (minreq) can potentially change during playback, which complicates things.
* Move a loop into a functionChris Robinson2018-03-131-5/+7
|
* Apply a distance decay on the source send for the reverb's DecayLFRatioChris Robinson2018-03-113-2/+12
|
* Comment and clarify some codeChris Robinson2018-03-111-2/+10
|
* Add methods to clean up althrd and altss dataChris Robinson2018-03-104-58/+53
|
* Rename the mmdevapi backend to wasapiChris Robinson2018-03-099-192/+206
|
* Add extern "C" to some headersChris Robinson2018-03-096-17/+57
|
* Prefix SDL2 device names on WindowsChris Robinson2018-03-091-6/+31
|
* Request the device's sample type for SDL2Chris Robinson2018-03-091-1/+13
|
* Store the frame size for the SDL2 backendChris Robinson2018-03-081-6/+6
|
* Print the unsupported values from SDL2Chris Robinson2018-03-081-5/+2
|
* Init and quit the SDL2 audio subsystem with the factoryChris Robinson2018-03-081-26/+10
|
* Avoid deinitializing backends that never initializedChris Robinson2018-03-081-6/+12
|
* Also save the update size with SDL2Chris Robinson2018-03-081-8/+12
|