Chris Robinson
d4427c54ea
Change internal order to match WFX
2009-12-07 00:51:27 -08:00
Chris Robinson
92ade80557
Fix 6.1 channel order
2009-12-07 00:49:56 -08:00
Chris Robinson
58ecc7fad4
Check for potential NULL accesses with the IsBadWritePtr wrapper
2009-12-04 01:33:50 -08:00
Chris Robinson
c1eb444a39
Remove some assumptions of 16-bit internal storage
2009-12-02 05:55:33 -08:00
Chris Robinson
b5270e0bb3
Use a channel-map to specify the output device channel order
2009-12-02 04:03:51 -08:00
Chris Robinson
6cfc31777b
Add an option for real-time priority mixing
...
Default to disable for now, as a safety precaution
2009-12-01 23:15:09 -08:00
Chris Robinson
f63d8dbf38
Enable real-time priority for ALSA, OSS, and DirectSound mixing loops
2009-11-29 23:02:21 -08:00
Chris Robinson
d930fb8d3d
Call the Update effect method for null effects
2009-11-28 20:09:41 -08:00
Chris Robinson
3ec64eb0fd
Call to the right databuffer function
2009-11-28 19:37:29 -08:00
Chris Robinson
d81c9819b8
Remove unnecessary returns
2009-11-28 19:36:05 -08:00
Chris Robinson
98ce1d14c1
Update AL_EXTX_source_distance_model to require explicit enabling
...
The in-progress spec has been updated to reflect this
2009-11-27 20:05:21 -08:00
Chris Robinson
69f9ab88b9
Send multi-channel sources to auxiliary effect slots
...
They are downmixed to mono using a volume-preserving scalar, and passed
through a 1-pole low-pass filter (not chained)
2009-11-26 00:39:32 -08:00
Chris Robinson
658923175f
Update source parameters only when they need changing
2009-11-25 16:21:47 -08:00
Chris Robinson
06bbee2449
Add a function for 1-pole filtering
2009-11-22 21:20:27 -08:00
Chris Robinson
8d1da6a8ca
Move NextPowerOf2 to alMain.h
2009-11-19 09:50:15 -08:00
Chris Robinson
ff8e09495d
Move aluCart2LUTpos to alu.h
2009-11-19 09:24:35 -08:00
Chris Robinson
c1b161b44b
Handle NULL effect objects as AL_EFFECT_NULL effects
2009-11-05 20:50:56 -08:00
Chris Robinson
aa84b2e328
Handle setting AL_EFFECT_NULL effect types on a slot
2009-11-05 18:22:43 -08:00
Chris Robinson
dcd6a55529
Use a realtime clock for measuring time
2009-11-01 10:03:05 -08:00
Chris Robinson
a3fcd67a82
Remove some unneeded buffer fields, make padding a constant amount
2009-10-25 08:31:28 -07:00
Chris Robinson
fe3a43e2d4
Remove the format and frequency from the source, get them manually
2009-10-25 06:26:19 -07:00
Chris Robinson
b0a82aa420
Store the buffer format and frequency in the source when updated
2009-10-25 05:03:22 -07:00
Chris Robinson
1665595138
Remove unneeded bufferlistitem properties
2009-10-25 02:59:31 -07:00
Chris Robinson
bbccf76b45
Dereference left over buffers and slots when sources are released
2009-10-24 07:09:44 -07:00
Chris Robinson
921e7ac3e9
Store the buffer handle directly in the source and buffer queue list
2009-10-22 09:31:26 -07:00
Chris Robinson
8d807add41
Store the bufferID in the buffer struct
2009-10-22 08:53:59 -07:00
Chris Robinson
8501fce38b
Remove unused source fields
2009-10-21 15:40:09 -07:00
Chris Robinson
8dbac9c0bd
Store the calculated source parameters in the source struct
2009-10-21 14:25:54 -07:00
Chris Robinson
75b65ab2a2
Remove the Frequency field from the context
2009-10-20 13:47:55 -07:00
Chris Robinson
93361118b7
Store a device's contexts in a dynamic array
2009-10-20 11:54:04 -07:00
Chris Robinson
f14cf8289e
Add a method to update device-dependant effect parameters.
...
The effect state's update method will be called afterwards
2009-10-20 08:31:44 -07:00
Chris Robinson
6d1d61026d
Be context-agnostic in the effect Create functions
...
This allows the effect Update functions to handle the playback frequency being
changed. By default the effects assume a maximum frequency of 192khz, however,
it can go higher at the cost of the sample buffers being cleared and the risk
of an abort() if reallocation fails
2009-10-19 07:46:53 -07:00
Chris Robinson
c7c4cf221a
Make the dry buffer part of the device
2009-10-09 01:06:33 -07:00
Chris Robinson
d6e439244a
Rename SetALCError for consistency
2009-10-07 04:32:14 -07:00
Chris Robinson
af8e7ab984
Check the source start position in alSourcePlayv instead of the mixer
2009-09-24 12:24:10 -07:00
Chris Robinson
4cd41e3e08
Don't allow setting an invalid auxiliary send
2009-09-21 23:09:31 -07:00
Chris Robinson
cbcaa54173
Store the number of periods in the device instead of the buffer size
...
Also keep all the fields in sync
2009-09-16 22:58:54 -07:00
Chris Robinson
94e3fca702
Remove unnecessary parameters, and rename methods
2009-09-16 00:24:44 -07:00
Chris Robinson
49648fe22d
Make a GetConfigValueBool function and use it
2009-09-15 22:18:13 -07:00
Chris Robinson
9f037e8980
Pass the device to aluMixData
2009-09-15 19:30:27 -07:00
Chris Robinson
12f81bcbb9
Move the stereo-to-binaural filter to the device
2009-09-15 19:06:47 -07:00
Chris Robinson
f9d228c30a
Add missing context checks
2009-09-12 20:22:03 -07:00
Chris Robinson
59ed9338d8
Add support for the in-progress ALC_EXT_thread_local_context extension
2009-09-12 16:45:46 -07:00
Chris Robinson
bb121e68a6
Rebuild device lists when retrieving them
2009-08-27 06:09:33 -07:00
Chris Robinson
6bb14e45ce
Store a copy of the device name in the device
2009-08-27 02:53:09 -07:00
Chris Robinson
45dc804819
Store copies of the device names in the individual backends
2009-08-27 01:47:41 -07:00
Chris Robinson
81db01ebf1
Add a method to deinitialize backends
2009-08-26 23:45:00 -07:00
Chris Robinson
7976de05a5
Add base support for ALC_EXT_disconnect
...
Individual backends need to be updated to handle disconnection events
2009-08-26 19:15:17 -07:00
Chris Robinson
487f0dde75
Print source and auxiliary slot debug warnings from alcDestroyContext
2009-08-16 16:11:22 -07:00
Chris Robinson
c8f700930a
More modifications and fixes for context checks
2009-08-16 16:02:13 -07:00