Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Add missing linear resampler to the option setting list | Chris Robinson | 2020-09-24 | 1 | -0/+1 |
| | |||||
* | Use a smaller buffer for the phase-shift filter | Chris Robinson | 2020-09-24 | 1 | -26/+23 |
| | |||||
* | Support all buffer layouts for convolution | Chris Robinson | 2020-09-22 | 1 | -22/+99 |
| | |||||
* | Remove deprecated, performance, and error event types | Chris Robinson | 2020-09-20 | 2 | -7/+2 |
| | | | | | These would be better served with a proper debug API, rather than a general audio event API. | ||||
* | Don't use direct channels with convolution | Chris Robinson | 2020-09-18 | 1 | -19/+5 |
| | | | | | It may come back as an effect property, but it's probably better to not try forcing it by default. | ||||
* | Allow higher-order B-Format buffers for convolution | Chris Robinson | 2020-09-18 | 1 | -6/+5 |
| | | | | | Only the first-order channels will be used, but higher-order buffers will be allowed. | ||||
* | Avoid extraneous buffers and buffer clears | Chris Robinson | 2020-09-17 | 1 | -9/+9 |
| | |||||
* | Use inline wrappers to clarify forward/inverse FFTs | Chris Robinson | 2020-09-13 | 3 | -6/+6 |
| | |||||
* | Use standard sin and sqrt | Chris Robinson | 2020-09-12 | 1 | -57/+2 |
| | |||||
* | Accumulate delays as samples before calculating nanoseconds | Chris Robinson | 2020-09-12 | 1 | -14/+8 |
| | |||||
* | Round (and clamp) the reftime instead of ceiling it | Chris Robinson | 2020-09-12 | 1 | -3/+3 |
| | |||||
* | Avoid repeating string literals | Chris Robinson | 2020-09-11 | 1 | -5/+7 |
| | |||||
* | Recognize GUID name strings with the DSound backend | Chris Robinson | 2020-09-10 | 1 | -8/+22 |
| | |||||
* | Allow JACK to enumerate custom devices | Chris Robinson | 2020-09-10 | 1 | -4/+75 |
| | | | | Each device being associated with a port name pattern it'll try connecting to. | ||||
* | Simplify clearing an array | Chris Robinson | 2020-09-09 | 1 | -6/+1 |
| | |||||
* | Don't assume iterators are pointers | Chris Robinson | 2020-09-09 | 1 | -2/+2 |
| | |||||
* | Apply the first convolution segment in the time domain | Chris Robinson | 2020-09-09 | 1 | -22/+86 |
| | | | | | | | This avoids an inherent delay from the effect, at the cost of higher CPU use. Having a customizable user-specified delay (with said user ensuring a properly trimmed impulse response) could help alleviate the cost since once the delay exceeds the segment size, the initial FIR filter could be skipped. | ||||
* | Don't leave the negative frequencies as 0 for inverse FFT | Chris Robinson | 2020-09-08 | 3 | -10/+18 |
| | |||||
* | Avoid an extraneous ConvolutionFilter sub-object | Chris Robinson | 2020-09-06 | 1 | -112/+90 |
| | |||||
* | Allow querying the new enums and functions | Chris Robinson | 2020-09-05 | 1 | -0/+6 |
| | |||||
* | Rework effect slot buffer setting | Chris Robinson | 2020-09-05 | 4 | -53/+16 |
| | | | | | | | | Rather than creating an effect-specific buffer that gets passed along as a property, the buffer is set the effect state when the effect state is created, the device is updated, or the buffer is changed. The buffer can only be set while the effect slot isn't playing, so it won't be changed or updated while the mixer is processing the effect state. | ||||
* | Add methods to start and stop effect slot processing | Chris Robinson | 2020-09-05 | 1 | -0/+11 |
| | | | | | | | | A newly-created effect slot is in an AL_INITIAL state, in which processing is stopped but will automatically become AL_PLAYING after successfully setting an AL_EFFECTSLOT_EFFECT value (including AL_EFFECT_NULL or 0). Calling Play[v] or Stop[v] will set the effect slot to AL_PLAYING or AL_STOPPED respectively. While stopped, the effect won't produce audio and will not be processed. | ||||
* | Don't add effect slots to the active list until an effect is set | Chris Robinson | 2020-09-05 | 1 | -0/+1 |
| | |||||
* | Avoid confusing */*...*/ syntax | Chris Robinson | 2020-09-05 | 1 | -3/+3 |
| | | | | MSVC warns about */ being outside of a comment. | ||||
* | Use an RAII wrapper to manage COM object references | Chris Robinson | 2020-09-05 | 1 | -87/+111 |
| | |||||
* | Avoid duplicate WASAPI devices by matching GUIDs | Chris Robinson | 2020-09-04 | 1 | -33/+31 |
| | |||||
* | Update some UHJ comments | Chris Robinson | 2020-09-02 | 2 | -28/+8 |
| | |||||
* | Add an in-progress extension string for convolution reverb | Chris Robinson | 2020-09-01 | 1 | -0/+3 |
| | |||||
* | Use enum class for a couple enums | Chris Robinson | 2020-09-01 | 4 | -53/+53 |
| | |||||
* | Move more processing to the ConvolutionFilter struct | Chris Robinson | 2020-08-31 | 1 | -108/+127 |
| | |||||
* | Remove a couple unnecessary pointers | Chris Robinson | 2020-08-30 | 1 | -15/+8 |
| | |||||
* | Dynamically allocate the convolution channel mixing data | Chris Robinson | 2020-08-30 | 1 | -46/+46 |
| | |||||
* | Reorganize some convolution fields | Chris Robinson | 2020-08-30 | 1 | -21/+18 |
| | |||||
* | Remove extraneous parenthesis | Chris Robinson | 2020-08-28 | 4 | -14/+14 |
| | |||||
* | Calculate the correct number of convolution segments | Chris Robinson | 2020-08-28 | 1 | -1/+1 |
| | |||||
* | Limit convolution processing to the output ambisonic order | Chris Robinson | 2020-08-28 | 1 | -2/+3 |
| | |||||
* | Don't dereference a null convolution filter | Chris Robinson | 2020-08-28 | 1 | -5/+7 |
| | |||||
* | Support B-Format impulse responses for convolution | Chris Robinson | 2020-08-28 | 1 | -17/+107 |
| | |||||
* | Pass a BufferStorage to EffectState::createBuffer | Chris Robinson | 2020-08-28 | 3 | -29/+25 |
| | |||||
* | Use a separate structure for buffer storage | Chris Robinson | 2020-08-28 | 9 | -46/+89 |
| | |||||
* | Rename buffer_formats to buffer_storage | Chris Robinson | 2020-08-27 | 4 | -3/+3 |
| | |||||
* | Handle 0-length convolution buffers | Chris Robinson | 2020-08-27 | 1 | -0/+3 |
| | |||||
* | Blend panned B-Format source directivity given its radius | Chris Robinson | 2020-08-27 | 1 | -52/+54 |
| | |||||
* | De-duplicate LoadSampleArray and FmtTypeTraits | Chris Robinson | 2020-08-26 | 4 | -260/+176 |
| | |||||
* | Avoid copying the convolution filter history to shift it | Chris Robinson | 2020-08-25 | 1 | -10/+18 |
| | | | | | Instead, the current/head/newest segment is tracked, and decremented with each process to overwrite the oldest. | ||||
* | Initial implementation of the convolution effect | Chris Robinson | 2020-08-25 | 1 | -9/+400 |
| | | | | | Currently limited to mono and stereo impulse responses, and stereo IRs try to use direct/real output rather than panning. | ||||
* | Store a reference to the effect buffer as an active property | Chris Robinson | 2020-08-24 | 1 | -0/+18 |
| | |||||
* | Stub out a convolution effect state | Chris Robinson | 2020-08-24 | 2 | -1/+157 |
| | |||||
* | Recognize a convolution reverb effect type | Chris Robinson | 2020-08-24 | 1 | -0/+5 |
| | |||||
* | Add a method for effects to create persistent buffer data | Chris Robinson | 2020-08-24 | 2 | -0/+26 |
| |