Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Move the mixer functions to core | Chris Robinson | 2020-12-12 | 1 | -303/+0 |
| | |||||
* | Move some HRTF definitions to a separate header | Chris Robinson | 2020-12-12 | 1 | -2/+3 |
| | |||||
* | Avoid passing DirectHrtfState to MixDirectHrtf | Chris Robinson | 2020-12-12 | 1 | -3/+6 |
| | |||||
* | Move the bsinc tables to core | Chris Robinson | 2020-12-04 | 1 | -1/+1 |
| | |||||
* | Remove some unnecessary includes | Chris Robinson | 2020-12-04 | 1 | -6/+1 |
| | |||||
* | Move lerp/cubic to alnumeric.h | Chris Robinson | 2020-12-04 | 1 | -0/+1 |
| | |||||
* | Avoid AL types in the mixer | Chris Robinson | 2020-11-20 | 1 | -13/+13 |
| | |||||
* | Avoid direct initialization of float32x4_t | Chris Robinson | 2020-11-16 | 1 | -2/+12 |
| | |||||
* | Replace the mixer fraction macros with constexpr variables | Chris Robinson | 2020-10-21 | 1 | -11/+11 |
| | |||||
* | Replace some more macros with constexpr variables | Chris Robinson | 2020-10-21 | 1 | -1/+1 |
| | |||||
* | Use constexpr variables in place of some macros | Chris Robinson | 2020-10-19 | 1 | -8/+6 |
| | |||||
* | Properly count the last number of samples to mix | Chris Robinson | 2020-05-12 | 1 | -1/+2 |
| | |||||
* | Simplify SIMD linear resampler loop count | Chris Robinson | 2020-05-02 | 1 | -4/+3 |
| | |||||
* | Use a matching type given the initializer | Chris Robinson | 2020-05-02 | 1 | -3/+3 |
| | |||||
* | Improve the leftover and realignment mixing loops | Chris Robinson | 2020-05-02 | 1 | -4/+4 |
| | | | | | | | | Using a mask helps the compiler recognize that the leftover (any remaining non- multiple-of-4) and realignment loops will only have 3 iterations at most, which it can unroll or otherwise make more meaningful optimizations for. Previously it would try to vectorize and partially unroll the loops, which is wasteful when there would never be enough to vectorize. | ||||
* | Avoid iterators for the main mixer | Chris Robinson | 2020-05-01 | 1 | -25/+22 |
| | |||||
* | Use a more efficient type for holding the IrSize | Chris Robinson | 2020-04-30 | 1 | -3/+3 |
| | |||||
* | Get rid of the specialized MixRow_ methods | Chris Robinson | 2020-04-16 | 1 | -31/+0 |
| | |||||
* | Use structs for the mixer and resampler tags | Chris Robinson | 2020-04-03 | 1 | -0/+5 |
| | |||||
* | Avoid using ALfloat in the mixer functions | Chris Robinson | 2020-04-03 | 1 | -16/+16 |
| | |||||
* | Another small cleanup | Chris Robinson | 2020-04-03 | 1 | -6/+5 |
| | |||||
* | Jump to the target gain if the fade amount is small | Chris Robinson | 2020-04-03 | 1 | -2/+4 |
| | |||||
* | Avoid unnecessary duplication in the resamplers | Chris Robinson | 2020-04-03 | 1 | -13/+11 |
| | |||||
* | Generate the bsinc tables using constexpr methods | Chris Robinson | 2020-04-02 | 1 | -0/+1 |
| | | | | | | | | All the methods used should be compliant with C++14 constexpr rules. However, the number of scales and phases cause GenerateBSincCoeffs to reach the allowed step limit, preventing full compile-time generation. It's not a terribly big deal, it'll generate them very quickly when loading, but it does prevent using shared read-only memory pages. | ||||
* | Simplify post-mix HRTF gain storage | Chris Robinson | 2020-01-05 | 1 | -2/+2 |
| | |||||
* | Don't force the HRIR length to a rounded value | Chris Robinson | 2019-12-11 | 1 | -1/+1 |
| | | | | | The coefficient and accumulation buffers are guaranteed large enough for the full size, and the SIMD handlers will behave the same either way. | ||||
* | Avoid holding HRTF accumulation samples per-source | Chris Robinson | 2019-11-03 | 1 | -10/+5 |
| | | | | | | It notably simplifies things to mix HRTF sources into an accumulation buffer together, which the Dry buffer's Ambisonic-to-HRTF decode is then added to, before being mixed to the Real output. | ||||
* | Remove the Offset parameter from ApplyCoeffs | Chris Robinson | 2019-10-02 | 1 | -24/+26 |
| | |||||
* | Clean up some ALfloat -> float | Chris Robinson | 2019-10-02 | 1 | -10/+8 |
| | |||||
* | Repack the bsinc resamplers coefficients | Chris Robinson | 2019-09-29 | 1 | -4/+4 |
| | | | | | | This puts the base coefficients and the phase deltas next to each other. This improves caching, as the base and phase deltas are always used together while the scales are only used for the non-fast versions. | ||||
* | Implement a "fast" bsinc path | Chris Robinson | 2019-09-26 | 1 | -0/+44 |
| | | | | | | | | | | This takes advantage of the fact than when increment <= 1 (when not down- sampling), the scale factor is always 0. As a result, the scale and scale-phase deltas never contribute to the filtered output. Removing those multiply+add operations cuts half of the work done by the inner loop. Sounds that do need to down-sample (when played with a high pitch, or is 48khz on 44.1khz output, for example), still go through the normal bsinc process. | ||||
* | Make the bsinc l and m coefficients unsigned | Chris Robinson | 2019-09-17 | 1 | -7/+4 |
| | |||||
* | Fix typo | Chris Robinson | 2019-09-16 | 1 | -3/+3 |
| | |||||
* | Clean up some more shadowing warnings | Chris Robinson | 2019-09-16 | 1 | -5/+7 |
| | |||||
* | Fix some more implicit conversions noted by GCC | Chris Robinson | 2019-09-14 | 1 | -6/+7 |
| | |||||
* | Pass IrSize to the HRTF mixers as unsigned | Chris Robinson | 2019-09-13 | 1 | -4/+4 |
| | |||||
* | Make the resampler increment unsigned | Chris Robinson | 2019-09-13 | 1 | -23/+19 |
| | |||||
* | Fix a few more C-style casts | Chris Robinson | 2019-09-11 | 1 | -3/+3 |
| | |||||
* | Only ASSUME values where a variable is used | Chris Robinson | 2019-09-04 | 1 | -1/+1 |
| | |||||
* | Store the voice fraction offset as unsigned | Chris Robinson | 2019-08-31 | 1 | -19/+17 |
| | |||||
* | Fix a variable declaration | Chris Robinson | 2019-08-22 | 1 | -3/+2 |
| | |||||
* | Avoid reading from pointers to __m128 values | Chris Robinson | 2019-08-21 | 1 | -24/+18 |
| | |||||
* | Fix NEON store call | Chris Robinson | 2019-08-20 | 1 | -1/+1 |
| | |||||
* | Use size_t for the mixers' fade counter and outpos | Chris Robinson | 2019-08-20 | 1 | -4/+4 |
| | |||||
* | Use size_t for HrtfMixer functions' buffer size | Chris Robinson | 2019-08-20 | 1 | -8/+6 |
| | |||||
* | Fix MixRow definition for NEON | Chris Robinson | 2019-08-20 | 1 | -2/+2 |
| | |||||
* | Pass a span to the Resample function | Chris Robinson | 2019-08-20 | 1 | -16/+15 |
| | |||||
* | Pass a span for the Mix function's input | Chris Robinson | 2019-08-20 | 1 | -29/+25 |
| | |||||
* | Rename the Mix function input for clarity | Chris Robinson | 2019-08-20 | 1 | -7/+7 |
| | |||||
* | Pass the MixRow buffer size as a span | Chris Robinson | 2019-08-20 | 1 | -14/+11 |
| |