Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Handle padding between device sample frames | Chris Robinson | 2019-12-21 | 1 | -17/+17 |
| | | | | | | | | The padding must be constant and sample type aligned (e.g. some fixed multiple of two bytes between the start of two consecutive frames for 16-bit output). The intent is to always have the ability for stereo output with WASAPI even if the device has some other unsupported configuration, as long as front-left and front-right exist. | ||||
* | Use unique setters for biquad filter parameters | Chris Robinson | 2019-12-21 | 1 | -20/+13 |
| | | | | One for whether a slope parameter is used, and one for bandwidth. | ||||
* | Improve gain/hf/lf packing when processing voice updates | Chris Robinson | 2019-12-21 | 1 | -96/+84 |
| | |||||
* | Remix missing channels with direct channels enabled | Chris Robinson | 2019-12-19 | 1 | -1/+15 |
| | | | | Instead of dropping them. | ||||
* | Don't apply direct channels with mono output | Chris Robinson | 2019-12-18 | 1 | -1/+1 |
| | |||||
* | Don't process direct channel sources with attenuation | Chris Robinson | 2019-12-17 | 1 | -4/+4 |
| | |||||
* | Update a comment since B-Format input isn't always FuMa | Chris Robinson | 2019-12-17 | 1 | -2/+2 |
| | |||||
* | Correctly scale spatialized B-Format sources | Chris Robinson | 2019-12-17 | 1 | -2/+2 |
| | |||||
* | Use normal panning for B-Format output | Chris Robinson | 2019-12-17 | 1 | -1/+1 |
| | | | | It can never work since it only uses auxiliary channel labels. | ||||
* | Don't apply stereo panning with direct channels enabled | Chris Robinson | 2019-12-17 | 1 | -3/+6 |
| | |||||
* | Handle the buffer's ambisonic properties | Chris Robinson | 2019-12-02 | 1 | -12/+24 |
| | |||||
* | Make B-Format rotation more robust | Chris Robinson | 2019-12-01 | 1 | -34/+203 |
| | | | | | This should now handle higher orders, and can be easily extended to non-FuMa layouts and scalings. | ||||
* | Avoid static constexpr for arrays iterated over at run-time | Chris Robinson | 2019-10-25 | 1 | -1/+1 |
| | |||||
* | Use better types for some specific sizes | Chris Robinson | 2019-10-13 | 1 | -15/+15 |
| | |||||
* | Use std::array instead of plain arrays in a couple places | Chris Robinson | 2019-10-05 | 1 | -7/+2 |
| | |||||
* | Move ALvoice from alu.h to a separate header | Chris Robinson | 2019-10-02 | 1 | -7/+37 |
| | |||||
* | Check MAX_RESAMPLER_PADDING properly to ensure it's large enough | Chris Robinson | 2019-09-28 | 1 | -0/+4 |
| | |||||
* | Combine two function calls into one | Chris Robinson | 2019-09-28 | 1 | -42/+102 |
| | |||||
* | Add "fast" variants for the bsinc resamplers | Chris Robinson | 2019-09-28 | 1 | -4/+4 |
| | | | | | | This simply omits the scale factor from the filter, similar to how up-sampling does. The consequence of this is less smooth transitions when ramping the pitch while down-sampling, but otherwise behaves fine. | ||||
* | Implement a "fast" bsinc path | Chris Robinson | 2019-09-26 | 1 | -2/+2 |
| | | | | | | | | | | 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 resampler type an enum class | Chris Robinson | 2019-09-22 | 1 | -4/+4 |
| | |||||
* | Avoid an unnecessary multiply | Chris Robinson | 2019-09-16 | 1 | -2/+2 |
| | |||||
* | Remove the last uses of the system's str[n]casecmp | Chris Robinson | 2019-09-16 | 1 | -2/+5 |
| | |||||
* | Avoid an unused variable | Chris Robinson | 2019-09-16 | 1 | -1/+1 |
| | |||||
* | Clean up some more shadowing warnings | Chris Robinson | 2019-09-16 | 1 | -11/+10 |
| | |||||
* | Fix some more implicit conversions noted by GCC | Chris Robinson | 2019-09-14 | 1 | -5/+5 |
| | |||||
* | Make NumAuxSends unsigned | Chris Robinson | 2019-09-13 | 1 | -4/+4 |
| | |||||
* | Clean up implicit conversions in alu.cpp | Chris Robinson | 2019-09-13 | 1 | -44/+36 |
| | |||||
* | Clean up sample converter implicit conversions | Chris Robinson | 2019-09-12 | 1 | -2/+2 |
| | |||||
* | Use unsigned channel indices | Chris Robinson | 2019-09-12 | 1 | -19/+18 |
| | |||||
* | Use a normal vector for the voices array | Chris Robinson | 2019-09-04 | 1 | -5/+2 |
| | |||||
* | Increment the mix count during disconnect | Chris Robinson | 2019-09-04 | 1 | -1/+3 |
| | | | | | So attempts to get the current playback offset behave correctly while disconnecting. | ||||
* | Avoid accumulating a temporary | Chris Robinson | 2019-09-01 | 1 | -2/+2 |
| | |||||
* | Make MixVoice a member function | Chris Robinson | 2019-08-31 | 1 | -5/+1 |
| | |||||
* | Use a span for effect state input | Chris Robinson | 2019-08-26 | 1 | -2/+1 |
| | |||||
* | Pass unsigned sample count to aluMixData | Chris Robinson | 2019-08-25 | 1 | -11/+11 |
| | |||||
* | Use size_t for the post-process sample length | Chris Robinson | 2019-08-25 | 1 | -5/+4 |
| | |||||
* | Use size_t for HrtfMixer functions' buffer size | Chris Robinson | 2019-08-20 | 1 | -0/+1 |
| | |||||
* | Move update pointers to the containers they update | Chris Robinson | 2019-08-13 | 1 | -2/+2 |
| | |||||
* | Add methods to get env vars as an optional | Chris Robinson | 2019-08-12 | 1 | -6/+11 |
| | |||||
* | Make the post-process methods member functions | Chris Robinson | 2019-08-07 | 1 | -24/+20 |
| | |||||
* | Update some includes | Chris Robinson | 2019-08-05 | 1 | -1/+1 |
| | |||||
* | Move the meters per unit property to the listener | Chris Robinson | 2019-08-05 | 1 | -2/+1 |
| | |||||
* | Remove the ReverbSpeedOfSound hack | Chris Robinson | 2019-08-05 | 1 | -79/+55 |
| | | | | | | | No other effect depends on context or listener properties, so reverb being the only exception for speed of sound and meters per unit was putting extra work on the effect engine for no real reason. Especially since the reverb decay time should be the time actual time to decay irrespective of other settings. | ||||
* | Modify LIKELY and UNLIKELY to not need extra parenthesis | Chris Robinson | 2019-08-04 | 1 | -6/+6 |
| | |||||
* | Avoid reloading the voices array when processing | Chris Robinson | 2019-08-02 | 1 | -12/+13 |
| | |||||
* | Use a smart pointer for holding the context's device | Chris Robinson | 2019-08-01 | 1 | -3/+3 |
| | |||||
* | Add a common base for auto-deleting ref-counted objects | Chris Robinson | 2019-08-01 | 1 | -17/+7 |
| | | | | Which will also work as the basis for a future intrusive_ptr | ||||
* | Properly prefix ALCcontext members | Chris Robinson | 2019-07-30 | 1 | -30/+30 |
| | |||||
* | Rename al/* sources to avoid camel-case | Chris Robinson | 2019-07-29 | 1 | -5/+5 |
| |