aboutsummaryrefslogtreecommitdiffstats
path: root/Alc
Commit message (Collapse)AuthorAgeFilesLines
* Move the filter implementation to a separate directoryChris Robinson2018-03-2212-47/+261
|
* Rename mixer_inc.c to hrtf_inc.cChris Robinson2018-03-224-3/+3
|
* Move mixer sources into a sub-directoryChris Robinson2018-03-2213-10/+9
|
* 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
|
* 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.
* Merge pull request #177 from Raulshc/Pitch-shifterkcat2018-03-212-1/+498
|\ | | | | EFX:Pitch shifter
| * EFX:Own size for pitch shifter buffersRaulshc2018-03-191-17/+18
| |
| * EFX:Pitch Shifter implementationRaulshc2018-03-182-1/+497
| | | | | | Add pitch shifter effect using standard phase vocoder, based on work of Stephan Bernsee. Only mono signal processing by now.
* | 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.
* 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-111-2/+10
|
* Comment and clarify some codeChris Robinson2018-03-111-2/+10
|
* Add methods to clean up althrd and altss dataChris Robinson2018-03-101-0/+3
|
* Rename the mmdevapi backend to wasapiChris Robinson2018-03-094-175/+180
|
* Add extern "C" to some headersChris Robinson2018-03-095-0/+40
|
* 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
|
* Use the audio device lock for the SDL2 backendChris Robinson2018-03-081-4/+13
|
* Properly close the SDL2 audio deviceChris Robinson2018-03-081-4/+15
|
* Avoid calling SDL_GetNumAudioDevices multiple timesChris Robinson2018-03-081-3/+10
|
* Only calculate the modulation samples once for all 4 channelsChris Robinson2018-03-081-19/+25
|
* Simplify modulator effect index updatingChris Robinson2018-03-081-3/+2
|
* Rename UpdateContextSources for clarityChris Robinson2018-03-081-2/+2
|
* Properly limit the max number of effect slots to 2^31 - 1Chris Robinson2018-03-081-0/+2
|
* SDL2 backend: Reset device parametersJan Niklas Hasse2018-03-081-7/+20
|
* SDL2 backend: Allow changes to channels and formatJan Niklas Hasse2018-03-081-1/+22
|
* SDL2 backend: Allow frequency changesJan Niklas Hasse2018-03-081-2/+7
|
* Handle passing NULL to SDL_OpenAudioDevice as a special deviceJan Niklas Hasse2018-03-081-2/+8
| | | | https://discourse.libsdl.org/t/changing-audio-output-when-the-default-audio-playback-device-changes/22399/2
* SDL2 backend: Use callback instead of a timing loopJan Niklas Hasse2018-03-081-83/+11
| | | | The system clock and audio clock aren't necessarily synchronized.
* Add SDL2 backend for playback, fix #173Jan Niklas Hasse2018-03-073-0/+269
|
* Don't check for space in the ringbuffer before trying to writeChris Robinson2018-03-033-14/+7
| | | | The write method already checks and returns how much it managed to fit in.
* Use a plain mutex for the property lockChris Robinson2018-03-031-5/+7
|
* Init more stuff in InitDeviceChris Robinson2018-03-031-18/+9
|