aboutsummaryrefslogtreecommitdiffstats
path: root/OpenAL32/alState.c
Commit message (Collapse)AuthorAgeFilesLines
* Remove the MIDI codeChris Robinson2015-10-201-96/+0
| | | | | | | The extension's not going anywhere, and it can't do anything fluidsynth can't. The code maintenance and bloat is not worth keeping around, and ideally the AL API would be able to facilitate MIDI-like behavior anyway (envelopes, start-at- time, etc).
* Avoid the ALCdevice_Lock/Unlock wrapper in some placesChris Robinson2014-11-011-2/+3
|
* Make alcSuspendContext and alcProcessContext batch updatesChris Robinson2014-10-121-72/+2
| | | | | | | | | | This behavior better matches Creative's hardware drivers and Rapture3D's OpenAL driver. A compatibility environment variable is provided to restore the old no-op behavior for any app that behaves badly from this change (set __ALSOFT_SUSPEND_CONTEXT to "ignore"). If too many apps have a problem with this, the default behavior may need to be changed to ignore, with the env var providing an option to defer/batch instead.
* Protect alProcessUpdatesSOFT with a lockChris Robinson2014-09-031-2/+2
|
* Rename activesource to voiceChris Robinson2014-08-211-8/+8
|
* Use an array of objects for active sources instead of pointersChris Robinson2014-08-211-4/+4
|
* Use a NULL source for inactive activesourcesChris Robinson2014-08-211-6/+4
| | | | Also only access the activesource's source field once per update.
* Update COPYING to the latest ↵François Cami2014-08-181-2/+2
| | | | https://www.gnu.org/licenses/old-licenses/lgpl-2.0.txt to fix the FSF' address Fix the FSF' address in the source
* Explicitly pass the address of atomics and parameters that can be modifiedChris Robinson2014-07-261-9/+9
|
* Use generic atomics in more placesChris Robinson2014-07-221-1/+1
|
* Add macros for generic atomic functionalityChris Robinson2014-07-221-8/+8
|
* Use a RWLock to help protect the source's buffer queueChris Robinson2014-05-101-0/+4
| | | | | In some instances this allows to to remove the device/mixer lock, or reduce how long it's held.
* Add a generic vector interface and use it for the active effect slotsChris Robinson2014-03-211-2/+2
|
* Store some source mixing parameters in the active source structChris Robinson2014-03-191-2/+2
|
* Use a separate struct for tracking active sourcesChris Robinson2014-03-181-6/+10
|
* Add a method to get the current MIDI stateChris Robinson2014-01-121-0/+26
|
* Add a method to set and get soundfontsChris Robinson2013-12-271-4/+48
| | | | | The main purpose of this is to select soundfonts for playback, eventually, instead of the existing method that takes a filename.
* Move the base MidiSynth to a separate fileChris Robinson2013-12-171-1/+2
|
* Add methods to set and get the MIDI gainChris Robinson2013-11-301-0/+12
|
* Start a MIDI interface extensionChris Robinson2013-11-281-0/+84
|
* Rename VCALL and VCALL0 to V and V0Chris Robinson2013-11-021-1/+1
|
* Modify how VCALL is handledChris Robinson2013-10-281-1/+1
| | | | | | | | | | | Now instead of specifying the arguments as a third argument to the macro, like VCALL(object,function,(arg1, arg2)); they are specified separately after the macro, like VCALL(object,function)(arg1, arg2); Also, VCALL_NOARGS has been removed in favor of VCALL0, which behaves like above but expects an empty argument list (a separate macro is needed to work around preprocessor limitations).
* Remove al_try from alState.cChris Robinson2013-10-071-326/+283
|
* Fix up the naming convention of effect methodsChris Robinson2013-05-291-1/+1
|
* Use generic VCALL[_NOARGS] macros instead of type-specific wrappersChris Robinson2013-05-271-1/+1
|
* Simplify al_try codeChris Robinson2013-03-241-5/+1
|
* Use a struct to store the FPU modeChris Robinson2012-09-161-3/+3
|
* Remove an unused headerChris Robinson2012-09-141-1/+1
|
* Change alState.c to the new error handlingChris Robinson2012-04-241-221/+233
|
* Remove hungarian notation from the device and context structsChris Robinson2012-04-191-7/+7
|
* Use a double to store the source offset and don't use milliseconds for secondsChris Robinson2012-04-161-1/+1
|
* Pass a device to the effect update functionsChris Robinson2012-03-131-1/+1
|
* Use inline functions to set/restore the FPU mode for mixer updatesChris Robinson2011-09-291-15/+3
|
* Set toward-zero rounding when updating in alDeferUpdatesSOFTChris Robinson2011-09-281-0/+16
|
* Pre-apply the deferred source offset only when it's playing or pausedChris Robinson2011-09-121-1/+2
|
* Rename the ALEffect_ macros to ALeffectState_ to reflect what they work onChris Robinson2011-09-121-1/+1
|
* Avoid locking the context while getting and setting global stateChris Robinson2011-08-311-41/+41
|
* Use the active effect slot list for pending updates in alDeferUpdatesSOFTChris Robinson2011-08-301-8/+8
|
* Rename GetReffedContext to GetContextRefChris Robinson2011-08-301-2/+2
|
* Use a generic int type to handle enum swapsChris Robinson2011-08-291-5/+5
|
* Make specific functions to lock/unlock UIntMap accessChris Robinson2011-08-291-4/+4
|
* Manually lock the map while iterating through its contentsChris Robinson2011-08-291-0/+4
|
* Do a proper exchange when setting a new stateChris Robinson2011-08-291-2/+1
|
* Lock the context as needed for the defer and process callsChris Robinson2011-08-291-9/+10
|
* Use atomic exchanges when checking for updates to objects' internal parametersChris Robinson2011-08-291-8/+3
|
* Prevent source and effect slot updates from occuring while updates are deferredChris Robinson2011-08-221-1/+43
|
* Defer source offset changes requested by the appChris Robinson2011-08-211-4/+7
|
* Defer source state changes from alSourcePlay/Pause/Stop/Rewind callsChris Robinson2011-08-201-1/+17
|
* Make sure some state values are finiteChris Robinson2011-07-211-3/+3
|
* Add a couple new functions to handle deferred updatesChris Robinson2011-07-161-0/+45
| | | | | | Currently no-ops, they will be used in place of alcSuspendContext and alcProcessContext for batching updates since the mentioned functions have no coherent functionality between system implementations.