Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Use the correct value for MAX_AMBI2D_CHANNELS | Chris Robinson | 2019-03-10 | 1 | -1/+1 |
| | |||||
* | Don't copy old coeffs in MixHrtfBlendBase | Chris Robinson | 2019-03-10 | 1 | -2/+2 |
| | |||||
* | Avoid an extra level of indentation | Chris Robinson | 2019-03-10 | 1 | -38/+50 |
| | |||||
* | Don't directly use a buffer for updating source parameters | Chris Robinson | 2019-03-10 | 2 | -25/+15 |
| | |||||
* | Avoid excessive transformations of the source position | Chris Robinson | 2019-03-10 | 1 | -44/+60 |
| | |||||
* | Add a method to apply an HF scale without band-splitting | Chris Robinson | 2019-03-10 | 4 | -25/+52 |
| | |||||
* | Fix for MSVC decaying arrays to pointers with ?: | Chris Robinson | 2019-03-09 | 1 | -5/+5 |
| | |||||
* | Fade out voices that end normally | Chris Robinson | 2019-03-09 | 1 | -140/+180 |
| | | | | | | Sometimes a sound may end with non-0 amplitude, particularly if a buffer queue underruns. This helps avoid clicks and pops for sources that don't already end in silence. | ||||
* | Play dummy samples and force a fade out on stopping voices | Chris Robinson | 2019-03-09 | 1 | -24/+42 |
| | |||||
* | Add a Stopping state for voices | Chris Robinson | 2019-03-09 | 3 | -26/+58 |
| | | | | | | This currently doesn't do much, except have the mixer progress it to Stopped. It's valid to have without a source or buffers, and in the future will allow fading out when a source is paused or stopped. | ||||
* | Clear the voice's buffer when detaching from source | Chris Robinson | 2019-03-09 | 1 | -0/+4 |
| | |||||
* | Pass a reference to function for a template parameter | Chris Robinson | 2019-03-03 | 1 | -3/+3 |
| | |||||
* | Use more specific names for temp buffer storage | Chris Robinson | 2019-03-02 | 1 | -18/+10 |
| | |||||
* | Reverse the HRTF field array | Chris Robinson | 2019-02-27 | 3 | -15/+24 |
| | | | | | | Most often a sound's distance will be beyond the farthest field measurement, so It's more efficient to have the farthest field first and avoid looping through the whole field array for them. | ||||
* | Combine the reverb output mixes into a single call | Chris Robinson | 2019-02-25 | 1 | -28/+38 |
| | |||||
* | Make sure the reverb fading completes | Chris Robinson | 2019-02-25 | 1 | -1/+1 |
| | | | | | The processing loop doesn't depend on being aligned anymore, so it won't get stuck when only less than 4 samples can be done in a non-final update. | ||||
* | Convert the device frequency to float just once | Chris Robinson | 2019-02-24 | 1 | -9/+7 |
| | |||||
* | Make sure the voice's direct buffer is always set | Chris Robinson | 2019-02-24 | 1 | -7/+5 |
| | |||||
* | Remove a duplicate index array | Chris Robinson | 2019-02-24 | 1 | -2/+2 |
| | |||||
* | Reduce BUFFERSIZE to match the default period size | Chris Robinson | 2019-02-24 | 1 | -9/+9 |
| | | | | | Also adds a bit more space to the temp source data buffer, to avoid needing to loop on matching sample rates. | ||||
* | Rework reverb A/B-Format conversion mixing | Chris Robinson | 2019-02-24 | 1 | -99/+77 |
| | | | | | This should help improve performance using the optimized mixers, and fewer passes on the transforms, though at the cost of more memory. | ||||
* | Change some functions to proper methods | Chris Robinson | 2019-02-23 | 1 | -171/+171 |
| | |||||
* | Avoid multiple int-to-float conversions | Chris Robinson | 2019-02-23 | 1 | -12/+17 |
| | |||||
* | Constify some parameters and remove an explicit loop | Chris Robinson | 2019-02-23 | 2 | -10/+23 |
| | |||||
* | Remove the FOAOut mixing buffer and associated post-processes | Chris Robinson | 2019-02-22 | 6 | -289/+11 |
| | |||||
* | Remove the unused FOAOut EffectTarget | Chris Robinson | 2019-02-22 | 1 | -2/+2 |
| | |||||
* | Apply ambisonic upsampling on reverb output as needed | Chris Robinson | 2019-02-22 | 1 | -37/+110 |
| | | | | | | | | | | This isn't the greatest thing since it splits the A-to-B-Format transform from the panning transform. The A-to-B and HF scale mixes are also not as optimal as they could be, since they can't use the main mixer functions (wrong buffer line length). It does, however, get rid of the final use of the FOAOut buffer, so the upsampling post-process is no longer needed. | ||||
* | Ensure reverb fading doesn't end with less than 4 samples | Chris Robinson | 2019-02-22 | 1 | -1/+1 |
| | |||||
* | Avoid some unnecessary local variables | Chris Robinson | 2019-02-22 | 1 | -13/+12 |
| | |||||
* | Combine reverb transform matrices one column at a time | Chris Robinson | 2019-02-21 | 1 | -18/+23 |
| | |||||
* | Mix B-Format sources directly to the dry buffer | Chris Robinson | 2019-02-21 | 2 | -21/+34 |
| | | | | Now the only thing that utilizes FOAOut is reverb output. | ||||
* | Remove RESTRICT from the bandsplitter process method | Chris Robinson | 2019-02-21 | 2 | -2/+2 |
| | | | | | The compiler can see there's no aliasing with the local variables, and the input/output buffers are handled sequentially one element at a time anyway. | ||||
* | Allow processing some effects in higher order ambisonics | Chris Robinson | 2019-02-21 | 6 | -17/+17 |
| | | | | | | Reverb notably is still only first-order (any higher order channels are dropped, and it writes to FOAOut). But others, like the equalizer, work on all available channels. | ||||
* | Add helpers to get the channel count from an ambisonic order | Chris Robinson | 2019-02-21 | 3 | -16/+20 |
| | |||||
* | Fix unused parameter warning | Chris Robinson | 2019-02-21 | 1 | -1/+1 |
| | |||||
* | Get rid of the MAX_EFFECT_CHANNELS macro | Chris Robinson | 2019-02-21 | 4 | -40/+39 |
| | |||||
* | Make sure the B2A matrix has enough values for the input count | Chris Robinson | 2019-02-21 | 1 | -6/+6 |
| | |||||
* | Remove some now-unnecessary ReverbState fields | Chris Robinson | 2019-02-21 | 1 | -26/+1 |
| | |||||
* | Pass the number of input channels to EffectState::process | Chris Robinson | 2019-02-21 | 13 | -107/+104 |
| | |||||
* | Ensure the device's mAmbiOrder is always set appropriately | Chris Robinson | 2019-02-21 | 1 | -8/+23 |
| | | | | The Dry target is always ambisonic, so set its order correctly. | ||||
* | Store effect slots in groups of 64 | Chris Robinson | 2019-02-20 | 2 | -18/+41 |
| | | | | | Now that their wet buffers are allocated dynamically, the ALeffectslot object itself is rather small. | ||||
* | Allocate the effect slot wet buffer dynamically | Chris Robinson | 2019-02-20 | 3 | -27/+31 |
| | |||||
* | Partially handle non-periphonic reverb input | Chris Robinson | 2019-02-19 | 1 | -3/+26 |
| | |||||
* | Use the right macro for the number of reverb panning gains | Chris Robinson | 2019-02-19 | 1 | -2/+2 |
| | |||||
* | Rename MAX_AMBI_COEFFS and MAX_AMBI2D_COEFFS | Chris Robinson | 2019-02-19 | 14 | -56/+56 |
| | |||||
* | Reduce some indenting | Chris Robinson | 2019-02-19 | 1 | -27/+25 |
| | |||||
* | Apply the upsampler's all-pass when mixing the band-split samples | Chris Robinson | 2019-02-19 | 1 | -10/+10 |
| | |||||
* | Clean up some AmbiUpsampler initialization | Chris Robinson | 2019-02-19 | 1 | -17/+19 |
| | |||||
* | Avoid a temp buffer for the distance compensation delay | Chris Robinson | 2019-02-17 | 1 | -23/+12 |
| | |||||
* | Apply phase correction to the ambisonic decoder HRIRs | Chris Robinson | 2019-02-16 | 1 | -25/+60 |
| | | | | | | This preserves the original phase of the HRIR frequencies for decoding the ambisonic signal. This should help prevent extra coloration from the band- splitter used to scale the HF response. |