Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | 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 |
| | |||||
* | Don't truncate odd IR sizes with SSE | Chris Robinson | 2020-04-30 | 1 | -1/+1 |
| | |||||
* | 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/+4 |
| | |||||
* | Avoid using ALfloat in the mixer functions | Chris Robinson | 2020-04-03 | 1 | -11/+11 |
| | |||||
* | Another small cleanup | Chris Robinson | 2020-04-03 | 1 | -2/+2 |
| | |||||
* | 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 | -18/+14 |
| | |||||
* | 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 |
| | |||||
* | Use size_t for array indices | Chris Robinson | 2019-12-11 | 1 | -6/+7 |
| | |||||
* | 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 | -43/+50 |
| | |||||
* | Clean up some ALfloat -> float | Chris Robinson | 2019-10-02 | 1 | -11/+9 |
| | |||||
* | 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/+47 |
| | | | | | | | | | | 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 | -4/+2 |
| | |||||
* | 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 | -3/+4 |
| | |||||
* | Pass IrSize to the HRTF mixers as unsigned | Chris Robinson | 2019-09-13 | 1 | -5/+5 |
| | |||||
* | Make the resampler increment unsigned | Chris Robinson | 2019-09-13 | 1 | -3/+2 |
| | |||||
* | 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 | -5/+4 |
| | |||||
* | Avoid reading from pointers to __m128 values | Chris Robinson | 2019-08-21 | 1 | -16/+13 |
| | |||||
* | 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 | -4/+4 |
| | |||||
* | Pass a span to the Resample function | Chris Robinson | 2019-08-20 | 1 | -5/+4 |
| | |||||
* | Pass a span for the Mix function's input | Chris Robinson | 2019-08-20 | 1 | -27/+24 |
| | |||||
* | 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 | -15/+12 |
| | |||||
* | Allow using a variable channel stride for MixRowSamples | Chris Robinson | 2019-08-19 | 1 | -5/+6 |
| | |||||
* | Don't require MixRow's output to be a FloatBufferLine | Chris Robinson | 2019-08-18 | 1 | -1/+1 |
| | |||||
* | Modify LIKELY and UNLIKELY to not need extra parenthesis | Chris Robinson | 2019-08-04 | 1 | -3/+3 |
| | |||||
* | Don't templatize HrirArray | Chris Robinson | 2019-07-31 | 1 | -1/+1 |
| | |||||
* | Rename al/* sources to avoid camel-case | Chris Robinson | 2019-07-29 | 1 | -2/+0 |
| | |||||
* | Rename Alc to alc | Chris Robinson | 2019-07-28 | 1 | -0/+262 |