Chris Robinson
3fd0f23e48
Add Chorus and Flanger effects
...
Code provided by Mike Gorchak
2013-03-13 23:31:12 -07:00
Chris Robinson
991aba286f
Move the effect-specific get/set methods to where the effect is implemented
2013-03-13 21:53:42 -07:00
Chris Robinson
c2adea1999
Make the context's LastError volatile
2012-12-24 05:32:15 -08:00
Chris Robinson
eb5073a8a7
Properly convert uint values when getting them as int64
2012-12-07 18:43:13 -08:00
Chris Robinson
beb84bdc21
SetSourceiv should never get AL_SAMPLE_OFFSET_LATENCY_SOFT
2012-12-06 09:03:48 -08:00
Chris Robinson
a20f1fa779
Use a helper to count the number of float/double values for a property
2012-12-05 20:51:25 -08:00
Chris Robinson
7445ffe1a6
Use a helper to count the number of int(64) values for a property
2012-12-05 19:58:01 -08:00
Chris Robinson
c225c59b0a
Remove 'v' from the source enum names
2012-12-05 18:27:05 -08:00
Chris Robinson
37a6705556
Add a comment to note the extension for sfvDistanceModel
2012-12-05 13:48:33 -08:00
Chris Robinson
ed5738bfa4
Use an enum to handle int source properties
2012-12-05 09:55:05 -08:00
Chris Robinson
5e14a83030
Use an enum to handle float source properties
2012-12-05 09:22:38 -08:00
Chris Robinson
3b9b176f14
Print an error if trying to handle a missed source property
2012-12-05 08:29:38 -08:00
Chris Robinson
838f0fd71b
Fix retrieving source gain
2012-12-05 08:27:02 -08:00
Chris Robinson
1fb9311d82
Lock the device before calling aluHandleDisconnect
...
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.
2012-12-02 11:30:23 -08:00
Chris Robinson
43b9027611
Return the integer from fastf2i with MSVC
2012-11-13 15:12:46 -08:00
Chris Robinson
40ea4f4b46
Use int instead of long for the IMA4 tables
2012-11-10 03:40:36 -08:00
Chris Robinson
4f624cb734
Load Int and UInt samples as float with alBufferData
...
This shouldn't really ever happen, as there's no 32-bit (u)int formats
alBufferData can take.
2012-11-10 03:36:37 -08:00
Chris Robinson
e2368eb960
Use an array to specify the offset for each channel of the device buffer
...
This effectively inverts the DevChannels array
2012-11-04 04:41:11 -08:00
Chris Robinson
fc7adccd6f
Fix retrieving the source's write offset
2012-11-01 23:41:18 -07:00
Chris Robinson
97bf718d0e
Pass the offset latency properties to the set handler
2012-11-01 18:35:20 -07:00
Chris Robinson
eb6360e1f8
Set the proper error when trying to set AL_SAMPLE_OFFSET_LATENCY_SOFT or AL_SEC_OFFSET_LATENCY_SOFT
2012-11-01 00:16:44 -07:00
Chris Robinson
4a3d36a176
Finalize AL_SOFT_source_latency
2012-10-31 05:09:42 -07:00
Chris Robinson
e2e502970c
Move some math functions to where they're used
2012-10-25 17:24:22 -07:00
Chris Robinson
404d601666
Add a couple missing RESTRICTs
2012-10-25 17:02:21 -07:00
Chris Robinson
fb21a73b4e
Add the RESTRICT keyword to a function pointer definition's parameters
2012-10-25 14:52:09 -07:00
Chris Robinson
138a4c6d92
Add explicit casts for MSVC
2012-10-25 14:46:27 -07:00
Chris Robinson
c802bfccef
Remove the float math wrapper functions
2012-10-25 14:16:35 -07:00
Chris Robinson
fae4959db3
Add retrieval of missing source properties
2012-10-21 11:36:27 -07:00
Chris Robinson
4f5aafe59f
Put the HRTF DirectParams into an anonymous struct
2012-10-15 01:37:37 -07:00
Chris Robinson
a14383d6cc
Constify the direct and send parameters given to the mixer
2012-10-15 01:31:58 -07:00
Chris Robinson
f0d27e5f91
Remove the unused Device parameter
2012-10-14 11:29:28 -07:00
Chris Robinson
a852669dce
Store the output buffers in the DirectParams struct
2012-10-14 11:21:52 -07:00
Chris Robinson
3240894cd5
Remove the now-unused Source parameter from the DryMix methods
2012-10-14 11:04:36 -07:00
Chris Robinson
0b679167c9
Store some more HRTF info in the DirectParams struct
2012-10-14 10:57:11 -07:00
Chris Robinson
38e6bfb702
Use a helper method to convert i64 values to the proper types
2012-10-14 01:41:49 -07:00
Chris Robinson
20ede6de59
Check i64 property ranges before passing them to the int handlers
...
Note that some properties (e.g. AL_BUFFER, AL_DIRECT_FILTER) actually take
unsigned int values, and so are checked against the unsigned range even though
they eventually get casted to an int. The int handler casts them back as
needed.
2012-10-14 00:55:46 -07:00
Chris Robinson
e60281c927
Don't use a loop to determine the next power of 2
2012-10-13 08:58:48 -07:00
Chris Robinson
1212523470
Implement the double and int64 source setters
...
Note that currently the int64 setters do not range check before being passed to
the int setters, erroneously chopping off the upper bits.
2012-10-13 00:56:39 -07:00
Chris Robinson
815b03855b
Apply the listener matrix to the listener velocity once
2012-10-12 07:56:37 -07:00
Chris Robinson
25b8a95987
Check the distance against epsilon to determine if it matches
2012-10-12 07:10:51 -07:00
Chris Robinson
39bc2ba65c
Build the listener matrix separately
2012-10-09 06:19:36 -07:00
Chris Robinson
d598f82722
Don't include alListener.h from alMain.h
2012-10-09 04:48:12 -07:00
Chris Robinson
c22408cb2a
Store a pointer to the listener in the context
2012-10-09 04:44:27 -07:00
Chris Robinson
8c3419ed48
Define RESTRICT in config.h instead of alMain.h
2012-10-09 01:46:02 -07:00
Chris Robinson
f3349221c6
Add missing include
2012-10-07 08:18:53 -07:00
Chris Robinson
708f3ccc3d
Add trace, warn, and error markers to logged output
2012-10-07 04:31:31 -07:00
Chris Robinson
9501f1cb9e
Define WIN32_LEAN_AND_MEAN when including windows.h in alMain.h
2012-10-06 21:36:15 -07:00
Chris Robinson
0d26b0dcc2
Put temporary storage in the device instead of on the stack
2012-10-05 06:42:26 -07:00
Chris Robinson
825c5b5282
Use lrintf to fast convert floats to ints when possible
2012-09-28 04:20:55 -07:00
Chris Robinson
25ca179389
Decrease the default BUFFERSIZE to 2048
2012-09-28 03:30:57 -07:00