aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Use an enum for the chorus and flanger waveformsChris Robinson2014-05-142-16/+54
|
* Don't try to read the internal capture buffer into itselfChris Robinson2014-05-141-6/+9
|
* Remove a dead assignmentChris Robinson2014-05-141-1/+0
|
* Add a couple asserts to ensure a proper bufferChris Robinson2014-05-141-0/+3
| | | | | | It should not be possible for a playing or paused source to not have a valid buffer, but Clang's static analyzer doesn't know that. Hopefully an assert will convince it.
* Avoid freeing an in-use capture bufferChris Robinson2014-05-141-5/+3
| | | | | When stopping, ALSA may capture into its own storage buffer. Do not free the storage buffer if it first reads from it.
* Make RefCount a non-integer typeChris Robinson2014-05-1414-70/+88
| | | | | It should only be accessed through the appropriate functions to ensure proper atomicity.
* Add HF Reference as a filter propertyChris Robinson2014-05-143-0/+6
|
* Make LOWPASSFREQREF a float valueChris Robinson2014-05-114-5/+5
|
* Store the filter reference frequency in the sourceChris Robinson2014-05-113-12/+24
|
* Update the source send target gains properlyChris Robinson2014-05-111-4/+4
|
* Avoid locking the mixer when unqueueing buffersChris Robinson2014-05-111-4/+16
|
* Avoid accessing the source's buffer queue head multiple timesChris Robinson2014-05-111-17/+16
|
* Use a struct to store the source's direct gain/gainhf propertiesChris Robinson2014-05-113-15/+16
|
* Don't mix old- and new-style FIND_PACKAGE_HANDLE_STANDARD_ARGS callsChris Robinson2014-05-101-6/+2
| | | | | | | Some (all?) versions of cmake seem to get a bit confused when an old-style FIND_PACKAGE_HANDLE_STANDARD_ARGS call fails, and the scripts attempt a new- style call later on. It continues to think it's using old-style, acting as if REQUIRED_VARS is the message and looks for a VERSION_VAR variable.
* Avoid locking the mixer while queueing buffers onto a source.Chris Robinson2014-05-101-24/+34
|
* Mark the buffer queue pointers volatileChris Robinson2014-05-101-2/+2
|
* Add a missing pointer initChris Robinson2014-05-101-3/+3
|
* Update the output buffer pointer in the Write_* methodsChris Robinson2014-05-101-15/+11
|
* Add a couple constsChris Robinson2014-05-101-2/+2
|
* Explicit init the source queue and current_buffer pointersChris Robinson2014-05-101-0/+3
|
* Use a RWLock to help protect the source's buffer queueChris Robinson2014-05-103-35/+61
| | | | | In some instances this allows to to remove the device/mixer lock, or reduce how long it's held.
* Don't explicitly store the BuffersInQueueChris Robinson2014-05-102-10/+14
|
* Store the current buffer queue item, rather than played buffer countChris Robinson2014-05-104-101/+76
|
* Avoid checking the previous buffer multiple timesChris Robinson2014-05-101-9/+9
|
* Append the number of bits, not bytes, to typesChris Robinson2014-05-081-37/+27
| | | | Also use ALuint64SOFT from alext.h for uint64
* Always use unsigned int for RefCountChris Robinson2014-05-071-18/+22
|
* Build a common static lib for reusable codeChris Robinson2014-05-071-3/+15
|
* Move RWLock and UIntMap implementations to commonChris Robinson2014-05-076-187/+208
| | | | This should make the code in common completely self-reliant.
* Make sure FILETIME and ULARGE_INTEGER sizes matchChris Robinson2014-05-071-0/+2
|
* Move the static_assert definition to its own headerChris Robinson2014-05-073-10/+20
|
* Use standard types for the RWLockChris Robinson2014-05-072-12/+12
|
* Check for C99 _Bool supportChris Robinson2014-05-063-0/+35
|
* Move atomic method definitions to a separate common sourceChris Robinson2014-05-063-8/+14
|
* Move threads.c to a separate source dirChris Robinson2014-05-062-11/+25
| | | | | This will eventually serve to build a static lib of common wrapper methods, such as threads, mutexes, atomics, etc.
* Move some headers to include/Chris Robinson2014-05-063-1/+1
| | | | Note, these are not installed. Only headers in include/AL/ are installed.
* Use gettimeofday if clock_gettime isn't availableChris Robinson2014-05-061-5/+11
|
* Test _Alignas with 16 instead of 4Chris Robinson2014-05-051-1/+1
|
* C11's alignas is also sufficient for SSE aligningChris Robinson2014-05-051-7/+9
|
* Add a cast to silence an MSVC warningChris Robinson2014-05-041-2/+3
|
* Trace skipped info sub-chunksChris Robinson2014-05-041-0/+2
|
* Use ALuint for the amount to skipChris Robinson2014-05-041-1/+1
|
* Don't use the next power of two when duplicating config valuesChris Robinson2014-05-041-1/+1
| | | | Speed isn't terribly important here, and reallocs should be extremely rare.
* Remove unnecessary ifdefsChris Robinson2014-05-042-4/+0
| | | | | mixer_sse.c and mixer_neon.c are only compiled when the relavent headers are found anyway.
* Always use the current gains when mixingChris Robinson2014-05-043-17/+22
| | | | | | The current gain gets explicitly set to the target when the stepping is finished to ensure the target is still used. This way, however, will allow for asynchronously 'canceling' a fade by setting the counter to 0.
* Better pack HRTF mixing propertiesChris Robinson2014-05-034-70/+65
|
* Clamp the current and target gain lower bound to epsilonChris Robinson2014-05-032-11/+11
| | | | | Should give a bit more wiggle room for the gain stepping to get lower than the silence threshold.
* Make sure all gain steps are applied with the SSE and Neon mixersChris Robinson2014-05-032-44/+22
|
* Revert e9aee578a797c694655538cd0a00ad6c0bf6d5dcChris Robinson2014-05-021-2/+2
| | | | | The vector iterator needs to be the start of the Data array even if the vector itself is NULL, or else insertion can have a negative insert position.
* Iniitialize some mmdevapi backend fields in the constructorChris Robinson2014-05-021-0/+23
|
* Use a backup in case pthread_mutex_timedlock isn't availableChris Robinson2014-05-013-1/+28
|