Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Support MSADPCM samples in the mixer | Chris Robinson | 2023-02-14 | 3 | -0/+109 |
| | |||||
* | Support IMA4 ADPCM as a mixing voice format | Chris Robinson | 2023-02-14 | 4 | -32/+158 |
| | |||||
* | Simplify copying the all-pass filter state | Chris Robinson | 2023-02-13 | 2 | -15/+7 |
| | |||||
* | Pass a boolean for the decoder to update its state | Chris Robinson | 2023-02-13 | 3 | -51/+57 |
| | |||||
* | Explicitly cast a constexpr value to passify MSVC | Chris Robinson | 2023-02-12 | 1 | -3/+3 |
| | |||||
* | Use to_address to pass a pointer-like iterator as a real pointer | Chris Robinson | 2023-02-12 | 1 | -4/+5 |
| | |||||
* | The decoders don't need space for resampling | Chris Robinson | 2023-02-12 | 2 | -16/+13 |
| | |||||
* | Separate decoding and mixing from resampling | Chris Robinson | 2023-02-12 | 3 | -286/+305 |
| | |||||
* | Explicitly cast a size_t to double | Chris Robinson | 2023-02-11 | 1 | -1/+1 |
| | |||||
* | Always write samples to the destination when resampling | Chris Robinson | 2023-02-11 | 8 | -72/+53 |
| | |||||
* | Check for the voice being beyond the loop end point earlier | Chris Robinson | 2023-02-11 | 1 | -5/+11 |
| | |||||
* | Don't require samplesToDo > forwardSamples for decoders | Chris Robinson | 2023-02-11 | 2 | -13/+13 |
| | |||||
* | Assume 'frac' is less than 1 | Chris Robinson | 2023-02-10 | 5 | -0/+15 |
| | |||||
* | Use a span to hold the cubic table reference | Chris Robinson | 2023-02-10 | 2 | -2/+3 |
| | |||||
* | Rename some variables for consistency | Chris Robinson | 2023-02-09 | 3 | -23/+24 |
| | |||||
* | Properly mark the cubic coefficients and deltas as restrict | Chris Robinson | 2023-02-09 | 1 | -10/+9 |
| | |||||
* | Rename the bsinc table variables | Chris Robinson | 2023-02-07 | 3 | -5/+7 |
| | |||||
* | Use an interpolated FIR filter for cubic resampling | Chris Robinson | 2023-02-06 | 7 | -22/+213 |
| | | | | | | 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 parameters | Chris Robinson | 2023-02-06 | 1 | -5/+5 |
| | |||||
* | Add a comment to check into an out-of-range value later | Chris Robinson | 2023-01-28 | 1 | -1/+5 |
| | |||||
* | Clamp the biquad filter gain value to 0.00001 | Chris Robinson | 2023-01-28 | 1 | -1/+1 |
| | | | | | To actually prevent a potential divide-by-zero when the gain and reference frequency are 0, instead of asserting. | ||||
* | Change the default resampler to cubic | Chris Robinson | 2023-01-27 | 1 | -1/+1 |
| | | | | | This has notably better quality than linear, while still being faster than bsinc. | ||||
* | Combine multiple similar functions into one | Chris Robinson | 2023-01-26 | 1 | -124/+16 |
| | |||||
* | Transpose the ambisonic voice mixing matrix | Chris Robinson | 2023-01-25 | 1 | -0/+1 |
| | | | | | To more efficiently prepare the panning coefficients. Also avoid making a stack copy of the matrix to reuse as the target. | ||||
* | Make a variable for a reused value | Chris Robinson | 2023-01-17 | 1 | -0/+1 |
| | |||||
* | Fix debug logging on Windows non-release buuilds | Chris Robinson | 2023-01-16 | 2 | -6/+2 |
| | | | | And skip logging for appropriate log levels on Windows release builds. | ||||
* | Change a couple macros to constexpr variables | Chris Robinson | 2023-01-16 | 1 | -6/+6 |
| | |||||
* | Check for nullptr before constructing a new object | Chris Robinson | 2023-01-15 | 1 | -5/+5 |
| | |||||
* | Use an 8-bit type to hand the HrtfStore IR size | Chris Robinson | 2023-01-15 | 1 | -7/+7 |
| | | | | | Since the max IR size is 128, and HrtfStore only uses 8 bits for the IR size member. Silences a truncation warning given by GCC. | ||||
* | clang-tidy cleanups (#800) | Rosen Penev | 2023-01-15 | 6 | -22/+22 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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 include the array definition with bin2h | Chris Robinson | 2023-01-13 | 1 | -1/+3 |
| | |||||
* | Ensure the mixer helpers are properly inlined | Chris Robinson | 2023-01-13 | 3 | -8/+9 |
| | |||||
* | Avoid inlining the base_exception destructor | Chris Robinson | 2023-01-13 | 2 | -1/+3 |
| | |||||
* | Avoid unnecessary uses of make_optional | Chris Robinson | 2023-01-13 | 3 | -3/+3 |
| | |||||
* | Use a span instead of a count+pointer | Chris Robinson | 2023-01-11 | 2 | -12/+8 |
| | |||||
* | Rename some struct members | Chris Robinson | 2023-01-10 | 2 | -64/+67 |
| | | | | And make a related function a member function | ||||
* | Update a comment | Chris Robinson | 2023-01-08 | 1 | -1/+1 |
| | |||||
* | Avoid using a reversed all-pass for the front stablizer | Chris Robinson | 2023-01-06 | 4 | -70/+41 |
| | | | | | | 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. | ||||
* | Combine some duplicate code to mix each channel | Chris Robinson | 2023-01-05 | 3 | -330/+186 |
| | |||||
* | Add and use mixers that process one input and output channel | Chris Robinson | 2023-01-05 | 7 | -0/+214 |
| | |||||
* | Add a simple wrapper to call the mixer function | Chris Robinson | 2023-01-04 | 3 | -5/+11 |
| | |||||
* | Simplify handling effect output for spatial effects | Chris Robinson | 2023-01-04 | 2 | -21/+33 |
| | | | | | | | | | | | | Effects are given a 3D ambisonic buffer of the same order as the device, for processing surround sound. Effects that pass input channels to matching output channels as it processes them don't need to mix each input channel to all output channels. At most, an input channel may mix to a different output channel, if the target buffer uses a different channel layout, and need a gain adjustment, if it uses a different scaling. With a 2D output buffer, a number of channels can be skipped altogether. | ||||
* | Handle negative offset starts for callback buffers | Chris Robinson | 2023-01-04 | 1 | -9/+11 |
| | |||||
* | Combine multiple al_printf definitions | Chris Robinson | 2023-01-02 | 2 | -58/+49 |
| | | | | And separate the log level prefix from the message. | ||||
* | Multiply by the inverse instead of divide | Chris Robinson | 2023-01-01 | 1 | -4/+4 |
| | |||||
* | Fix a comment | Chris Robinson | 2023-01-01 | 1 | -2/+1 |
| | |||||
* | Swap the order of some checks to simplify voice setup | Chris Robinson | 2023-01-01 | 1 | -35/+25 |
| | |||||
* | Simplify constructing the process path and executable name | Chris Robinson | 2022-12-30 | 1 | -7/+5 |
| | |||||
* | Avoid inlining LoadedHrtf's destructor | Chris Robinson | 2022-12-17 | 1 | -0/+7 |
| | |||||
* | Use a bitset for the enabled event flags | Chris Robinson | 2022-12-16 | 4 | -15/+23 |
| |