Chris Robinson
fae4959db3
Add retrieval of missing source properties
2012-10-21 11:36:27 -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
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
965306b296
Add missing source property retrievals
2012-09-14 09:02:36 -07:00
Chris Robinson
78dac1bf4a
Set the error if setting a new integer source offset fails
2012-09-01 19:31:43 -07:00
Chris Robinson
8a128e5d25
Set an error closer to where it occurs for setting source properties
2012-08-29 00:25:01 -07:00
Chris Robinson
34cbacf424
Add helpers to set source properties
2012-08-28 22:16:55 -07:00
Chris Robinson
238caa1492
Constify some parameters
2012-08-21 16:01:11 -07:00
Chris Robinson
e5ebe345ad
Add the option to retrieve the source offset and latency in seconds
2012-08-20 15:57:27 -07:00
Chris Robinson
965608356f
Fix getting the RW offsets with alGetSourcei64vSOFT
2012-08-20 15:33:28 -07:00
Chris Robinson
bc1ce7b3ac
Add methods to get source properties as doubles
2012-08-20 15:26:35 -07:00
Chris Robinson
6a3619c40f
Fix a parameter name
2012-08-20 14:50:43 -07:00
Chris Robinson
4937a48bd9
Use helper functions to read source properties
...
And make sure the 64-bit int getters to get 32-bit int values
2012-08-20 14:16:58 -07:00
Chris Robinson
987a81c4de
Use the correct 64-bit int type for the extension functions
2012-08-20 12:22:00 -07:00
Chris Robinson
f5e0500df4
Add a macro to help make a 64-bit value
2012-08-19 22:31:55 -07:00
Chris Robinson
3ae5fcbd7e
Add the start of AL_SOFT_source_latency
...
This extension will provide a way for apps to get accurate latency and playback
position information
2012-08-18 11:06:39 -07:00
Chris Robinson
bbcf4e8c1d
Make sure sources are 16-byte aligned
...
They contain fields that require 16-byte alignment for SSE (and Neon?)
acceleration.
2012-08-15 05:54:13 -07:00
Chris Robinson
583dc8dbca
Don't use all caps for enum value names
2012-06-28 18:49:49 -07:00
Chris Robinson
549d542a31
Reorganize some ALsource fields
2012-04-27 01:36:13 -07:00
Chris Robinson
3e49e79140
Couple small error handling fixups
2012-04-24 03:52:21 -07:00
Chris Robinson
5ce850570f
Add try/catch-like macros to handle errors, and convert alSource.c to use them
2012-04-23 19:46:05 -07:00
Chris Robinson
29f77003c0
Some alSource.c cleanups
2012-04-21 05:56:03 -07:00
Chris Robinson
c9e64596a4
Use a consistent name for the self-id field
2012-04-19 22:28:01 -07:00
Chris Robinson
08bd5e8b37
Fix comment and rename the buffer's self-id
2012-04-19 22:14:02 -07:00
Chris Robinson
125b743e5c
Remove hungarian notation from sources
2012-04-19 21:46:29 -07:00
Chris Robinson
d7ba49ea62
Clear the position fraction when setting a new source offset
2012-04-16 22:13:39 -07:00
Chris Robinson
e47557630e
Use a double to store the source offset and don't use milliseconds for seconds
2012-04-16 22:11:03 -07:00
Chris Robinson
cc2cb1142b
Remove unused variables
2012-02-17 12:32:43 -08:00
Chris Robinson
84ba0a94c0
Make sure the source write position is at least 15ms ahead of the read
2012-02-16 00:11:50 -08:00
Chris Robinson
e394d14cda
Use more proper enum names for the resampler
2012-02-12 08:45:19 -08:00
Chris Robinson
9f073b6f1b
Use a proper enum value for setting the default distance model
2012-02-12 08:18:20 -08:00
Chris Robinson
ef68aa39f8
Rename non_virtual_channels to direct_channels
2012-02-09 23:35:17 -08:00
Chris Robinson
886f874ff3
Use a proper typedef for handling atomic pointer swaps
2012-01-01 15:00:03 -08:00
Chris Robinson
628356a294
Set AL_STOPPED after setting AL_PLAYING when a source has nothing to play
2011-10-15 10:33:30 -07:00
Chris Robinson
11caba9807
Use sample frames when handling the buffer length
2011-10-04 02:08:45 -07:00
Chris Robinson
e9da6950ee
Centralize the Lookup and Remove macros
2011-09-24 18:34:45 -07:00
Chris Robinson
43350f9066
Silence some MSVC precision warnings
2011-09-22 00:35:08 -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
8f456f68ff
Remove GetLockedContext
2011-09-11 09:28:30 -07:00
Chris Robinson
1fdc25df75
Use a RWLock to protect access to a buffer instead of the device lock
2011-09-11 03:57:40 -07:00
Chris Robinson
89f438df71
Small fixes to setting the source's direct filter and auxiliary send
2011-09-11 00:58:33 -07:00
Chris Robinson
97027a7ad9
Avoid holding the context lock while setting source parameters
...
Note that some parameters still need the lock when getting or setting them.
2011-09-11 00:47:31 -07:00
Chris Robinson
3a8ef2f0d6
Initialize source parameters before adding the source to the map
2011-09-10 21:21:07 -07:00
Chris Robinson
4c8e6dead1
Don't defer stopped and initial source state changes
...
Typically when these are set, an app will be releasing the buffer from the
source, possibly to immediately reuse it. There would be an extra burden placed
on the app if it was required to process updates before it could fully release
the buffer from the source.
2011-09-10 21:02:50 -07:00
Chris Robinson
b28f48c1bd
Store the filter gains directly in the source instead of duplicate filter objects
2011-08-31 02:18:16 -07:00
Chris Robinson
9fb91f70aa
Rename GetReffedContext to GetContextRef
2011-08-30 23:28:38 -07:00
Chris Robinson
0a1321aaae
Add a limit to the UIntMap size and use it for sources and effect slots
2011-08-30 20:33:47 -07:00
Chris Robinson
7d577832cd
Add functions to retrieve the source from the source map while removing it
2011-08-30 17:32:49 -07:00
Chris Robinson
ee60248d19
Lock the context while deleting sources only as needed
2011-08-30 00:33:01 -07:00