Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Support MSADPCM samples in the mixer | Chris Robinson | 2023-02-14 | 5 | -1/+113 |
| | |||||
* | Don't convert IMA4 samples on load | Chris Robinson | 2023-02-14 | 2 | -100/+98 |
| | |||||
* | Support IMA4 ADPCM as a mixing voice format | Chris Robinson | 2023-02-14 | 12 | -65/+215 |
| | |||||
* | 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 | 5 | -295/+314 |
| | |||||
* | Check a string for NULL before calling strtoull | Chris Robinson | 2023-02-11 | 1 | -8/+9 |
| | |||||
* | 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 | 3 | -3/+4 |
| | |||||
* | 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 |
| | |||||
* | Allow finding index file when built as a submodule (#819) | Aoife Fey | 2023-02-09 | 1 | -2/+13 |
| | |||||
* | Check for the existence of the file that's depended on | Chris Robinson | 2023-02-08 | 1 | -1/+1 |
| | |||||
* | Use better panning positions for the frequency shifter effect | Chris Robinson | 2023-02-08 | 1 | -2/+7 |
| | |||||
* | Use better panning positions for the chorus effect | Chris Robinson | 2023-02-08 | 1 | -56/+61 |
| | | | | Also avoid putting larger buffers on the stack. | ||||
* | Make a table constexpr | Chris Robinson | 2023-02-07 | 1 | -6/+5 |
| | |||||
* | Rename the bsinc table variables | Chris Robinson | 2023-02-07 | 4 | -7/+9 |
| | |||||
* | Use an interpolated FIR filter for cubic resampling | Chris Robinson | 2023-02-06 | 9 | -22/+227 |
| | | | | | | 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 | 5 | -9/+9 |
| | |||||
* | Improve performance calculating reverb panning | Chris Robinson | 2023-02-05 | 1 | -10/+11 |
| | |||||
* | Use a cubic resampler for the reverb modulator offset | Chris Robinson | 2023-02-05 | 1 | -17/+61 |
| | |||||
* | Don't set an EAX version by default for sources | Chris Robinson | 2023-02-05 | 3 | -43/+10 |
| | | | | | | | | | Presuming sources start in a neutral state for EAX effects, that is they're not affected by EAX by default, there's no need to set an active EAX state for one until the app sets an EAX property on it. Since the deferred and immediate properties are stored independently per-version, they can always be set to defaults, and simply not have a particular version committed as active until the app sets an EAX property, which will inherently set the active version. | ||||
* | Release 1.23.0 | Chris Robinson | 2023-02-03 | 3 | -3/+55 |
| | |||||
* | Make sure a variable is set before use | Chris Robinson | 2023-01-31 | 1 | -3/+3 |
| | |||||
* | Try -Wno-c++20-extensions if -Wno-c++20-attribute-extensions fails | Chris Robinson | 2023-01-31 | 1 | -0/+5 |
| | |||||
* | Don't try to use std::pointer_traits::to_address | Chris Robinson | 2023-01-30 | 1 | -21/+2 |
| | |||||
* | Try to fix has_to_address | Chris Robinson | 2023-01-30 | 1 | -3/+7 |
| | |||||
* | Distinguish a couple log messages | Chris Robinson | 2023-01-30 | 1 | -3/+3 |
| | | | | And downgrade an ERR to a WARN | ||||
* | Don't pass an unnecessarily large alignment to allocator::rebind | Chris Robinson | 2023-01-30 | 1 | -2/+4 |
| | |||||
* | Use std::pointer_traits::to_address when available | Chris Robinson | 2023-01-29 | 1 | -1/+16 |
| | |||||
* | Change the IS_VALID_CONTAINER macro to a constexpr bool | Chris Robinson | 2023-01-29 | 1 | -11/+11 |
| | |||||
* | Avoid using to_address on an end iterator | Chris Robinson | 2023-01-29 | 1 | -4/+3 |
| | |||||
* | Capitalization and puctuation | Chris Robinson | 2023-01-29 | 1 | -2/+2 |
| | |||||
* | Slight clarification for the readme instructions | Chris Robinson | 2023-01-28 | 1 | -1/+1 |
| | |||||
* | 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. | ||||
* | Update the readme | Chris Robinson | 2023-01-28 | 1 | -7/+11 |
| | | | | | | | | | | | Travis CI has been down for years, so replace the build badge with GitHub Actions' badge. Update the build instructions to note CMake GUIs as an alternative to the command line, and note various IDE's potentially supporting CMake projects directly. Finally, update the list of expected backends for Linux and Windows. | ||||
* | Change the default resampler to cubic | Chris Robinson | 2023-01-27 | 3 | -3/+3 |
| | | | | | 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 rotation matrix and helper coefficients | Chris Robinson | 2023-01-26 | 1 | -39/+32 |
| | |||||
* | Transpose the ambisonic voice mixing matrix | Chris Robinson | 2023-01-25 | 2 | -34/+42 |
| | | | | | To more efficiently prepare the panning coefficients. Also avoid making a stack copy of the matrix to reuse as the target. | ||||
* | 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. | ||||
* | Use the object serial ID from PipeWire when available | Chris Robinson | 2023-01-24 | 1 | -21/+47 |
| | | | | | | | | | | | Using the node ID as a target is deprecated in newer versions of PipeWire. The serial ID is a monotonic 64-bit integer ID, incremeneted for every object created, so is guaranteed to always refer to the same target (until it wraps around, which I suppose isn't expected/allowed to happen), compared to the 32-bit node ID which I guess allows reuse. We could instead use the target node's name instead of the serial ID, but an integer is nicer to manage than a string. |