Chris Robinson
b77a556d7b
Clear the buffer from X-RAM before updating its size
2022-08-05 12:11:02 -07:00
Chris Robinson
65e4c20c27
Move EAX files to their own sub-directory
2022-05-16 02:08:18 -07:00
Chris Robinson
a731e042cc
Remove the unused flags parameter from alBufferCallbackSOFT
2022-04-01 19:15:16 -07:00
Chris Robinson
abfb584f14
Simplify al::byte
...
It's just an alias for unsigned char now, and no longer strongly-typed like
std::byte.
2022-03-30 15:52:15 -07:00
Chris Robinson
8ca3186bac
Ensure the EAX functions are suitably aligned on 32-bit
2022-03-16 20:32:09 -07:00
Chris Robinson
1369a081a0
Fix X-RAM tracking
2022-03-06 01:19:41 -08:00
Chris Robinson
cadf0d1de5
Make some local constexpr variables static
2022-02-23 01:29:28 -08:00
Chris Robinson
816bd8ab30
Move ALSOFT_EAX definition to config.h
...
And disable it by default for non-Windows targets
2022-01-30 05:42:44 -08:00
Boris I. Bendovsky
19ed994dc3
Add EAX extensions (EAX 2.0-5.0, X-RAM) ( #632 )
...
* Add EAX extensions (EAX 2.0-5.0, X-RAM)
* Comment out C++17 leftovers
* Remove everything related to patching
* Update alsoftrc.sample
* Rewrite integration
* Fix GCC compilation under Linux
* Always reset EAX effect properties when loading it into FX slot
2022-01-30 04:47:32 -08:00
Chris Robinson
46fecf4f97
Properly compare the buffer channels for preservation
2022-01-17 07:55:39 -08:00
Chris Robinson
01dd34f305
Add an internal Super Stereo format
...
It's not available as an AL buffer format (yet) since I'm not sure how to
expose it. Internally it seems fine as a separate channel configuration, but
because OpenAL combines the channel configuration and sample type, a flag may
work better there.
2021-12-11 17:50:24 -08:00
Chris Robinson
bbff1efa2a
Update some in-progress extension types
2021-11-10 01:21:49 -08:00
Chris Robinson
e3b8f8fe27
Make a construct_at method amd use it
2021-10-08 11:05:36 -07:00
Chris Robinson
f92cc479d8
Silence some static analysis warnings
2021-10-03 08:02:57 -07:00
Chris Robinson
7c4e6c8424
Combine a couple similar switch blocks
2021-07-17 10:47:20 -07:00
Chris Robinson
105abc6513
Fix returned value for AL_AMBISONIC_SCALING_SOFT buffer queries
2021-07-13 06:33:54 -07:00
Chris Robinson
d998c03a27
Add a UHJ-specific coefficient scaling array
2021-07-13 06:31:13 -07:00
Chris Robinson
2f0e37bc24
Add back some more missing includes
2021-04-27 23:03:24 -07:00
Chris Robinson
e3c0b60cc6
Rename alcontext.h and move some functions to context.cpp
2021-04-27 19:04:45 -07:00
Chris Robinson
06dcfc3fcf
Rename alcmain.h to device.h
2021-04-27 16:40:22 -07:00
Chris Robinson
061148072f
Update include headers
...
Don't add alc/ to the include paths.
2021-04-27 16:04:54 -07:00
Chris Robinson
ff380298e4
Move BufferStorage and Voice to core
2021-04-27 08:26:42 -07:00
Chris Robinson
b54bb388a3
Create a base the ALCdevice and ALCcontext structs
...
A base that contains the API-agnostic data, with ALCdevice and ALCcontext being
for AL-specific data.
2021-04-24 08:28:13 -07:00
Chris Robinson
f33edc3b30
Add support for 4-channel UHJ
...
Also add the SOFT moniker to the new macros
2021-03-31 21:02:30 -07:00
Chris Robinson
b5e36007f1
Handle 3-channel UHJ audio buffers
2021-03-31 10:03:31 -07:00
Chris Robinson
35a0f2665f
Decode UHJ buffers to B-Format for mixing
...
This should also have an adjustment for the shelf filter. Although it's not
clear what the appropriate adjustments should be.
2021-03-31 09:37:30 -07:00
Chris Robinson
8793055e66
Start an interface for providing UHJ audio
...
Currently only 2-channel UHJ, which gets treated as stereo.
2021-03-31 05:37:56 -07:00
Chris Robinson
da59ad5105
Make PopCount and CountTrailingZeros more standard-like
2021-01-22 04:58:42 -08:00
Chris Robinson
eedc42890f
Move alexcpt to core
2020-12-24 22:49:55 -08:00
Chris Robinson
8750810f5c
Change a couple macros into constexpr variables
2020-11-28 03:38:20 -08:00
Chris Robinson
21174047df
Make ALbuffer inherit from BufferStorage
2020-11-21 00:54:25 -08:00
Chris Robinson
2cb2ffef72
Disassociate internal buffer enums from AL enum values
2020-11-20 04:27:10 -08:00
Chris Robinson
537510afc8
Put the loop start/end in BufferStorage
2020-11-19 03:23:46 -08:00
Chris Robinson
303ca3af72
Use inline functions for popcnt and ctz instead of macros
2020-10-13 01:21:44 -07:00
Chris Robinson
1f486f820e
Use a separate structure for buffer storage
2020-08-28 00:09:46 -07:00
Chris Robinson
9d61484e4b
Move storable buffer format info to a separate source
2020-08-24 17:59:07 -07:00
Chris Robinson
cf64dc1103
Fix up some more uses of [AL[C]]void
2020-04-28 14:48:12 -07:00
Chris Robinson
b828cf81a9
Shorten the name of format types
2020-04-28 07:56:36 -07:00
Chris Robinson
aff410fa6d
Avoid using some more AL types
2020-04-23 04:57:04 -07:00
Chris Robinson
d67cba99bd
Clean up some more unnecessary uses of AL types
2020-04-08 10:15:43 -07:00
Chris Robinson
a0b7638d63
Add an extension to change a buffer's unpack ambisonic order
2020-04-04 03:10:01 -07:00
Chris Robinson
fc906c97f5
Track a buffer's ambisonic order
2020-04-04 01:52:29 -07:00
Chris Robinson
902f5a0dd2
Add an ambisonic order parameter to the buffer channel count
2020-04-03 21:43:57 -07:00
Chris Robinson
fb07612545
Get rid of MAX_INPUT_CHANNELS
2020-03-28 18:15:05 -07:00
Chris Robinson
3122c3b4a1
Handle running the buffer callback in the voice
2020-02-17 17:13:25 -08:00
Chris Robinson
ccc6da0a5b
Set and retrieve a buffer's callback
2020-02-17 00:22:51 -08:00
Chris Robinson
3156b17057
Stub out an interface for a callback-driven buffer
2020-02-16 23:49:29 -08:00
Chris Robinson
8a9eef70af
Use struct methods to get a buffer's format info
2020-01-18 13:23:59 -08:00
Chris Robinson
799c60f3bb
Add an interface to set a B-Format buffer's layout and scaling
2019-12-02 11:51:27 -08:00
Chris Robinson
0cba99ed1b
Avoid static constexpr for arrays iterated over at run-time
2019-10-25 01:43:23 -07:00