Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Simplify effect state buffer handling some | Chris Robinson | 2023-04-04 | 1 | -7/+2 |
| | |||||
* | Support the AL_EXT_STATIC_BUFFER extension | Chris Robinson | 2023-04-03 | 1 | -0/+2 |
| | |||||
* | Add a compat option to restore AL_SOFT_buffer_sub_data | Chris Robinson | 2023-03-17 | 1 | -0/+3 |
| | |||||
* | Use macros for the likely/unlikely attributes | Chris Robinson | 2023-03-01 | 1 | -3/+3 |
| | | | | | The syntax parser for GCC 8 (and earlier?) fails when these attributes are in certain places. | ||||
* | Add aLaw formats to AL_SOFT_UHJ_ex | Chris Robinson | 2023-02-27 | 1 | -0/+3 |
| | |||||
* | Add AL_SOFT_UHJ_ex to the extension list | Chris Robinson | 2023-02-26 | 1 | -0/+6 |
| | |||||
* | Use explicit arrays for the remix table target mixes | Chris Robinson | 2023-01-24 | 1 | -16/+53 |
| | | | | Seems inline initializer lists become garbage when stored in a span. | ||||
* | Change a couple macros to constexpr variables | Chris Robinson | 2023-01-16 | 1 | -1/+1 |
| | |||||
* | 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 a dead store | Chris Robinson | 2023-01-13 | 1 | -1/+0 |
| | |||||
* | Avoid unnecessary uses of make_optional | Chris Robinson | 2023-01-13 | 1 | -20/+20 |
| | |||||
* | Handle the stereo-encoding option for loopback devices too | Chris Robinson | 2023-01-09 | 1 | -12/+12 |
| | |||||
* | Fix handling the ALC_HRTF_SOFT attribute | Chris Robinson | 2023-01-09 | 1 | -1/+20 |
| | |||||
* | Better handle negative sample rate values | Chris Robinson | 2023-01-08 | 1 | -5/+5 |
| | |||||
* | Update some config comments | Chris Robinson | 2023-01-08 | 1 | -1/+1 |
| | |||||
* | Get device config options earlier in a device update | Chris Robinson | 2023-01-07 | 1 | -310/+275 |
| | |||||
* | Avoid using a reversed all-pass for the front stablizer | Chris Robinson | 2023-01-06 | 1 | -5/+0 |
| | | | | | | While a neat trick, it's been shown to be too volatile and add noise as the signal gets louder. It's better to just accept the phase shift and ensure everything stays aligned. | ||||
* | Use a simple spinlock to protect the current global context | Chris Robinson | 2022-12-30 | 1 | -7/+17 |
| | | | | | This will be much for efficient than a recursive mutex, given the amount of contention will be very low. | ||||
* | Avoid using a macro to wrap standard attributes | Chris Robinson | 2022-12-06 | 1 | -2/+2 |
| | |||||
* | Avoid LIKELY/UNLIKELY macros | Chris Robinson | 2022-12-05 | 1 | -2/+2 |
| | |||||
* | Add missing device_clock/source_latency enums for querying | Chris Robinson | 2022-11-29 | 1 | -0/+9 |
| | |||||
* | Add preliminary support for 7.1.4 output modes | Chris Robinson | 2022-11-03 | 1 | -0/+3 |
| | | | | | | | | I don't know how different sound APIs handle 7.1.4 ("Atmos" or "Auro3D") output, but currently it simply specifies the additional channels with the height channel labels. This isn't likely how it works for a virtualized channel bed, for playing over other with-height configurations (7.1.2, 5.1.4, etc), but this should be an okay start. | ||||
* | Add functions to start sources at a particular device time | Chris Robinson | 2022-11-03 | 1 | -0/+3 |
| | | | | | | | | This starts a source at a particular device clock time, rounded to the nearest sample (really, 4th sample for SIMD reasons), allowing to start a sound at a particular point in the output instead of the next update. Unlike using negative offsets, this is not affected by pitch/velocity. | ||||
* | Add a warning when using the old UHJ filter option | Chris Robinson | 2022-10-21 | 1 | -2/+8 |
| | |||||
* | Add separate filter options for UHJ encoding and decoding | Chris Robinson | 2022-10-21 | 1 | -5/+16 |
| | |||||
* | Add an IIR filter option for UHJ encoding/decoding | Chris Robinson | 2022-10-21 | 1 | -2/+4 |
| | | | | | | This uses the reversed-allpass trick to maintain linear phase. with a 256- sample look-ahead/delay to minimize distortion. This should better preserve low frequencies while maintaining a proper phase response. | ||||
* | Allow the remix tables to be variable length | Chris Robinson | 2022-08-28 | 1 | -9/+9 |
| | |||||
* | Rename the UHJ filter config option | Chris Robinson | 2022-08-09 | 1 | -2/+2 |
| | |||||
* | Add an option for higher quality UHJ filters | Chris Robinson | 2022-08-08 | 1 | -14/+26 |
| | |||||
* | Parameterize the UHJ filter length | Chris Robinson | 2022-08-07 | 1 | -2/+2 |
| | |||||
* | Don't store and manage wet buffers separately | Chris Robinson | 2022-07-15 | 1 | -7/+13 |
| | |||||
* | Allocate EffectSlots in clusters | Chris Robinson | 2022-07-15 | 1 | -0/+14 |
| | |||||
* | Dynamically allocate EffectSlot objects | Chris Robinson | 2022-07-15 | 1 | -2/+2 |
| | |||||
* | Add a config compat option for NFC distance scaling | Chris Robinson | 2022-07-07 | 1 | -1/+1 |
| | | | | | | | | | | | | Currently there's no way for an application to specify the "real world" scale for in-game units. If the game doesn't use one unit to represent what should be perceived as one meter to the user, the NFC filter's effect will be too near or too far sounding. This allows adjusting the unit scale as applied to the NFC filters only, correcting the misalignment. This also removes the influence of EFX's MetersPerUnit from the NFC filters, since many games don't use it, and those that do won't know it also influences the perceived wave curvature along with the air absorption strength. | ||||
* | Use an inline function instead of a function-like macro | Chris Robinson | 2022-06-12 | 1 | -6/+7 |
| | |||||
* | Disable EAX if the Chorus effect is disabled | Chris Robinson | 2022-06-10 | 1 | -2/+7 |
| | |||||
* | Increase the priority of the ALSA backend | Chris Robinson | 2022-06-04 | 1 | -3/+3 |
| | | | | | | | | | So that it's tried before sndio. Many Linux systems seem to have libsndio installed as a hard dependency from SDL2, but not the server component to actually make it work. And because there's no way to test if it's usable without opening a device, the backend would get selected over ALSA and subsequently fail to work. As a result, Linux users that don't use PipeWire or PulseAudio would have to explicitly configure for ALSA. | ||||
* | Ensure enough default sends for EAX with the config option set | Chris Robinson | 2022-05-27 | 1 | -10/+24 |
| | |||||
* | Move EAX files to their own sub-directory | Chris Robinson | 2022-05-16 | 1 | -2/+2 |
| | |||||
* | Handle 3D7.1 as a separate channel configuration | Chris Robinson | 2022-04-26 | 1 | -0/+4 |
| | | | | | | | It's treated as 5.1 + 2 aux channels. This allows AL_DIRECT_CHANNELS_SOFT to behave better, not forwarding rear left/right channel inputs to lower front and upper rear, and allows reporting a more appropriate output mode to the app instead of 7.1. | ||||
* | Finalize ALC_SOFT_output_mode | Chris Robinson | 2022-04-17 | 1 | -1/+1 |
| | |||||
* | Use a bool type for boolean parameters | Chris Robinson | 2022-04-16 | 1 | -1/+1 |
| | |||||
* | Include ALC_OUTPUT_MODE_SOFT with ALC_ALL_ATTRIBUTES | Chris Robinson | 2022-04-16 | 1 | -4/+10 |
| | |||||
* | Update the ALC_SOFT_output_mode surround enums | Chris Robinson | 2022-04-15 | 1 | -0/+3 |
| | | | | | | The values are identical to the matching loopback channel configuration enums, so for example ALC_5POINT1_SOFT is interchangable with ALC_SURROUND_5_1_SOFT, this is simply providing a cleaner styling for potential future modes. | ||||
* | Fix ALC_SOFT_reopen_device for the null device extension list | Chris Robinson | 2022-04-01 | 1 | -1/+1 |
| | |||||
* | Finalize ALC_SOFT_reopen_device | Chris Robinson | 2022-04-01 | 1 | -1/+1 |
| | |||||
* | Remove the reversed all-pass trick in MixDirectHrtfBase | Chris Robinson | 2022-03-30 | 1 | -2/+0 |
| | | | | Given the minimum phase HRTF, it's not going to stay linear phase anyway. | ||||
* | Make and use a Default enum for StereoEncoding | Chris Robinson | 2022-03-29 | 1 | -6/+6 |
| | |||||
* | Rename ALC_STEREO_PLAIN_SOFT and don't duplicate ALC_HRTF_SOFT | Chris Robinson | 2022-03-29 | 1 | -3/+3 |
| | |||||
* | Handle more modes with the ALC_OUTPUT_MODE_SOFT attribute | Chris Robinson | 2022-03-23 | 1 | -180/+207 |
| |