aboutsummaryrefslogtreecommitdiffstats
path: root/core
Commit message (Collapse)AuthorAgeFilesLines
* Use std::optional instead of a custom implementationChris Robinson2023-05-043-12/+21
|
* Mask a value to the proper size when setting a bitfieldChris Robinson2023-05-011-2/+2
| | | | Silences a GCC warning about assigning a uint value to a uint:24 bitfield.
* Use a static_cast for older versions of MSVCChris Robinson2023-04-271-2/+3
|
* Cast a value to the expected type for MSVCChris Robinson2023-04-261-2/+2
|
* Reorder some struct fields for consistencyChris Robinson2023-04-081-9/+6
|
* Remove an unused variableChris Robinson2023-04-071-5/+0
|
* Simplify effect state buffer handling someChris Robinson2023-04-041-6/+1
|
* Hold the buffer sample pointer separate from the vectorChris Robinson2023-04-031-0/+3
|
* Make sure delayed-start voices are properly stoppedChris Robinson2023-03-291-1/+10
|
* Log the buffer format when queueing mismatched buffersChris Robinson2023-03-222-0/+40
|
* Make the resampler enum a byteChris Robinson2023-03-071-1/+1
|
* Use macros for the likely/unlikely attributesChris Robinson2023-03-0110-32/+32
| | | | | The syntax parser for GCC 8 (and earlier?) fails when these attributes are in certain places.
* Clamp the MS ADPCM block predictor to the correct sizeChris Robinson2023-02-241-4/+4
|
* Track the callback buffer base separatelyChris Robinson2023-02-182-8/+6
| | | | | Instead of recalculating it all the time, even for sources that don't use callback buffers.
* Decode IMA4 blocks with fewer loopsChris Robinson2023-02-161-35/+30
| | | | | Rather than decoding samples in chunks of 8, calculate the read offset from an incrementing index.
* Combine and simplify some loopsChris Robinson2023-02-151-24/+14
|
* Skip ADPCM samples in a separate loop before writingChris Robinson2023-02-151-59/+83
|
* Rename some variables for clarityChris Robinson2023-02-151-19/+19
|
* Add comments describing the MSADPCM decodeChris Robinson2023-02-141-0/+13
|
* Fix write offset for loading FmtIMA4 samplesChris Robinson2023-02-141-2/+2
|
* Support MSADPCM samples in the mixerChris Robinson2023-02-143-0/+109
|
* Support IMA4 ADPCM as a mixing voice formatChris Robinson2023-02-144-32/+158
|
* Simplify copying the all-pass filter stateChris Robinson2023-02-132-15/+7
|
* Pass a boolean for the decoder to update its stateChris Robinson2023-02-133-51/+57
|
* Explicitly cast a constexpr value to passify MSVCChris Robinson2023-02-121-3/+3
|
* Use to_address to pass a pointer-like iterator as a real pointerChris Robinson2023-02-121-4/+5
|
* The decoders don't need space for resamplingChris Robinson2023-02-122-16/+13
|
* Separate decoding and mixing from resamplingChris Robinson2023-02-123-286/+305
|
* Explicitly cast a size_t to doubleChris Robinson2023-02-111-1/+1
|
* Always write samples to the destination when resamplingChris Robinson2023-02-118-72/+53
|
* Check for the voice being beyond the loop end point earlierChris Robinson2023-02-111-5/+11
|
* Don't require samplesToDo > forwardSamples for decodersChris Robinson2023-02-112-13/+13
|
* Assume 'frac' is less than 1Chris Robinson2023-02-105-0/+15
|
* Use a span to hold the cubic table referenceChris Robinson2023-02-102-2/+3
|
* Rename some variables for consistencyChris Robinson2023-02-093-23/+24
|
* Properly mark the cubic coefficients and deltas as restrictChris Robinson2023-02-091-10/+9
|
* Rename the bsinc table variablesChris Robinson2023-02-073-5/+7
|
* Use an interpolated FIR filter for cubic resamplingChris Robinson2023-02-067-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 parametersChris Robinson2023-02-061-5/+5
|
* Add a comment to check into an out-of-range value laterChris Robinson2023-01-281-1/+5
|
* Clamp the biquad filter gain value to 0.00001Chris Robinson2023-01-281-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 cubicChris Robinson2023-01-271-1/+1
| | | | | This has notably better quality than linear, while still being faster than bsinc.
* Combine multiple similar functions into oneChris Robinson2023-01-261-124/+16
|
* Transpose the ambisonic voice mixing matrixChris Robinson2023-01-251-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 valueChris Robinson2023-01-171-0/+1
|
* Fix debug logging on Windows non-release buuildsChris Robinson2023-01-162-6/+2
| | | | And skip logging for appropriate log levels on Windows release builds.
* Change a couple macros to constexpr variablesChris Robinson2023-01-161-6/+6
|
* Check for nullptr before constructing a new objectChris Robinson2023-01-151-5/+5
|
* Use an 8-bit type to hand the HrtfStore IR sizeChris Robinson2023-01-151-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 Penev2023-01-156-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]>