aboutsummaryrefslogtreecommitdiffstats
path: root/alc/alu.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Avoid some const_castsChris Robinson2024-01-031-5/+4
|
* Allocate effect slot property updates in clustersChris Robinson2024-01-031-1/+1
|
* Clean up some gotos and non-optimal castsChris Robinson2023-12-261-6/+6
|
* Rework effect property handlingChris Robinson2023-12-241-7/+7
| | | | To nake EffectProps a variant instead of a union, and avoid manual vtables.
* Use a variant instead of a union for InterpStateChris Robinson2023-12-211-3/+3
|
* Avoid using a couple C limits macrosChris Robinson2023-12-201-2/+3
|
* Use proper iterators for sorting effect slots where possibleChris Robinson2023-12-201-7/+4
|
* Fix some implicit conversionsChris Robinson2023-12-171-5/+7
|
* More clang-tidy fixesChris Robinson2023-12-091-77/+81
|
* Clean up some more clang-tidy warningsChris Robinson2023-12-081-10/+11
|
* Fix some clang-tidy warningsChris Robinson2023-12-081-2/+2
|
* Improve the room rolloff factor hanldingChris Robinson2023-12-071-79/+100
| | | | | | | | | | Testing with Generic Software shows that the reverb room rolloff factor applies to the currently selected distance model, not necessarily an inverse distance model as described in the EFX docs. Though it should be noted, Generic Software completely ignores AL_EFFECTSLOT_AUXILIARY_SEND_AUTO, never applies the cones to the wet gain, and doesn't clamp to AL_MIX_GAIN and AL_MAX_GAIN for the wet gains. It's unclear if the reverb or source room rolloff factors, or the initial decay, should be imfluenced by the min or max gain properties.
* Don't apply the reverb room rolloff with a 0 ref distanceChris Robinson2023-12-061-2/+3
|
* Use RAII to handle writing under the mixer seqlockChris Robinson2023-12-041-19/+9
|
* Make the device clock members atomicChris Robinson2023-12-031-9/+20
| | | | | | Even though they're protected by a SeqLock of sorts, it's still UB to read and write non-atomic vars from different threads. It's fine to do relaxed reads and writes given the lock though, to help alleviate the cost.
* Remove some explicit template parametersChris Robinson2023-11-101-8/+7
|
* Use a byte for the channel indexChris Robinson2023-10-221-9/+9
|
* Use a span for a known array length instead of a raw pointerChris Robinson2023-10-151-14/+14
|
* Improve ambisonic rotator coefficient accuracyChris Robinson2023-10-021-17/+38
|
* Avoid casting an integer literalChris Robinson2023-09-221-1/+1
|
* Store channel positions as vectors instead of anglesChris Robinson2023-09-141-117/+162
| | | | To avoid extraneous conversions between angles and vectors
* Use a span instead of an auto&& to arrayChris Robinson2023-09-131-7/+7
|
* Fix some typos (#872)Dirk Stolle2023-07-041-1/+1
|
* Use inline variables instead of functions with static variablesChris Robinson2023-06-141-12/+12
|
* Rename threads.cpp/h to alsem.cpp/hChris Robinson2023-06-011-1/+0
|
* Be a bit more safe with type manglingChris Robinson2023-05-241-4/+2
|
* Use a variant for AsyncEventChris Robinson2023-05-081-15/+16
|
* Send a debug message when disconnectingChris Robinson2023-05-081-9/+6
|
* Replace al::optional with std::optionalChris Robinson2023-05-041-0/+1
|
* Scale B-Format panning coefficients only when neededChris Robinson2023-04-061-7/+7
|
* Use macros for the likely/unlikely attributesChris Robinson2023-03-011-6/+6
| | | | | The syntax parser for GCC 8 (and earlier?) fails when these attributes are in certain places.
* Separate decoding and mixing from resamplingChris Robinson2023-02-121-6/+0
|
* Use a span to hold the cubic table referenceChris Robinson2023-02-101-1/+1
|
* Rename the bsinc table variablesChris Robinson2023-02-071-2/+2
|
* Use an interpolated FIR filter for cubic resamplingChris Robinson2023-02-061-0/+11
| | | | | | Similar to how the bsinc filters work, but optimized for 4-point filtering. At least the SSE version is notably faster than calculating the coefficients in real time.
* Avoid using auto for lambda parametersChris Robinson2023-02-061-1/+1
|
* Transpose the ambisonic rotation matrix and helper coefficientsChris Robinson2023-01-261-39/+32
|
* Transpose the ambisonic voice mixing matrixChris Robinson2023-01-251-34/+41
| | | | | To more efficiently prepare the panning coefficients. Also avoid making a stack copy of the matrix to reuse as the target.
* Change a couple macros to constexpr variablesChris Robinson2023-01-161-4/+4
|
* Precalculate reused scale factorsChris Robinson2023-01-151-1/+1
|
* clang-tidy cleanups (#800)Rosen Penev2023-01-151-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * clang-tidy: use bool literals Found with modernize-use-bool-literals Signed-off-by: Rosen Penev <[email protected]> * clang-tidy: replace std::bind with lambdas Found with modernize-avoid-bind Signed-off-by: Rosen Penev <[email protected]> * clang-tidy: use data() instead of pointer stuff Found with readability-container-data-pointe Signed-off-by: Rosen Penev <[email protected]> * clang-tidy: use empty() Found with readability-container-size-empty Signed-off-by: Rosen Penev <[email protected]> * clang-tidy: remove static in anon namespace Found with readability-static-definition-in-anonymous-namespace Signed-off-by: Rosen Penev <[email protected]> * clang-tidy: remove const return Found with readability-const-return-type Signed-off-by: Rosen Penev <[email protected]> Signed-off-by: Rosen Penev <[email protected]>
* Don't use doubles for upsampling B-Format transformsChris Robinson2023-01-131-3/+3
|
* Rename some struct membersChris Robinson2023-01-101-3/+3
| | | | And make a related function a member function
* Use a bitset for the enabled event flagsChris Robinson2022-12-161-4/+3
|
* Implement an al::unreachable wrapper/helperChris Robinson2022-12-131-1/+1
|
* Avoid using a macro to wrap standard attributesChris Robinson2022-12-061-6/+6
|
* Avoid LIKELY/UNLIKELY macrosChris Robinson2022-12-051-5/+5
|
* Use standard likely/unlikely attributes when availableChris Robinson2022-12-051-1/+1
|
* Add the ability to start a voice at a particular timeChris Robinson2022-11-031-1/+5
|
* Track if doing 2D mixing onlyChris Robinson2022-09-041-3/+6
| | | | And use it to select the proper HF scales