aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Make the SourceMix function a method of the ALsource structChris Robinson2010-09-264-9/+21
|
* Avoid updating the source in MixSourceChris Robinson2010-09-251-10/+11
|
* Convert shorts so that 0 remains 0Chris Robinson2010-09-251-4/+4
|
* Don't try to open the ALSA device a second time if the first failsChris Robinson2010-09-251-10/+0
|
* Avoid some code duplicationChris Robinson2010-09-251-96/+44
|
* Localize more variables and remove unnecessary onesChris Robinson2010-09-251-68/+73
|
* Avoid sampling beyond the end of the loopChris Robinson2010-09-241-6/+6
|
* Localize some variables to the mixer macrosChris Robinson2010-09-241-51/+84
| | | | | | The hope here is to help break the mixer loops into separate functions, so the macro expansion doesn't cause the MixSource function to explode in size and kill compilation speed.
* Use separate mixing loops for the dry path and wet pathsChris Robinson2010-09-241-92/+234
| | | | | | | | | | | | This will increase CPU use a bit for sources that use auxiliary sends (particularly with the cosine resampler), but it makes it more scalable when adding more sends per source. Additionally, it will improve performance of sources that don't use auxiliary sends. The cosine resampler can probably be improved by using a lookup table instead of calling cos() as there are 14 bits of fractional precision, so a 16384- element float array would cover it all. This can also be reduced to a half or quarter size if the precision loss is found to be acceptable.
* Better protect against negative attenuationChris Robinson2010-09-241-1/+4
|
* Use ALfloat for the dry mix bufferChris Robinson2010-09-232-4/+4
|
* Remove an unnecessary variableChris Robinson2010-09-231-5/+3
|
* Rename some variables to be less confusingChris Robinson2010-09-231-32/+32
|
* Fix line indentationChris Robinson2010-09-231-1/+1
|
* Be consistent with a variable's useChris Robinson2010-09-231-3/+3
|
* Convert float to short similar to short to floatChris Robinson2010-09-231-5/+4
|
* Store and mix signed 16-bit samplesChris Robinson2010-09-222-109/+155
|
* Allow the mixing loop to access the different sample formatsChris Robinson2010-09-221-63/+63
|
* Compact some reused codeChris Robinson2010-09-221-115/+69
|
* Allow accessing the buffer data as multiple data types in the mixerChris Robinson2010-09-223-386/+379
| | | | Also reduces a bunch of indentation
* Duplicate stereo sources by defaultChris Robinson2010-09-223-6/+10
| | | | | The mixer is smart enough now to handle proper volume adjustments depending on the number of output speakers
* Use separate macros for the different mixing loopsChris Robinson2010-09-221-200/+202
|
* Consolidate some codeChris Robinson2010-09-211-13/+12
|
* Reduce some more indentationChris Robinson2010-09-216-183/+188
|
* Reduce some indentationChris Robinson2010-09-216-209/+166
|
* Improve some range checksChris Robinson2010-09-212-3/+5
|
* Implement AL_SOFT_buffer_sub_data using the current AL_EXT_buffer_sub_data specChris Robinson2010-09-215-9/+28
| | | | | | This extension can be useful for some applications, but a full EXT version may not be ready for some time. Using the SOFT moniker will help differentiate it in case changes need to be done for the EXT version.
* Improve range checking for BufferSubDataChris Robinson2010-09-191-2/+2
|
* Store air absorption factor locallyChris Robinson2010-09-121-3/+5
|
* Prevent effectiveDist from going negativeChris Robinson2010-09-111-1/+1
|
* Pass dry-path click buffers as parameters to MixSourceChris Robinson2010-09-111-6/+4
|
* Source positions at and after the end of the buffer queue go back to 0Chris Robinson2010-09-091-5/+5
|
* Avoid another non-descript incrementing variableChris Robinson2010-09-091-11/+14
|
* Avoid using a single-letter iterator valueChris Robinson2010-09-091-12/+13
|
* Combine multiple checks into oneChris Robinson2010-09-081-9/+12
|
* Better protect against sample overflow when converting float to shortChris Robinson2010-09-081-11/+6
|
* Remove unnecessary checkChris Robinson2010-09-071-6/+0
|
* Fix comparison checkChris Robinson2010-09-071-1/+1
|
* Add missing elseChris Robinson2010-09-071-0/+1
|
* Watch for a few more negative sizesChris Robinson2010-09-071-6/+8
|
* Check for invalid negative sizesChris Robinson2010-09-071-11/+45
|
* Remove unused struct memberChris Robinson2010-09-073-5/+0
|
* Combine two arrays into oneChris Robinson2010-08-161-18/+17
|
* Handle clicks by watching changes between updatesChris Robinson2010-08-165-46/+110
|
* Use the correct value to dereference an arrayChris Robinson2010-08-161-1/+1
|
* Add a bit more information to the READMEChris Robinson2010-08-151-0/+33
|
* Consolidate some click removal calculationsChris Robinson2010-08-151-26/+16
|
* Use a multiplier instead of if checksChris Robinson2010-08-151-28/+20
|
* Add click removal for wet sendsChris Robinson2010-08-153-7/+52
|
* Use click removal to handle harsh panning/volume changesChris Robinson2010-08-153-83/+54
|