Chris Robinson
229bf45e24
Avoid calling readAdvance in a loop
2021-01-17 03:17:46 -08:00
Chris Robinson
855a8c0cd9
Don't assume the ring buffer's read vector is the next writable space
...
This is untrue since the ring buffer leaves one element unwritten, so there's
one extra element to be written once a readable element is read.
2021-01-15 18:18:07 -08:00
Chris Robinson
8c4adfd752
Use a span instead of passing a vector by reference
2021-01-11 17:39:57 -08:00
Chris Robinson
1f01311ee3
Make sure proper names are used for querying PulseAudio info
2021-01-10 13:34:05 -08:00
Ilya Fedin
a30d3ad803
Pass nullptr to pulse for default device
2021-01-10 16:23:08 +04:00
Chris Robinson
89906453ea
Quickly fade out samples of a stopping voice
...
Rather than linearly fading out the mix over the mixing update, logarithmically
fade out the post-resampled samples by approx -60dB per millisecond.
2021-01-08 18:54:46 -08:00
Chris Robinson
948ae3bc7e
Avoid duplicating an inline template function
2021-01-06 17:52:50 -08:00
Chris Robinson
a9ac165c39
Properly trace the new HRTF delay for the B-Format decoder
2021-01-06 17:19:10 -08:00
Chris Robinson
292de73c75
Use a template to read integers with endian awareness
2021-01-06 17:10:03 -08:00
Chris Robinson
04cd0bc576
Return non-const from the resampler function
2021-01-02 17:37:09 -08:00
Chris Robinson
20ef8bf390
Move cpu_caps and fpu_ctrl to core
2020-12-31 16:47:12 -08:00
Chris Robinson
002c506296
Remove an unnecessary include
2020-12-31 13:15:38 -08:00
Chris Robinson
f2b7a063ef
Add NEON-enhanced FIR loops for convolution and UHJ
2020-12-31 13:01:17 -08:00
Chris Robinson
9d354f721c
Assume run-time NEON support if detected by cmake
2020-12-31 11:42:02 -08:00
Chris Robinson
96942d7968
Combine multiple functions into one
2020-12-28 08:37:49 -08:00
Chris Robinson
aae115c35a
Return an intrusive_ptr from EffectStateFactory::create
2020-12-28 08:04:23 -08:00
Chris Robinson
7fe9d8d20c
Remove extraneous semicolor
2020-12-28 02:50:15 -08:00
Chris Robinson
62fa6a2277
Avoid including voice.h in alcontext.h
2020-12-27 16:14:11 -08:00
Chris Robinson
ffa7d1b1a7
Reduce a few lines
2020-12-27 14:37:43 -08:00
Chris Robinson
43d053cb32
Reorder some device fields
2020-12-27 12:23:35 -08:00
Chris Robinson
04358890d9
Use a unique_ptr to hold DistanceComp data
2020-12-27 11:30:45 -08:00
Chris Robinson
adb5467720
Use smaller types for enums
2020-12-27 10:28:59 -08:00
Chris Robinson
cf7f201c92
Reorder some context properties
2020-12-27 03:11:01 -08:00
Chris Robinson
cd2ebb9c3a
Use a uint for a bitfield
2020-12-27 01:05:16 -08:00
Chris Robinson
e20143fcc4
Move the WetBuffer reference to EffectSlot
2020-12-27 00:14:58 -08:00
Chris Robinson
507cbfa027
Combine EffectState::deviceUpdate with setBuffer
2020-12-26 12:33:00 -08:00
Chris Robinson
54719de132
Avoid AL enums for the EffectSlot type
2020-12-26 09:21:30 -08:00
Chris Robinson
8850a3f730
Combine variable terms separate from the scaling weights
2020-12-26 06:27:49 -08:00
Chris Robinson
8a86ec8ac5
Add a crossover frequency field for the device
...
Used when upsampling low-order ambisonic signals to higher order. Rather than a
hardcoded 400hz, it ensures a consistent crossover point when an ambdec
configuration is used. It can also allow for an alsoft config option.
2020-12-26 05:23:08 -08:00
Chris Robinson
5f233a2c24
Use more constexpr variables instead of macros
2020-12-25 20:52:18 -08:00
Chris Robinson
f6e29ce5bb
Return an optional for an error
2020-12-25 09:26:24 -08:00
Chris Robinson
78f73a4277
Avoid dynamic vectors in AmbDecConf
...
Also add a bit more sanity checking
2020-12-25 08:31:02 -08:00
Chris Robinson
eaf209d2f1
Update a comment and type used in the convolution effect
2020-12-25 07:00:57 -08:00
Chris Robinson
204f7d8811
Rename From2D to FromACN2D
2020-12-25 06:40:13 -08:00
Chris Robinson
20820fd01b
Move the ambdec loader to core
2020-12-25 06:30:47 -08:00
Chris Robinson
4bc686d89b
Remove unnecessary includes
2020-12-24 22:49:55 -08:00
Chris Robinson
0d3b041aa2
Avoid AL types and enums in the effect processors
2020-12-24 22:49:55 -08:00
Chris Robinson
eedc42890f
Move alexcpt to core
2020-12-24 22:49:55 -08:00
Chris Robinson
63ea62bea1
Avoid some more AL types
2020-12-24 22:49:55 -08:00
Chris Robinson
6ae0115bf7
Avoid AL/ALC types in the backends
2020-12-17 23:21:45 -08:00
Chris Robinson
5edd5a11fc
Don't use ALC error enums for the backend error code
2020-12-17 21:07:53 -08:00
Chris Robinson
7d2e21334c
Move the AL error enum out of base_exception
2020-12-17 16:46:21 -08:00
Chris Robinson
4d1ac95ae2
Don't return an enum from captureSamples
...
It's always no_error
2020-12-17 03:06:52 -08:00
Chris Robinson
d578bc6cb1
Move logging to core
2020-12-17 02:47:03 -08:00
Chris Robinson
f0fe57dc5a
Don't link DistanceModel enums to AL values
2020-12-16 14:58:55 -08:00
Chris Robinson
efc9c146c3
Move AsyncEvent to a separate header
2020-12-16 13:58:51 -08:00
Chris Robinson
9710a859fa
Add missing include
2020-12-16 03:02:49 -08:00
Chris Robinson
02be0149f1
Send stop events when stopping paused voices
2020-12-16 02:12:18 -08:00
Chris Robinson
c96b50fb65
Use a separate enum for the VoiceChange state
2020-12-16 01:40:15 -08:00
Chris Robinson
5ad28f8cba
Move VoiceChange to a separate header
2020-12-16 00:50:50 -08:00