Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Use factories to create and destroy effect states | Chris Robinson | 2013-05-21 | 9 | -91/+376 |
| | |||||
* | Use a properly-defined history for the FILTER struct | Chris Robinson | 2013-05-21 | 5 | -20/+21 |
| | |||||
* | Avoid storing the device frequency in the equalizer | Chris Robinson | 2013-05-21 | 1 | -18/+19 |
| | |||||
* | Auto-generate wrappers to upcast objects before calling user methods | Chris Robinson | 2013-05-21 | 8 | -75/+37 |
| | |||||
* | Use macros to help define vtables for effect states | Chris Robinson | 2013-05-21 | 8 | -131/+110 |
| | |||||
* | Avoid storing the device frequency in the distortion state | Chris Robinson | 2013-05-21 | 1 | -7/+5 |
| | |||||
* | The effect state being destroyed can't be NULL | Chris Robinson | 2013-05-21 | 4 | -28/+22 |
| | |||||
* | Rename some inheritance macros | Chris Robinson | 2013-05-21 | 8 | -73/+73 |
| | |||||
* | Pre-scale the chorus and flanger delays to be in samples | Chris Robinson | 2013-05-21 | 2 | -36/+22 |
| | |||||
* | Avoid storing some chorus and flanger properties in the effect state | Chris Robinson | 2013-05-21 | 2 | -52/+32 |
| | |||||
* | Process 64 samples at a time for chorus and flanger effects | Chris Robinson | 2013-05-20 | 2 | -96/+130 |
| | |||||
* | Process 64 samples at a time for some effects | Chris Robinson | 2013-05-20 | 5 | -117/+201 |
| | | | | | This should help with the non-interleaved samples of the output, and allow skipping channels that don't contribute to the output. | ||||
* | Split flanger delay calculation into separate methods | Chris Robinson | 2013-05-20 | 1 | -69/+60 |
| | |||||
* | Split chorus delay calculation into separate methods | Chris Robinson | 2013-05-20 | 1 | -37/+44 |
| | |||||
* | Use some macros to help with deriving types | Chris Robinson | 2013-05-20 | 8 | -93/+81 |
| | |||||
* | Clear all the old channel gains to 0 before setting them | Chris Robinson | 2013-05-20 | 2 | -1/+5 |
| | |||||
* | Fix a potential leak when mmdevapi fails to open | Chris Robinson | 2013-05-19 | 1 | -0/+3 |
| | |||||
* | Avoid recalculating the same coefficient | Chris Robinson | 2013-05-19 | 1 | -11/+9 |
| | |||||
* | Implement distortion and equalizer effects | Chris Robinson | 2013-05-18 | 3 | -3/+820 |
| | | | | Code provided by Mike Gorchak | ||||
* | Modulator fixes | Chris Robinson | 2013-05-18 | 1 | -6/+5 |
| | | | | | | | | Modulator functions return 0..1 instead of -1..+1 Apply high-pass filter before modulation Increase fractional precision to 24 bits from 16 Thanks to Mike Gorchak | ||||
* | Fix overflow issues when converting float to int | Chris Robinson | 2013-04-22 | 1 | -7/+10 |
| | | | | | | | | 32-bit floats can only reach between -16777215...+16777215 (25 bits) before it starts losing whole-number accuracy. Some compiler optimizations may break trying to multiply a float by 2147483647.0 when the result is given right to a float parameter, causing it instead to multiply by the nearest representable float value, 2147483648.0. | ||||
* | Add a missing cast to silence MSVC | Chris Robinson | 2013-03-22 | 1 | -1/+1 |
| | |||||
* | Report the actual ALSA error if setting the buffer metrics fails | Chris Robinson | 2013-03-18 | 1 | -2/+2 |
| | |||||
* | Use less math to clamp floats to -1...+1 | Chris Robinson | 2013-03-17 | 1 | -3/+3 |
| | | | | | The previous code could have issues as precision lowers. This should hopefully work better while only using one if check instead of two. | ||||
* | Use force_align_arg_pointer for QSA | Chris Robinson | 2013-03-15 | 1 | -0/+8 |
| | |||||
* | Add a QSA backend for QNX | Chris Robinson | 2013-03-14 | 2 | -0/+1173 |
| | |||||
* | Remove unnecessary NULL checks | Chris Robinson | 2013-03-13 | 2 | -22/+14 |
| | |||||
* | Add Chorus and Flanger effects | Chris Robinson | 2013-03-13 | 3 | -2/+806 |
| | | | | Code provided by Mike Gorchak | ||||
* | Move the effect-specific get/set methods to where the effect is implemented | Chris Robinson | 2013-03-13 | 4 | -0/+776 |
| | |||||
* | Build an appropriate channel map for PulseAudio | Chris Robinson | 2013-02-08 | 1 | -2/+28 |
| | |||||
* | Destroy the ring buffer when closing down a portaudio device | Chris Robinson | 2013-02-01 | 1 | -0/+3 |
| | |||||
* | Avoid an underflow in the SSE mixers if BufferSize is less than 4 | Chris Robinson | 2012-12-24 | 1 | -2/+2 |
| | |||||
* | Filter unneeded thread messages with MMDevApi | Chris Robinson | 2012-12-24 | 1 | -1/+3 |
| | |||||
* | Add support for OpenSL ES 1.0.1 on Android | Chris Robinson | 2012-12-12 | 1 | -1/+8 |
| | |||||
* | Trace the list of supported backends | Chris Robinson | 2012-12-04 | 1 | -0/+7 |
| | |||||
* | Use +/-90 degrees for stereo sources with non-HRTF stereo output. | Chris Robinson | 2012-12-04 | 1 | -1/+9 |
| | |||||
* | Add support for float32 output to CoreAudio | Chris Robinson | 2012-12-03 | 1 | -10/+13 |
| | |||||
* | Use the correct multiplier for int32 output with CoreAudio | Chris Robinson | 2012-12-03 | 1 | -2/+2 |
| | |||||
* | Lock the device before calling aluHandleDisconnect | Chris Robinson | 2012-12-02 | 9 | -2/+30 |
| | | | | | | 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. | ||||
* | Trace the opened device name in alcCaptureOpenDevice | Chris Robinson | 2012-12-02 | 1 | -1/+1 |
| | |||||
* | Use WARN when implicitly deleting resources with the context | Chris Robinson | 2012-12-02 | 1 | -2/+2 |
| | |||||
* | Explicitly check for malloc.h | Chris Robinson | 2012-11-25 | 1 | -1/+1 |
| | |||||
* | malloc.h isn't standard, and is only needed for _aligned_malloc | Chris Robinson | 2012-11-25 | 1 | -1/+3 |
| | |||||
* | Avoid locking PulseAudio's mainloop when starting and stopping capture | Chris Robinson | 2012-11-19 | 1 | -4/+0 |
| | | | | | The mainloop is already locked by the caller, and double-locking interferes with the subsequent wait. | ||||
* | Fix off-by-one error in the makehrtf dither and add a resample option | Chris Robinson | 2012-11-18 | 1 | -831/+829 |
| | | | | Also fixes some size_t type warnings | ||||
* | Avoid storing the SSE state if it's not supported | Chris Robinson | 2012-11-13 | 1 | -1/+4 |
| | |||||
* | Include standard headers before conditional ones | Chris Robinson | 2012-11-04 | 1 | -7/+6 |
| | |||||
* | Use the stored buffer metrics for the mmdevapi buffer size | Chris Robinson | 2012-11-04 | 1 | -9/+1 |
| | |||||
* | Add rudimentary latency tracking for mmdevapi | Chris Robinson | 2012-11-04 | 1 | -1/+16 |
| | | | | | | | | This won't be as granular as it could be, since it only updates when the wakeup event trips (which may or may not happen more often than OpenAL's mix updates). A more correct method would be to query GetCurrentPadding directly, but that would require sending a message to the processing thread and waiting for a reply, since we can't guarantee COM on the calling thread. | ||||
* | Use an array to specify the offset for each channel of the device buffer | Chris Robinson | 2012-11-04 | 2 | -60/+73 |
| | | | | This effectively inverts the DevChannels array |