aboutsummaryrefslogtreecommitdiffstats
path: root/alc/alu.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Rename Uhj2Encoder to UhjEncoderChris Robinson2021-04-011-1/+1
|
* Add support for 4-channel UHJChris Robinson2021-03-311-2/+5
| | | | Also add the SOFT moniker to the new macros
* Handle 3-channel UHJ audio buffersChris Robinson2021-03-311-3/+5
|
* Decode UHJ buffers to B-Format for mixingChris Robinson2021-03-311-10/+7
| | | | | This should also have an adjustment for the shelf filter. Although it's not clear what the appropriate adjustments should be.
* Start an interface for providing UHJ audioChris Robinson2021-03-311-0/+7
| | | | Currently only 2-channel UHJ, which gets treated as stereo.
* Avoid making BSincPointsMax publicChris Robinson2021-03-011-1/+0
|
* Avoiding cutting all bsinc resampler output at scale 0Chris Robinson2021-02-241-2/+2
| | | | | | | | | | | | This is mostly for the SampleConverter, used by some capture backends. When recording at really low rates, like 5512hz, with a device capturing at a higher rate like 44100hz or 48000hz, it hits the filter's downscaling limit and produces pure silence. In such cases, it's better to just accept some aliasing noise so that the app will still get some recognizable audio. The alternative would be to scale the desired rate by 2x, 3x, etc until it's above the bsinc limit, then take every 2nd, 3rd, etc sample of the result as if by an extra simpler resampler pass.
* Use spans instead of references to arraysChris Robinson2021-02-061-3/+3
|
* Add a panning "deadzone" for spatialized sourcesChris Robinson2021-01-281-1/+1
| | | | It is now the greater of 'epsilon' (1 / 2**23) or ref_distance/1024.
* Avoid global constexpr arraysChris Robinson2021-01-211-12/+12
|
* Move cpu_caps and fpu_ctrl to coreChris Robinson2020-12-311-2/+2
|
* Use a unique_ptr to hold DistanceComp dataChris Robinson2020-12-271-2/+3
|
* Use a uint for a bitfieldChris Robinson2020-12-271-2/+2
|
* Avoid AL enums for the EffectSlot typeChris Robinson2020-12-261-3/+3
|
* Rename From2D to FromACN2DChris Robinson2020-12-251-1/+1
|
* Move AsyncEvent to a separate headerChris Robinson2020-12-161-1/+1
|
* Send stop events when stopping paused voicesChris Robinson2020-12-161-5/+8
|
* Use a separate enum for the VoiceChange stateChris Robinson2020-12-161-6/+6
|
* Move VoiceChange to a separate headerChris Robinson2020-12-161-0/+1
|
* Avoid a generic event structChris Robinson2020-12-151-6/+3
|
* Avoid some AL typesChris Robinson2020-12-151-51/+51
|
* Use a separate structure for the context/listener paramsChris Robinson2020-12-151-50/+42
|
* Move the mixer functions to coreChris Robinson2020-12-121-1/+1
|
* Avoid passing DirectHrtfState to MixDirectHrtfChris Robinson2020-12-121-3/+3
|
* Move ambidefs.h to coreChris Robinson2020-12-121-1/+1
|
* Use an alias for the DevFmtType typeChris Robinson2020-12-051-5/+3
|
* Change some macros into constexpr variablesChris Robinson2020-12-041-12/+12
|
* Move a couple more things to coreChris Robinson2020-12-041-2/+2
|
* Move the filters to coreChris Robinson2020-12-041-3/+3
|
* Move the bsinc tables to coreChris Robinson2020-12-041-2/+1
|
* Move mastering.cpp/h to coreChris Robinson2020-12-041-1/+1
|
* Avoid a global MAX_PITCH macroChris Robinson2020-12-041-4/+10
|
* Change a couple macros into constexpr variablesChris Robinson2020-11-281-3/+3
|
* Move some sources to a separate directoryChris Robinson2020-11-271-1/+1
| | | | To begin separating the ALC interfaces from internal ones.
* Use doubles to calculate the listener matrix translationChris Robinson2020-11-131-42/+17
| | | | | To help stablize sources near the listener, when away from origin. Also clean up some related methods and move them to more appropriate places.
* Avoid testing a bool against AL_FALSEChris Robinson2020-11-121-1/+1
|
* Use a separate structure for the active effect slot propertiesChris Robinson2020-11-071-59/+55
|
* Use more efficient sorting for effect slotsChris Robinson2020-11-051-37/+47
|
* Store the wet buffers in the contextChris Robinson2020-11-021-1/+1
| | | | | | This is rather ugly, but we need the wet buffers to remain allocated after its effect slot is deleted, because a voice can still use it for its final fade-out mix.
* Replace the mixer fraction macros with constexpr variablesChris Robinson2020-10-211-7/+7
|
* Replace some more macros with constexpr variablesChris Robinson2020-10-211-12/+12
|
* Change some more macros into constexpr variablesChris Robinson2020-10-211-5/+5
|
* Use constexpr variables in place of some macrosChris Robinson2020-10-191-4/+4
|
* Rework effect slot buffer settingChris Robinson2020-09-051-18/+0
| | | | | | | | 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.
* Use enum class for a couple enumsChris Robinson2020-09-011-4/+4
|
* Use a separate structure for buffer storageChris Robinson2020-08-281-3/+3
|
* Blend panned B-Format source directivity given its radiusChris Robinson2020-08-271-52/+54
|
* Store a reference to the effect buffer as an active propertyChris Robinson2020-08-241-0/+18
|
* Use an intrusive_ptr for ALeffectslotProps::StateChris Robinson2020-08-241-3/+2
|
* Change a couple functions into member functionsChris Robinson2020-08-071-30/+25
|