Chris Robinson
024112a53a
Use acquire-release semantics for changing deferred updates
2020-04-07 12:46:35 -07:00
Chris Robinson
0077a01667
Don't yield the CPU when waiting for updates to finish
2020-04-07 12:36:44 -07:00
Chris Robinson
f628ab2151
Use better values for a couple in-progress enums
2020-04-07 12:24:20 -07:00
Chris Robinson
efed431237
Use a unique_ptr for constructing the bsinc table coefficients
2020-04-07 08:30:37 -07:00
Chris Robinson
2fcc3f3887
Dynamically allocate the temporary bsinc filter table
2020-04-06 17:12:39 -07:00
Chris Robinson
7a324231a3
Combine the late reverb feedback and modulator delay lines
2020-04-06 16:14:13 -07:00
Chris Robinson
6ff5339112
Include the average modulation delay for the late reverb feedback
2020-04-06 15:46:14 -07:00
Chris Robinson
baf14aad2a
Pass the BSincHeader by reference instead of value
2020-04-05 23:08:02 -07:00
Chris Robinson
ab6afd6fa0
Reimplement the modulation stage for reverb
...
This seems to be quite close recordings from real hardware, so it's probably
good enough.
2020-04-05 12:00:45 -07:00
Chris Robinson
192b1a1f65
Require Qt5 for alsoft-config
2020-04-05 01:41:36 -07:00
kcat
de2599b70b
Merge pull request #167 from aaronmjacobs/build-version-option
...
Add option to disable "build_version" cmake target
2020-04-05 00:02:54 -07:00
Chris Robinson
25464b2210
Avoid storing the bsinc coefficient deltas before output
...
This cuts the majority of stack use when generating the coefficients.
2020-04-04 22:04:59 -07:00
Chris Robinson
8084d08cf9
Get rid of the Android cross-compile toolchain
...
It has problems, and the Android NDK provides one that works fine.
2020-04-04 10:58:43 -07:00
Chris Robinson
9b11029af9
Remove the now-unused native tools
2020-04-04 08:58:06 -07:00
Chris Robinson
431d01cc7f
Use a cmake script to convert a binary file to a header file
2020-04-04 08:46:18 -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
bd50601f15
Remove a couple outdated comments
2020-04-03 10:07:43 -07:00
Chris Robinson
8f47013e43
Some more ALfloat->float cleanup
2020-04-03 08:49:15 -07:00
Chris Robinson
1130597562
Use structs for the mixer and resampler tags
2020-04-03 03:52:23 -07:00
Chris Robinson
d9225083b4
Avoid using ALfloat in the mixer functions
2020-04-03 03:11:32 -07:00
Chris Robinson
236564b54a
Another small cleanup
2020-04-03 02:57:51 -07:00
Chris Robinson
8adbde90f5
Jump to the target gain if the fade amount is small
2020-04-03 02:48:35 -07:00
Chris Robinson
367d4af07c
Avoid unnecessary duplication in the resamplers
2020-04-03 02:39:23 -07:00
Chris Robinson
ebe30fb0bd
Remove the now-unused bsincgen
2020-04-02 04:34:28 -07:00
Chris Robinson
ee89ca1bdd
Fix bsinc filter alignment and offsets
2020-04-02 02:13:18 -07:00
Chris Robinson
57109902cd
Avoid std::abs in a constexpr function
2020-04-02 01:52:07 -07:00
Chris Robinson
8853519d89
Generate the bsinc tables using constexpr methods
...
All the methods used should be compliant with C++14 constexpr rules. However,
the number of scales and phases cause GenerateBSincCoeffs to reach the allowed
step limit, preventing full compile-time generation. It's not a terribly big
deal, it'll generate them very quickly when loading, but it does prevent using
shared read-only memory pages.
2020-04-02 00:49:19 -07:00
Chris Robinson
6fb59f1182
Avoid using M_PI
2020-04-01 22:22:50 -07:00
Chris Robinson
bf48dcd375
Report better latency when PulseAudio has no timing info
2020-03-30 20:06:24 -07:00
Chris Robinson
b9f19c6ca2
Inline a small helper method
2020-03-30 16:06:34 -07:00
Chris Robinson
662d77159b
Get rid of a redundant enum
2020-03-30 16:00:02 -07:00
Chris Robinson
f2ddf971df
Return the enumerated device names from the backend
...
Rather than using an out parameter.
2020-03-30 15:37:41 -07:00
Chris Robinson
167bdce48d
Hold the ListLock while opening a device
...
Since it may rely on the enumerated device list that could be updated
asynchronously.
2020-03-30 13:50:50 -07:00
Chris Robinson
75479b58e3
Remove use of unnecessary type aliases
2020-03-30 13:43:49 -07:00
Chris Robinson
cc009b8aa0
Move the FrontStablizer definition to its own header
2020-03-30 01:16:15 -07:00
Chris Robinson
f8a5ea2d74
Inline a couple BackendBase methods
2020-03-30 00:07:35 -07:00
Chris Robinson
9b237790b2
Remove the mutex from the backend base
2020-03-29 23:57:37 -07:00
Chris Robinson
d70912c034
Remove the QSA backend
...
It's been broken for who knows how long, and could really do with a rewrite for
the new interface anyway.
2020-03-29 20:37:58 -07:00
Chris Robinson
fed80e0c10
Reset real-time priority on fork
2020-03-29 19:39:00 -07:00
Chris Robinson
fb433cd918
Protect the call to pa_mainloop_quit with the mutex
2020-03-29 03:44:34 -07:00
Chris Robinson
5dfa24d5e2
Stop updating effects when one fails
2020-03-29 03:10:35 -07:00
Chris Robinson
a5b8167280
Make some functions private methods
2020-03-28 18:15:05 -07:00
Chris Robinson
963d9b761b
Rename ALvoice and related structs to Voice
2020-03-28 18:15:05 -07:00
Chris Robinson
fb07612545
Get rid of MAX_INPUT_CHANNELS
2020-03-28 18:15:05 -07:00
Chris Robinson
f1f9a14172
Avoid AL[C]boolean for internal use
2020-03-28 18:15:05 -07:00
Chris Robinson
504745abec
Use a standard bool instead of ALboolean
2020-03-28 18:15:05 -07:00
Chris Robinson
e78cb9b77f
Avoid using more unnecessary type aliases
2020-03-28 18:15:04 -07:00
kcat
3fce1c4217
Merge pull request #405 from aaronmjacobs/cmake-fixes
...
Fix find_package_handle_standard_args name mismatch warnings
2020-03-28 18:14:34 -07:00