Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Step mixing gains per-sample for non-HRTF mixing | Chris Robinson | 2014-03-23 | 1 | -2/+7 |
| | | | | | | | | | | | | | | | | | | | | | | | | This fades the dry mixing gains using a logarithmic curve, which should produce a smoother transition than a linear one. It functions similarly to a linear fade except that step = (target - current) / numsteps; ... gain += step; becomes step = powf(target / current, 1.0f / numsteps); ... gain *= step; where 'target' and 'current' are clamped to a lower bound that is greater than 0 (which makes no sense on a logarithmic scale). Consequently, the non-HRTF direct mixers do not do not feed into the click removal and pending click buffers, as this per-sample fading would do an adequate job of stopping clicks and pops caused by extreme gain changes. These buffers should be removed shortly. | ||||
* | Move the step counter and moving flag to DirectParams | Chris Robinson | 2014-03-23 | 1 | -2/+4 |
| | |||||
* | Store the HrtfState directly in the DirectParams | Chris Robinson | 2014-03-23 | 1 | -3/+3 |
| | |||||
* | Move some HRTF and mixer structs to alu.h | Chris Robinson | 2014-03-22 | 1 | -6/+60 |
| | |||||
* | Store some source mixing parameters in the active source struct | Chris Robinson | 2014-03-19 | 1 | -3/+3 |
| | |||||
* | Add min/max/clamp methods for doubles | Chris Robinson | 2013-11-27 | 1 | -0/+7 |
| | |||||
* | Use C99 inline in more places | Chris Robinson | 2013-11-04 | 1 | -18/+18 |
| | |||||
* | Use a helper macro for pi*2 | Chris Robinson | 2013-10-08 | 1 | -0/+1 |
| | |||||
* | Use helper macros to convert between degrees and radians | Chris Robinson | 2013-10-08 | 1 | -2/+5 |
| | |||||
* | Use a macro for the silence threshold | Chris Robinson | 2013-10-06 | 1 | -0/+2 |
| | |||||
* | Use helpers to set channel gain arrays | Chris Robinson | 2013-10-03 | 1 | -1/+18 |
| | | | | Also avoid unnecessary clearing. | ||||
* | Use C99's inline instead of __inline | Chris Robinson | 2013-05-28 | 1 | -17/+17 |
| | |||||
* | Use restrict instead of RESTRICT | Chris Robinson | 2013-05-22 | 1 | -3/+3 |
| | |||||
* | Lock the device before calling aluHandleDisconnect | Chris Robinson | 2012-12-02 | 1 | -0/+1 |
| | | | | | | PulseAudio causes an assert if being relocked inside a callback on the worker thread, where aluHandleDisconnect is called. We can assume it's already locked there, so just make sure the device is locked before being calling it. | ||||
* | Move some math functions to where they're used | Chris Robinson | 2012-10-25 | 1 | -26/+0 |
| | |||||
* | Remove the float math wrapper functions | Chris Robinson | 2012-10-25 | 1 | -55/+0 |
| | |||||
* | Constify the direct and send parameters given to the mixer | Chris Robinson | 2012-10-15 | 1 | -2/+2 |
| | |||||
* | Remove the unused Device parameter | Chris Robinson | 2012-10-14 | 1 | -1/+1 |
| | |||||
* | Remove the now-unused Source parameter from the DryMix methods | Chris Robinson | 2012-10-14 | 1 | -2/+1 |
| | |||||
* | Check the distance against epsilon to determine if it matches | Chris Robinson | 2012-10-12 | 1 | -0/+5 |
| | |||||
* | Remove an unneeded parameter from the resampler | Chris Robinson | 2012-09-27 | 1 | -2/+1 |
| | |||||
* | Use a source param for the resampler and move them to the mixer source | Chris Robinson | 2012-09-14 | 1 | -0/+4 |
| | |||||
* | Move a couple macros to more appropriate headers | Chris Robinson | 2012-09-14 | 1 | -0/+3 |
| | |||||
* | Fix up some more header includes | Chris Robinson | 2012-09-14 | 1 | -11/+1 |
| | |||||
* | Don't include alu.h in alMain.h | Chris Robinson | 2012-09-14 | 1 | -40/+0 |
| | |||||
* | Enable flush-to-zero mode when possible | Chris Robinson | 2012-09-14 | 1 | -37/+0 |
| | |||||
* | Move a couple methods to where they're used | Chris Robinson | 2012-09-12 | 1 | -4/+0 |
| | |||||
* | Do the filtering separately from the mixing | Chris Robinson | 2012-09-11 | 1 | -1/+1 |
| | |||||
* | Remove a hack for MinGW | Chris Robinson | 2012-09-10 | 1 | -26/+0 |
| | |||||
* | Add missing returns | Chris Robinson | 2012-09-09 | 1 | -10/+10 |
| | |||||
* | Use SSE to do 4 samples at once (non-HRTF direct mix), instead of to apply a ↵ | Chris Robinson | 2012-09-09 | 1 | -11/+10 |
| | | | | | | matrix row MaxCHannels no longer needs to be a multiple of 4 now, either. | ||||
* | Move the target effect slot to the SendParams struct | Chris Robinson | 2012-09-08 | 1 | -2/+1 |
| | |||||
* | Remove STACK_DATA_SIZE in favor of BUFFERSIZE | Chris Robinson | 2012-09-08 | 1 | -12/+12 |
| | |||||
* | Separate the resampling and mixing steps | Chris Robinson | 2012-09-08 | 1 | -5/+5 |
| | |||||
* | Increase MaxChannels to be a multiple of 4 | Chris Robinson | 2012-08-29 | 1 | -10/+11 |
| | |||||
* | Add a device method to retrieve the active latency | Chris Robinson | 2012-08-17 | 1 | -0/+7 |
| | | | | | This is effectively the time until the next update will be heard by the user, or the closest approximation thereof, in nanoseconds. | ||||
* | Use wrappers for float-typed math functions | Chris Robinson | 2012-06-29 | 1 | -45/+34 |
| | |||||
* | Test the squared length of a vector before normalizing | Chris Robinson | 2012-06-28 | 1 | -8/+6 |
| | |||||
* | Don't use all caps for enum value names | Chris Robinson | 2012-06-28 | 1 | -9/+9 |
| | |||||
* | Don't try to set FE_TOWARDZERO when it's not available | Chris Robinson | 2012-06-28 | 1 | -0/+2 |
| | |||||
* | Only use _FPU_GETCW and _FPU_SETCW for x86 targets | Chris Robinson | 2012-05-03 | 1 | -2/+2 |
| | |||||
* | Use ComputeAngleGains for multi-channel sources and remove the unused lookup ↵ | Chris Robinson | 2012-04-29 | 1 | -4/+0 |
| | | | | table stuff | ||||
* | Add a method to calculate gains given a sound point and its half-width, and ↵ | Chris Robinson | 2012-04-28 | 1 | -0/+2 |
| | | | | | | | | | use it for reverb The half-width ranges from 0 to pi, and essentially specifies the coverage area around the listener. At 0, it's an infinitely small point sound and behaves like a usual panning sound. At pi/2 it covers half the area, and at pi it covers the whole area. | ||||
* | Flip the parameters to aluCart2LUTpos, so it behaves a bit more like atan2 | Chris Robinson | 2012-04-28 | 1 | -1/+1 |
| | |||||
* | Pass the direct/send params to the mixer instead of accessing through the source | Chris Robinson | 2012-04-28 | 1 | -0/+4 |
| | |||||
* | Use separate methods for the dry and wet mixing loops | Chris Robinson | 2012-04-27 | 1 | -6/+11 |
| | |||||
* | The mixer always uses floats | Chris Robinson | 2012-04-26 | 1 | -1/+1 |
| | |||||
* | Use a separate loop to actually update DataPosFrac and DataPosInt | Chris Robinson | 2012-04-26 | 1 | -2/+1 |
| | |||||
* | Use more proper enum names for the resampler | Chris Robinson | 2012-02-12 | 1 | -6/+4 |
| | |||||
* | Use a proper enum value for setting the default distance model | Chris Robinson | 2012-02-12 | 1 | -1/+3 |
| |