aboutsummaryrefslogtreecommitdiffstats
path: root/Alc/alc.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Return unique_ptrs instead of raw pointersChris Robinson2018-12-271-1/+1
| | | | For the ring buffer, channel converter, and sample converter.
* Use a unique_ptr for the AsyncEvents ringbufferChris Robinson2018-12-271-4/+1
|
* Recognize ambix as an alias for acn+sn3dChris Robinson2018-12-271-1/+1
|
* Clean up the ring buffer struct and use member functionsChris Robinson2018-12-261-1/+1
|
* Construct AsyncEvent objects directly in the ringbufferChris Robinson2018-12-251-0/+19
|
* Remove extraneous typedef, struct, and enum keywordsChris Robinson2018-12-241-17/+16
|
* Add an in-progress extension to set the effect slot targetChris Robinson2018-12-241-0/+1
|
* Make the Compressor more class-likeChris Robinson2018-12-241-6/+5
|
* Only check ambisonic attributes with B-Format outputChris Robinson2018-12-241-11/+14
|
* Dynamically sort the effect slots when mixingChris Robinson2018-12-221-2/+6
| | | | | | | | | This is to be able to support effects that output to other effects. When an effect outputs to another effect, the former needs to process first, so the former mixes to the latter's buffer before the latter is processed. This sorting needs to happen in the mixer because the effect slot's "Target" property changes asynchronously.
* Use a normal delete instead of ll_ringbuffer_freeChris Robinson2018-12-221-1/+1
| | | | And use RingBufferPtr in more places
* Rename a couple HRTF structsChris Robinson2018-12-221-20/+20
|
* Don't hardcode the channel count from the device ambisonic orderChris Robinson2018-12-191-7/+5
|
* Don't allow FuMa ordering or normalization above third-orderChris Robinson2018-12-191-2/+14
|
* Combine handling of attribute processingChris Robinson2018-12-181-208/+143
|
* Avoid some explicit loop countsChris Robinson2018-12-151-8/+4
|
* Add more casts for MSVCChris Robinson2018-12-121-1/+1
|
* Use proper classes for Vector and Matrix typesChris Robinson2018-12-121-2/+2
|
* Rename a couple global variablesChris Robinson2018-12-091-5/+5
| | | | Avoid clashing with an enum name
* Avoid static global initialization functionsChris Robinson2018-12-081-134/+16
|
* Avoid several uses of memsetChris Robinson2018-12-081-2/+2
|
* Use class methods for the NFC filtersChris Robinson2018-12-051-2/+2
|
* Avoid more explicit loopsChris Robinson2018-12-041-20/+21
|
* Increase the async event queue sizeChris Robinson2018-12-041-1/+1
|
* Use std::array for the voice's PrevSamplesChris Robinson2018-11-301-1/+2
|
* Improve construction and destruction of ALvoicesChris Robinson2018-11-301-12/+45
|
* Don't bother making ALvoiceProps dynamically sizedChris Robinson2018-11-301-21/+9
|
* Store the source ID with the voice instead of the source pointerChris Robinson2018-11-291-1/+1
|
* Remove an improper Connected checkChris Robinson2018-11-281-1/+1
|
* Attempt to reconnect lost devices with alcResetDeviceSOFTChris Robinson2018-11-281-7/+19
| | | | | | | | | | | Be aware there's currently possible race conditions with PulseAudio's callbacks (the state callbacks need to be cleared while not playing). Also paused sources will assert/crash if attempted to play again without being explicitly stopped or rewound first. Both of these will eventually be fixed (though a paused source's offset will be lost regardless).
* Reduce some indentationChris Robinson2018-11-281-31/+26
|
* Avoid some explicit loopsChris Robinson2018-11-281-12/+17
|
* Avoid an unnecessary lambdaChris Robinson2018-11-281-3/+1
|
* Small cleanup for ~ALCcontext_structChris Robinson2018-11-271-17/+17
|
* Make and use a semaphore classChris Robinson2018-11-271-3/+0
|
* Remove althrd_yieldChris Robinson2018-11-261-2/+2
|
* Use a standard mutex for the remaining locksChris Robinson2018-11-261-7/+0
|
* Use a standard mutex for the source and effect slot locksChris Robinson2018-11-261-7/+2
|
* Use a standard mutex for the proplockChris Robinson2018-11-261-5/+2
|
* Use a standard mutex for the backend lockChris Robinson2018-11-261-24/+20
|
* Avoid using ATOMIC_INITChris Robinson2018-11-261-2/+2
|
* Don't explicitly clear vector objects in the destructorChris Robinson2018-11-251-10/+6
|
* Automatically clean up filters and effects with their sublistsChris Robinson2018-11-251-10/+10
|
* Automatically clean up buffers with ther sublistChris Robinson2018-11-251-5/+5
|
* Avoid a separate function to clean up effect slotsChris Robinson2018-11-251-1/+5
|
* Atuomatically clean up sources with its sublist's destructionChris Robinson2018-11-251-5/+5
|
* Use C++ methods a bit moreChris Robinson2018-11-241-8/+6
|
* Replace remaining uses of std::vector with al::vectorChris Robinson2018-11-241-2/+2
| | | | Which uses a custom allocator that uses our allocation functions.
* Make GetContextRef return a ContextRefChris Robinson2018-11-241-5/+3
|
* Use a unique_ptr while opening a deviceChris Robinson2018-11-231-21/+22
|