Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Use separate structs for the dedicated dialog/lfe effects | Chris Robinson | 2023-12-23 | 2 | -18/+79 |
| | |||||
* | Use a separate struct and union member for flanger properties | Chris Robinson | 2023-12-23 | 1 | -50/+38 |
| | |||||
* | Pass the effect props directly to the eax committer functions | Chris Robinson | 2023-12-23 | 12 | -370/+192 |
| | | | | Rather than the variant that was already checked for what it's holding. | ||||
* | Avoid some template hackery for EAX effect type functions | Chris Robinson | 2023-12-22 | 11 | -162/+66 |
| | |||||
* | Fix some clang-tidy warnings | Chris Robinson | 2023-12-08 | 1 | -1/+1 |
| | |||||
* | fix printf format for MinGW (#942) | Rosen Penev | 2023-12-03 | 1 | -2/+2 |
| | | | | | | With gcc, mingw uses gnu_printf. With clang, printf is used as it does not support gnu_printf. Use the internal header to match this properly. Signed-off-by: Rosen Penev <[email protected]> | ||||
* | Add missing include | Chris Robinson | 2023-10-12 | 1 | -0/+2 |
| | |||||
* | Rename the convolution reverb effect to just convolution | Chris Robinson | 2023-10-12 | 1 | -2/+2 |
| | | | | | While the common use case, convolution can do more than just reverb, and it nicely shortens the name. | ||||
* | Add an orientation property for convolution reverb | Chris Robinson | 2023-10-12 | 1 | -4/+26 |
| | | | | Only affects ambisonic (B-Format and UHJ) formats | ||||
* | Add convolution effect properties to rotate ambisonic responses | Chris Robinson | 2023-10-12 | 1 | -0/+2 |
| | |||||
* | Fix if-comparison (#890) | Johan Mattsson | 2023-07-30 | 1 | -1/+1 |
| | |||||
* | Use a variant to hold EAX effect properties | Chris Robinson | 2023-05-24 | 12 | -335/+329 |
| | |||||
* | Use some more standard functions | Chris Robinson | 2023-05-05 | 1 | -12/+12 |
| | |||||
* | Replace al::optional with std::optional | Chris Robinson | 2023-05-04 | 4 | -14/+14 |
| | |||||
* | Reorder some struct fields for consistency | Chris Robinson | 2023-04-08 | 1 | -10/+10 |
| | |||||
* | Avoid copying to a temporary | Chris Robinson | 2023-03-11 | 11 | -120/+116 |
| | |||||
* | Remove some more unnecessary clamps | Chris Robinson | 2023-03-11 | 1 | -46/+20 |
| | |||||
* | Rename some struct members for clarity | Chris Robinson | 2023-03-11 | 12 | -145/+147 |
| | |||||
* | Convert the remaining EAX effects | Chris Robinson | 2023-03-11 | 3 | -532/+386 |
| | |||||
* | Simplify committing EAX effect properties | Chris Robinson | 2023-03-11 | 5 | -242/+78 |
| | | | | | | | | | | There's no need to explicitly clamp to EFX limits when they're the same as or more lenient than EAX, which were already validated when set, or when it's within tolerance of the effect implementation. Also it's generally better to check once all properties for changes and apply them all if one is different, rather than checking and setting each member individually. | ||||
* | Convert the EAX Frequency Shifter effect | Chris Robinson | 2023-03-11 | 1 | -152/+100 |
| | |||||
* | Convert the EAX Echo and Equalizer effects | Chris Robinson | 2023-03-11 | 2 | -519/+373 |
| | |||||
* | Convert the EAX Autowah and Compressor effects | Chris Robinson | 2023-03-11 | 2 | -352/+260 |
| | |||||
* | Convert the EAX Compressor effect | Chris Robinson | 2023-03-10 | 1 | -85/+55 |
| | | | | And combine some type checks. | ||||
* | Convert EAX chorus and flanger effects | Chris Robinson | 2023-03-10 | 1 | -190/+180 |
| | |||||
* | Rework EAX effect handling | Chris Robinson | 2023-03-10 | 4 | -1280/+757 |
| | | | | | | | Allocate a base EaxEffect object once for all effect types, instead of reallocating different derived types on effect changes. The reverb and null effects have been converted to the new interface, the others are currently broken/unsupported, but will be restored shortly. | ||||
* | Have the null effect inherit from EaxEffect4 | Chris Robinson | 2023-03-09 | 1 | -14/+35 |
| | |||||
* | Add a type indicator to EaxEffectProps | Chris Robinson | 2023-03-09 | 11 | -42/+63 |
| | |||||
* | Store the per-version EAX effect state in the base class | Chris Robinson | 2023-03-09 | 13 | -450/+430 |
| | | | | | | | | | | | | | | | | This is the start of the refactoring for holding separable per-version EAX effects. Currently the effect state is stored in the effect object, which is instantiated per-type. This makes it impossible for different effects to be assigned on different EAX versions for a given effect slot (e.g. if the app sets a Chorus effect on EAX4 Slot0, it would fail to get or set the EAX1/2/3 reverb properties since it's a Chorus effect object). Seperate per-version effects will allow for switching the OpenAL effect by switching versions. This will provide an extra benefit in being able to delay OpenAL effect initialization until some EAX version has been set, avoiding an extraneous reverb and/or chorus processor for apps that only query some EAX properties but don't set anything (or which only use Slot0, leaving Slot1 with a defaulted Chorus effect running). | ||||
* | clang-tidy cleanups (#800) | Rosen Penev | 2023-01-15 | 1 | -1/+1 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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]> | ||||
* | Avoid unnecessary uses of make_optional | Chris Robinson | 2023-01-13 | 4 | -12/+12 |
| | |||||
* | Avoid inlining certain exception functions | Chris Robinson | 2022-12-16 | 1 | -0/+1 |
| | |||||
* | Fixed bug and possible overflow type (#771) | Herman Semenov | 2022-09-23 | 1 | -1/+1 |
| | |||||
* | [EAX] Use separate FX slot state for each version (#730) | Boris I. Bendovsky | 2022-07-12 | 13 | -78/+73 |
| | | | | | | | * [EAX] Use separate FX slot state for each version [EAX] Don't defer FX slot properties * [EAX_FXSLOT] Use mPropsDirty to defer update [EAX_CONTEXT] Commit all updates on first initialization | ||||
* | Don't change the EAX version when getting a reverb property | Chris Robinson | 2022-06-19 | 1 | -11/+7 |
| | |||||
* | Combine multiple individual flags | Chris Robinson | 2022-06-19 | 1 | -52/+34 |
| | |||||
* | Avoid more struct compared for reverb EAX updates | Chris Robinson | 2022-06-18 | 1 | -7/+18 |
| | |||||
* | [EAX] Add separate effect state for each version (#705) | Boris I. Bendovsky | 2022-05-24 | 14 | -5624/+2660 |
| | | | | | * [EAX] Add separate effect state for each version * [EAX] Don't use EAX call as data member | ||||
* | Move EAX files to their own sub-directory | Chris Robinson | 2022-05-16 | 13 | -25/+28 |
| | |||||
* | Silence reverb with EAX by default | Chris Robinson | 2022-04-16 | 1 | -0/+6 |
| | |||||
* | Revert "Set the proper reverb effect defaults for EAX" | Chris Robinson | 2022-03-24 | 1 | -25/+0 |
| | | | | This reverts commit 964a11ef629fa3a89e827516a47949c858ce864c. | ||||
* | Set the proper reverb effect defaults for EAX | Chris Robinson | 2022-03-23 | 1 | -0/+25 |
| | |||||
* | Simplify committing EAX properties | Chris Robinson | 2022-03-05 | 12 | -1004/+309 |
| | | | | | | Based on DirectSound's EAX behavior, committing any EAX property commits *all* deferred property changes, not just the object being changed. So applying EAX changes can be handled in one place. | ||||
* | Handle deferring for EAX 1 reverb | Chris Robinson | 2022-03-04 | 1 | -351/+212 |
| | | | | | I don't know if EAX 1 actually handles deferring updates, but it will simplify future changes. | ||||
* | Ensure deferred EAX effect properties are committed | Chris Robinson | 2022-03-04 | 12 | -35/+35 |
| | |||||
* | Remove unused dirty flags | Chris Robinson | 2022-02-21 | 1 | -13/+0 |
| | |||||
* | Implement EAX v1.0 (#664) | Boris I. Bendovsky | 2022-02-21 | 1 | -36/+284 |
| | |||||
* | Move some declarations to where the definitions will see | Chris Robinson | 2022-02-14 | 1 | -15/+0 |
| | |||||
* | Avoid using ALeffect to manage EaxEffect objects | Chris Robinson | 2022-02-07 | 14 | -193/+95 |
| | | | | Effect slots can just use its EaxEffect directly. | ||||
* | Move ALSOFT_EAX definition to config.h | Chris Robinson | 2022-01-30 | 14 | -101/+43 |
| | | | | And disable it by default for non-Windows targets |