aboutsummaryrefslogtreecommitdiffstats
path: root/alc/effects
Commit message (Collapse)AuthorAgeFilesLines
* Add a UHJ-specific coefficient scaling arrayChris Robinson2021-07-131-2/+7
|
* Update include headersChris Robinson2021-04-2715-30/+33
| | | | Don't add alc/ to the include paths.
* Update some license noticesChris Robinson2021-04-272-28/+52
| | | | Permission to relicense was granted via email.
* Update includesChris Robinson2021-04-2711-15/+18
|
* Move BufferStorage and Voice to coreChris Robinson2021-04-271-1/+1
|
* Move GetChannelIdxByName and clean up some more includesChris Robinson2021-04-262-2/+0
|
* Move some functions to coreChris Robinson2021-04-2514-88/+238
| | | | And clean up more includes
* More include cleanupChris Robinson2021-04-241-0/+3
|
* Move GetHFOrderScales to a more appropriate placeChris Robinson2021-04-242-4/+3
|
* Create a base the ALCdevice and ALCcontext structsChris Robinson2021-04-2415-69/+70
| | | | | A base that contains the API-agnostic data, with ALCdevice and ALCcontext being for AL-specific data.
* Add support for 4-channel UHJChris Robinson2021-03-311-1/+2
| | | | Also add the SOFT moniker to the new macros
* Handle 3-channel UHJ audio buffersChris Robinson2021-03-311-1/+2
|
* Start an interface for providing UHJ audioChris Robinson2021-03-311-1/+20
| | | | Currently only 2-channel UHJ, which gets treated as stereo.
* Avoid copying buffers for aligning overlapped windowsChris Robinson2021-01-302-33/+42
|
* Store buffer info in the queue entryChris Robinson2021-01-2415-47/+53
|
* Avoid global constexpr arraysChris Robinson2021-01-211-11/+11
|
* Add NEON-enhanced FIR loops for convolution and UHJChris Robinson2020-12-311-0/+15
|
* Return an intrusive_ptr from EffectStateFactory::createChris Robinson2020-12-2815-19/+34
|
* Avoid including voice.h in alcontext.hChris Robinson2020-12-274-0/+6
|
* Combine EffectState::deviceUpdate with setBufferChris Robinson2020-12-2615-35/+29
|
* Avoid AL enums for the EffectSlot typeChris Robinson2020-12-261-2/+2
|
* Add a crossover frequency field for the deviceChris Robinson2020-12-262-2/+2
| | | | | | Used when upsampling low-order ambisonic signals to higher order. Rather than a hardcoded 400hz, it ensures a consistent crossover point when an ambdec configuration is used. It can also allow for an alsoft config option.
* Update a comment and type used in the convolution effectChris Robinson2020-12-251-11/+11
|
* Rename From2D to FromACN2DChris Robinson2020-12-251-1/+1
|
* Avoid AL types and enums in the effect processorsChris Robinson2020-12-2412-142/+147
|
* Move logging to coreChris Robinson2020-12-171-1/+1
|
* Move fmt_traits to coreChris Robinson2020-12-131-1/+1
|
* Move ambidefs.h to coreChris Robinson2020-12-122-2/+2
|
* Use constexpr variables instead of macrosChris Robinson2020-12-061-9/+9
|
* Use a smaller FFT for convolutionChris Robinson2020-12-051-3/+3
|
* Change some macros into constexpr variablesChris Robinson2020-12-047-17/+17
|
* Move the filters to coreChris Robinson2020-12-047-21/+19
|
* Change a couple macros into constexpr variablesChris Robinson2020-11-286-10/+10
|
* Move AL EffectProp handling to separate sourcesChris Robinson2020-11-2515-1959/+2
|
* 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-0715-65/+109
|
* Replace the mixer fraction macros with constexpr variablesChris Robinson2020-10-213-14/+14
|
* Replace some more macros with constexpr variablesChris Robinson2020-10-213-6/+6
|
* Support all buffer layouts for convolutionChris Robinson2020-09-221-22/+99
|
* Don't use direct channels with convolutionChris Robinson2020-09-181-19/+5
| | | | | It may come back as an effect property, but it's probably better to not try forcing it by default.
* Allow higher-order B-Format buffers for convolutionChris Robinson2020-09-181-6/+5
| | | | | Only the first-order channels will be used, but higher-order buffers will be allowed.
* Avoid extraneous buffers and buffer clearsChris Robinson2020-09-171-9/+9
|
* Use inline wrappers to clarify forward/inverse FFTsChris Robinson2020-09-132-5/+5
|
* Don't assume iterators are pointersChris Robinson2020-09-091-2/+2
|
* Apply the first convolution segment in the time domainChris Robinson2020-09-091-22/+86
| | | | | | | This avoids an inherent delay from the effect, at the cost of higher CPU use. Having a customizable user-specified delay (with said user ensuring a properly trimmed impulse response) could help alleviate the cost since once the delay exceeds the segment size, the initial FIR filter could be skipped.
* Don't leave the negative frequencies as 0 for inverse FFTChris Robinson2020-09-082-5/+10
|
* Avoid an extraneous ConvolutionFilter sub-objectChris Robinson2020-09-061-112/+90
|
* Rework effect slot buffer settingChris Robinson2020-09-052-27/+14
| | | | | | | | Rather than creating an effect-specific buffer that gets passed along as a property, the buffer is set the effect state when the effect state is created, the device is updated, or the buffer is changed. The buffer can only be set while the effect slot isn't playing, so it won't be changed or updated while the mixer is processing the effect state.