aboutsummaryrefslogtreecommitdiffstats
path: root/Alc
Commit message (Collapse)AuthorAgeFilesLines
* Try to map reverb outputs directly to output channelsChris Robinson2016-02-011-2/+77
| | | | | | | | | HRTF and B-Format output still need to use virtual panning directions, but the reverb works better when it outputs directly to an output channel. Ambient and directional panning is used to properly mask and attenuate each output channel. Note that currently the "direct panning" output is quieter than it should be. Work is underway to attenuate the early reflections and late reverb better.
* Apply the main reverb gain with the panningChris Robinson2016-02-011-13/+12
|
* Fix an out of date commentChris Robinson2016-01-311-4/+2
|
* Rename ComputeBFormatGains to ComputeFirstOrderGainsChris Robinson2016-01-315-10/+10
|
* Properly silence the LFE input channel gain on the source sendsChris Robinson2016-01-301-0/+8
|
* Fix scaling for effect sends of B-Format sourcesChris Robinson2016-01-301-1/+10
|
* Make the modulator effect multichannelChris Robinson2016-01-291-22/+41
|
* Use separate modulator functions only for the waveformChris Robinson2016-01-291-56/+42
|
* Convert the equalizer effect to multichannelChris Robinson2016-01-291-33/+90
|
* Make the compressor effect multichannelChris Robinson2016-01-281-25/+58
|
* Mix to multichannel for effectsChris Robinson2016-01-284-58/+258
| | | | | | This mixes to a 4-channel first-order ambisonics buffer. With ACN ordering and N3D scaling, this makes it easy to remain compatible with effects that only care about mono input since channel 0 is an unattenuated mono signal.
* Pass a pointer to the input samples array for effect processingChris Robinson2016-01-2712-36/+42
|
* Avoid passing the device to SetChannelMapChris Robinson2016-01-271-24/+31
|
* Separate calculating ambisonic coefficients from the panning gainsChris Robinson2016-01-2513-73/+98
|
* Don't write one byte at a time for the wave writer on big endianChris Robinson2016-01-251-17/+19
|
* Replace multiple fputc calls with one fwriteChris Robinson2016-01-231-6/+4
|
* Reorder filterstate propertiesChris Robinson2016-01-232-19/+18
|
* Avoid using scandir/alphasortChris Robinson2016-01-211-23/+46
| | | | | They require POSIX 2008, which is a bit too "new" for my current liking. We can do well enough with opendir/readdir/closedir and qsort.
* Fix for systems that don't have strnlenChris Robinson2016-01-211-4/+14
|
* Improve the OSS enumeration codeChris Robinson2016-01-211-63/+71
|
* Merge branch 'master' of github.com:/kcat/openal-softChris Robinson2015-12-191-27/+206
|\
| * Added a check for an empty pathKeegan Drake H.P2015-12-171-2/+2
| |
| * Add device enumeration support for OSSv4Keegan Drake H.P2015-12-171-27/+206
| |
* | Don't overwrite the output with the dedicated effectChris Robinson2015-12-121-1/+1
|/
* Add includes to work around broken GNU headers and POSIX-2001Chris Robinson2015-12-112-0/+2
|
* Fix slashes on the local path on WindowsChris Robinson2015-12-081-0/+3
|
* Use the ALSOFT_LOCAL_PATH env var instead of the CWDChris Robinson2015-12-081-4/+18
|
* Use %s.mhr for the default hrtf table listChris Robinson2015-12-051-1/+1
|
* Support %s as a string matching markerChris Robinson2015-12-051-1/+94
|
* Reformat Windows device name dressingChris Robinson2015-12-043-29/+27
|
* Better handle inexact ALSA period countsChris Robinson2015-11-231-1/+4
|
* Fix the allow-resampler check for ALSAChris Robinson2015-11-231-1/+1
|
* Replace deprecated Carbon API calls with modern AudioComponent APIs in the ↵Alex Szpakowski2015-11-131-18/+24
| | | | | | | | CoreAudio backend. This prevents a deprecation notice from being output to stdout when alcOpenDevice is called in Mac OS X 10.11. The new API calls require Mac OS X 10.6 or newer.
* Use doubles for the constructed listener matrixChris Robinson2015-11-112-45/+87
| | | | | | This helps the stability of transforms to local space for sources that are at or near the listener. With a single-precision matrix, even FLT_EPSILON might not be enough to detect matching positions.
* Move the bsincTable to a separate fileChris Robinson2015-11-102-988/+981
|
* Update the bsinc tableChris Robinson2015-11-102-969/+972
| | | | Precision is increased to cover the full 32-bit float range.
* Add options to disable Pulse's and ALSA's resamplersChris Robinson2015-11-072-3/+7
|
* Simplify reverb panning rotationsChris Robinson2015-11-071-4/+4
|
* Remove a const to silence some warningsChris Robinson2015-11-061-1/+1
|
* Use more accurate floating point literalsChris Robinson2015-11-063-41/+41
|
* Add another cast for MSVCChris Robinson2015-11-061-1/+1
|
* Use ALuint instead of size_t for a loop iteratorChris Robinson2015-11-061-2/+3
|
* Add a cast to silence an MSVC warningChris Robinson2015-11-061-2/+2
|
* Use a more appropriate type in MatchFilterChris Robinson2015-11-061-2/+2
|
* Cast a double->float return to silence MSVCChris Robinson2015-11-061-1/+1
|
* Pan each early/late delay line separatelyChris Robinson2015-11-051-56/+70
|
* Manually inline and condense the bsinc resamplerChris Robinson2015-11-052-80/+63
|
* Remove an unneeded memset that was overwriting memoryChris Robinson2015-11-051-2/+0
|
* Implement a band-limited sinc resamplerChris Robinson2015-11-058-21/+1211
| | | | | | | | This is essentially a 12-point sinc resampler, unless it's resampling to a rate higher than the output, at which point it will vary between 12 and 24 points and do anti-aliasing to avoid/reduce frequencies going over nyquist. Code provided by Christopher Fitzgerald.
* Change the Kaiser rippling limit to -60dBChris Robinson2015-11-041-2/+2
| | | | | This improves the transition cutoff, shortening its width and reducing the amount of error.