6969 Commits

Author SHA1 Message Date
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