Chris Robinson
365a62d63a
Improve source write offset calculations
2010-02-07 20:11:24 -08:00
Chris Robinson
f22b02a762
al_print doesn't need to be inline
2010-01-12 09:05:57 -08:00
Chris Robinson
0c2efa1253
Use GCC's format attribute for al_printf
2010-01-12 08:48:25 -08:00
Chris Robinson
5921e18be2
Fix some typos with the solaris backend
2010-01-12 08:28:07 -08:00
Chris Robinson
35ba7d70dc
Consolidate some source offset handling code
2010-01-12 02:43:37 -08:00
Chris Robinson
026b4b8f4c
Better handle large second offsets
2010-01-12 02:26:38 -08:00
Chris Robinson
c924a50bed
Don't use a flag to set an error when applying the source offset
2010-01-12 02:22:38 -08:00
Chris Robinson
574792d2e1
Fix Windows compilation
2010-01-11 23:47:03 -08:00
Chris Robinson
3d7f925d52
Add helpful values to the resampler enum
2010-01-11 07:02:29 -08:00
Chris Robinson
93b584ff84
Add a cosine resampler
2010-01-11 06:19:54 -08:00
Chris Robinson
705849ca73
Add an option for point resampling
2010-01-11 05:37:20 -08:00
Chris Robinson
7ee81eac0f
Store ALC errors with the device when possible
2009-12-28 23:19:13 -08:00
Chris Robinson
69ab93a824
Add a function to check if a config option is set to a non-empty value
2009-12-28 13:08:15 -08:00
Chris Robinson
6e9ce47a4b
GetConfigValueBool should take an int, not a float
2009-12-26 07:42:57 -08:00
Chris Robinson
88de4e15b3
Mark the source for updating when setting a buffer on it
...
Changing the buffer can change the playback format, which can require different
source parameter calculations. Queueing a buffer on a source that has no
buffers (or only buffers without a format, eg. buffer 0) has the same effect
2009-12-25 05:09:29 -08:00
Chris Robinson
7f0c6629b9
Use a 64-bit value to scale potentially-large numbers
2009-12-24 15:41:45 -08:00
Chris Robinson
2b7953c472
Track whether a context is suspended or not
2009-12-09 12:14:53 -08:00
Chris Robinson
bd696a6b37
Fix IMA ADPCM offset calculation
2009-12-09 09:50:09 -08:00
Chris Robinson
656a406377
Use an inline function to calculate the low-pass filter coefficient
2009-12-09 07:21:59 -08:00
Chris Robinson
84d2d623b6
Add a head-dampening option
...
This simulates occlusion of the player's head for sounds coming from behind,
when outputing to mono or stereo
2009-12-08 14:18:07 -08:00
Chris Robinson
4697e946d3
Internally store 32-bit float buffer data, and mix accordingly
2009-12-07 10:35:30 -08:00
Chris Robinson
9286e3984c
Move default channel order setting out of the header
2009-12-07 04:19:33 -08:00
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