Chris Robinson
504cdadd60
Use an enum for the device type
2012-02-23 15:25:30 -08:00
Chris Robinson
e2ccc6f98e
Always use "OpenAL Soft" for the short device enumeration list
2012-02-20 20:45:22 -08:00
Chris Robinson
4a65747a4b
Add a COUNTOF macro to get the number of entries in a static array
2012-02-19 12:07:40 -08:00
Chris Robinson
60785eab8e
Move the endian test macro to alMain.h
2012-02-15 21:47:35 -08:00
Chris Robinson
6b272ff585
Add a device parameter to alcLoopbackOpenDeviceSOFT
2012-02-15 20:52:49 -08:00
Chris Robinson
fecd679f33
Add a device request flag for the sample type
2012-02-15 16:26:32 -08:00
Chris Robinson
2ab0e3521c
Remove parameter names from typedefs
2012-02-15 15:23:23 -08:00
Chris Robinson
670c88a64c
Define a minimum output sample rate and warn if the config option goes below it
2012-02-15 12:26:19 -08:00
Chris Robinson
1140b3ae83
Support signed and unsigned 32-bit int output
2012-02-14 11:44:57 -08:00
Chris Robinson
ef68aa39f8
Rename non_virtual_channels to direct_channels
2012-02-09 23:35:17 -08:00
Chris Robinson
47161150d7
Check for a 32-bit x86 processor before using MSVC's asm intrinsics
2012-02-03 19:34:06 -08:00
Chris Robinson
8e6832407a
Only use fast float-to-int GCC assembly for x86 and x86_64 targets
2012-02-03 17:40:21 -08:00
Chris Robinson
51e81f4867
Add a global option to apply a reverb effect on source send 0
...
A special slot on the device is created and processed, so it can be shared
across all contexts on the device. Sources that don't have a slot set on send 0
will use this special slot instead.
2012-01-19 19:30:03 -08:00
Chris Robinson
e772fb7d0e
Finalize AL_SOFT_buffer_samples
2012-01-10 01:14:02 -08:00
Chris Robinson
29ba8f9f1a
Remove the unnecessary AL_MULAW_SOFT, AL_ALAW_SOFT, and AL_IMA4_SOFT defines
2012-01-10 00:59:10 -08:00
Chris Robinson
61af4d715c
Append _SOFT to the AL_SOFT_buffer_samples enums
2012-01-10 00:41:05 -08:00
Chris Robinson
535091e36c
Make LockDevice, LockContext, etc, inline
2012-01-09 23:37:03 -08:00
Chris Robinson
886f874ff3
Use a proper typedef for handling atomic pointer swaps
2012-01-01 15:00:03 -08:00
Chris Robinson
d270188578
Append _SOFT to the ALC loopback format enums
2011-11-01 16:00:47 -07:00
Chris Robinson
81133769de
Return the key's value from the map when it's removed
2011-10-06 06:39:13 -07:00
Chris Robinson
a7d3779dfa
Check for the HRTF object instead of a flag
2011-10-06 01:16:07 -07:00
Chris Robinson
7f5074949e
Don't use inline asm with MSVC on 64-bit
2011-10-02 21:44:08 -07:00
Chris Robinson
a05006b06a
Rename some parameters
2011-10-02 07:31:26 -07:00
Chris Robinson
8b2e1fdd9a
Add buffer properties to get the internal format, and the length in bytes, samples, and seconds
...
The provided buffer lengths correspond to the source offsets, in that the byte
length specifies the end of the byte offset (ie, when the buffer is used for a
static source, the offset will range between 0 (inclusive) and the byte length
(exclusive)). Although an application could use the AL_SIZE, AL_CHANNELS,
AL_BITS, and AL_FREQUENCY properties to find the length in samples and seconds,
the byte length cannot be reliably calculated this way.
2011-10-01 06:19:55 -07:00
Chris Robinson
92f95e4d94
Add support for AL_EXT_ALAW
2011-10-01 04:55:03 -07:00
Chris Robinson
a7bbf7a741
Rename LOWPASSFREQCUTOFF to LOWPASSFREQREF
2011-09-30 23:07:15 -07:00
Chris Robinson
d3a6de3f86
Set the FPU into single-precision mode for mixer updates
2011-09-29 05:10:15 -07:00
Chris Robinson
b6b3ca6e6f
Use inline assembly for fast float-to-int conversions
2011-09-29 03:51:46 -07:00
Chris Robinson
e9da6950ee
Centralize the Lookup and Remove macros
2011-09-24 18:34:45 -07:00
Chris Robinson
e84e38cc19
Make AIRABSORBGAINHF a float type
2011-09-23 22:37:20 -07:00
Chris Robinson
9266a37276
Move ConeScale and ZScale to ALu.c and alu.h, and make them floats
2011-09-23 22:33:37 -07:00
Chris Robinson
ff8ee68852
Add atomic functions for GCC inline asm
2011-09-23 12:42:13 -07:00
Chris Robinson
390d94ec97
Define _WIN32_WINNT on the command line with _WIN32
2011-09-20 14:59:01 -07:00
Chris Robinson
e01092a0da
Move Sleep implementation into helper.c and emulate sched_yield for Windows
2011-09-20 14:43:53 -07:00
Chris Robinson
e43470da7a
Make a separate log level to trace reference counts, to avoid log spam for traces
2011-09-20 12:24:23 -07:00
Chris Robinson
edb386eb1e
Add a ConfigValueStr function, to return the string through a parameter
2011-09-19 11:29:18 -07:00
Chris Robinson
98b2fa6cb5
Use the ALC types for the device format enum values
2011-09-18 19:43:59 -07:00
Chris Robinson
7e06a10f73
Return int and float config values through a parameter
...
This allows the getter functions to return whether or not the option exists
without a separate call and check.
2011-09-18 16:16:55 -07:00
Chris Robinson
0e5c221a3c
Dynamically allocate space for HRTF tables
2011-09-18 10:09:32 -07:00
Chris Robinson
25f7c27043
Store the HRTF tables used in the device
2011-09-18 09:52:40 -07:00
Chris Robinson
fd22226242
Make alcSetError static
2011-09-14 11:58:51 -07:00
Chris Robinson
97024151e4
Return an error from the CaptureSamples method instead of setting it
2011-09-14 02:01:35 -07:00
Chris Robinson
145bc6da6b
Be a bit more robust while handling the global device list
2011-09-12 03:57:53 -07:00
Chris Robinson
b4cbb3380a
Fix non-GCC CompExchangePtr implementations
2011-09-11 09:39:29 -07:00
Chris Robinson
8f456f68ff
Remove GetLockedContext
2011-09-11 09:28:30 -07:00
Chris Robinson
419294cddd
Avoid locking the device when adding and removing contexts
...
Also, don't keep track of the number of contexts per device
2011-09-10 07:18:29 -07:00
Chris Robinson
b9448a476e
Avoid holding the list lock when not needed
2011-09-10 05:19:08 -07:00
Chris Robinson
e8c9da0124
Add some reference counting to the device
2011-09-10 02:43:07 -07:00
Chris Robinson
18cf6e3210
Fix a parameter type
2011-09-10 02:13:52 -07:00
Chris Robinson
9080d5fda0
Do an atomic compare-exchange on the global context when destroying a context
2011-09-02 02:57:21 -07:00