aboutsummaryrefslogtreecommitdiffstats
path: root/Alc/backends/dsound.c
Commit message (Collapse)AuthorAgeFilesLines
* Add a macro for GCC to ensure stack alignmentChris Robinson2013-11-251-1/+1
|
* Remove the Lock and Unlock methods from BackendFuncsChris Robinson2013-11-041-2/+0
| | | | | All backends that still use the old interface use the default locking methods, which is also used by the ALCbackend base.
* Move the device mutex to the backendChris Robinson2013-10-281-0/+1
|
* Rework threading functionsChris Robinson2013-10-271-3/+3
|
* Set a name for the mixer and recording threadsChris Robinson2013-10-271-0/+1
|
* Use the UNUSED macro in the backendsChris Robinson2013-10-071-8/+2
|
* Recognize DSSPEAKER_5POINT1_SURROUND (and 7POINT1) with DSoundChris Robinson2013-05-221-4/+11
|
* Lock the device before calling aluHandleDisconnectChris Robinson2012-12-021-0/+6
| | | | | | PulseAudio causes an assert if being relocked inside a callback on the worker thread, where aluHandleDisconnect is called. We can assume it's already locked there, so just make sure the device is locked before being calling it.
* Rename some struct fields for DirectSoundChris Robinson2012-11-041-48/+48
|
* Avoid recreating the DSound primary bufferChris Robinson2012-11-041-1/+1
|
* Don't include alu.h in alMain.hChris Robinson2012-09-141-2/+1
|
* Use a default method to provide a dummy latencyChris Robinson2012-08-191-8/+1
|
* Move the device lock into the backend function tableChris Robinson2012-08-181-0/+2
| | | | | For backend-specific implementations: this should hold the audio mixer loop for playback devices, and provide recursive mutex behavior.
* Add a device method to retrieve the active latencyChris Robinson2012-08-171-1/+10
| | | | | This is effectively the time until the next update will be heard by the user, or the closest approximation thereof, in nanoseconds.
* Only try float32 with DSound when specifically requestedChris Robinson2012-06-171-1/+4
| | | | | Some hardware drivers seem to have a bug where a buffer descriptor with a 32-bit float sample type ends up creating a non-float32 buffer.
* Rename AllDevice -> AllDevicesChris Robinson2012-05-091-1/+1
|
* Remove hungarian notation from dsound and mmdevapiChris Robinson2012-04-191-140/+139
|
* Remove some more hungarian notationChris Robinson2012-04-191-16/+16
|
* Remove hungarian notation from the device and context structsChris Robinson2012-04-191-2/+2
|
* Use a separate backend callback to start playback of the deviceChris Robinson2012-03-051-17/+36
| | | | | | | | | | | | This allows us to properly update the ALCdevice and its resources with the new parameters before starting playback, instead of expecting the mixer to block and wait after it has begun. This also lets us avoid holding the device lock while resetting and starting the device, which helps prevent lock inversion on some backends (ie, one thread locking A then B, and another thread locking B then A), ultimately allowing certain backends to asynchronously update the ALCdevice without risk of lockup. Capture still has issues here, however.
* Print enumerated dsound devicesChris Robinson2012-02-261-0/+18
|
* Watch for unsupported sample types for dsound captureChris Robinson2012-02-261-0/+15
|
* Avoid default names for winmm and dsoundChris Robinson2012-02-201-11/+13
|
* Always use "OpenAL Soft" for the short device enumeration listChris Robinson2012-02-201-4/+0
|
* Support signed and unsigned 32-bit int outputChris Robinson2012-02-141-0/+4
|
* Implement capture for the DirectSound backendChris Robinson2012-01-311-61/+410
| | | | Based on a patch by Jeffrey Knockel <jeff250.at.gmail.com>
* Retry opening the DSound device with 16-bit short if 32-bit float output failsChris Robinson2012-01-171-0/+11
|
* Define _WIN32_WINNT on the command line with _WIN32Chris Robinson2011-09-201-1/+0
|
* Return an ALC error enum from the OpenPlayback backend methodChris Robinson2011-08-241-8/+5
|
* Don't expose "DirectSound Default" in the ALL_DEVICES listChris Robinson2011-08-201-14/+1
| | | | | This is under the assumption that one of the devices in ALL_DEVICES corresponds to the default. This is not true for all backends (eg, ALSA).
* Move backend sources to a separate sub-directoryChris Robinson2011-08-201-0/+627