Chris Robinson
a1c440bd09
Add an extension to support MSADPCM buffer formats
2014-03-04 22:44:30 -08:00
Chris Robinson
c442c93a93
Store the original frame size alignment in the buffer
2014-03-03 17:05:08 -08:00
Chris Robinson
57eef756c3
Fix retrieving source properties
2013-12-09 13:04:16 -08:00
Chris Robinson
d3c70e63b4
Use C99 inline in more places
2013-11-04 13:44:46 -08:00
Chris Robinson
7142e3828f
Rename alcGetLatency to ALCdevice_GetLatency
2013-11-02 12:01:58 -07:00
Chris Robinson
af8be56f17
Use an ALCbackend object to access playback backends
...
This is the start of a backend redesign. Currently, a wrapper object is used to
avoid having to redo all the backends at once, but they should slowly be
converted to derive from ALCbackend instead. The ALCbackend interface can
change as needed.
2013-10-27 14:24:55 -07:00
Chris Robinson
4f72da0005
Return only true or false from the source getters and setters
2013-10-07 11:10:49 -07:00
Chris Robinson
69d373db78
Remove al_try from alSource.c
2013-10-07 09:24:50 -07:00
Chris Robinson
9ee3d01f6e
Use a simpler U64 macro to make 64-bit constants
2013-10-06 04:21:03 -07:00
Chris Robinson
94884ed04b
Use a separate value for the maximum buffer channels
...
Unlike the device, input buffers are accessed based on channel numbers
instead of enums. This means the maximum number of channels they hold
depends on the number of channels any one format can have, rather than
the total number of recognized channels. Currently, this is 8 for 7.1.
2013-07-23 00:13:15 -07:00
Chris Robinson
a371de080b
Silence some clang warnings
2013-06-05 01:52:49 -07:00
Chris Robinson
43b406ad9b
Simplify al_try code
2013-03-24 13:55:41 -07: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
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
138a4c6d92
Add explicit casts for MSVC
2012-10-25 14:46:27 -07:00
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