256 Commits

Author SHA1 Message Date
Chris Robinson
12bb5a47cd Fix the FFT half point for the shifter effects 2020-05-08 01:39:48 -07:00
Chris Robinson
047f1666d5 Fix subspan extent calculation 2020-04-28 19:58:17 -07:00
Chris Robinson
78e789bf7b Silence a type conversion warning with GCC 2020-04-14 12:05:54 -07:00
Chris Robinson
6ac5816354 Avoid inlining some potentially costly calls 2020-04-14 11:50:59 -07:00
Chris Robinson
f7380a44d4 Use a common base for a couple exceptions 2020-04-10 15:12:57 -07:00
Chris Robinson
e123fa0ec3 Apply some alloc and alignment attributes 2020-04-10 11:05:25 -07:00
Chris Robinson
97c11577cd Make a default/empty constructor noexcept 2020-04-09 19:32:02 -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
baf14aad2a Pass the BSincHeader by reference instead of value 2020-04-05 23:08:02 -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
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
c24d127229 Avoid non-namespace template specialization 2020-03-24 12:03:07 -07:00
Chris Robinson
eed8407599 Remove some unused functions 2020-03-23 17:18:11 -07:00
Chris Robinson
6a3b3b180b Add a macro to disable class-specific new/delete 2020-03-23 16:00:50 -07:00
Chris Robinson
5d0f90fed0 Avoid ## in a macro
Cppcheck thinks it's an invalid use of it
2020-03-23 14:26:00 -07:00
Chris Robinson
132a69c03d Use more appropriate types for bitfields 2020-03-22 21:34:50 -07:00
Chris Robinson
46234171d1 Clean up some C++11-isms 2020-03-22 21:15:12 -07:00
Chris Robinson
49b2d703e7 Properly define the new[] and delete[] operators 2020-03-22 13:28:45 -07:00
Chris Robinson
9ce182228d Avoid some pre-C++14 workarounds 2020-03-22 08:51:06 -07:00
Chris Robinson
819763a6c2 Fix some 'ambiguous' calls for newer MSVC 2020-01-06 01:40:21 -08:00
Chris Robinson
e9ee6dd239 Ensure a pointer is provided for a templated iterator type 2020-01-05 23:17:26 -08:00
Chris Robinson
06b7c63cef Fix reverse iterators for spans 2019-12-25 21:48:40 -08:00
Chris Robinson
7b3f88c430 Avoid extraneous looping 2019-11-29 05:52:33 -08:00
Chris Robinson
c093728ced Move the polyphase resampler to the common lib 2019-11-28 10:54:47 -08:00
Chris Robinson
697da8724f Avoid an extraneous macro and use a simplified type alias 2019-10-27 00:47:33 -07:00
Chris Robinson
0cba99ed1b Avoid static constexpr for arrays iterated over at run-time 2019-10-25 01:43:23 -07:00
Chris Robinson
f8ff4e269b Put the pragma defines in a separate header 2019-10-07 15:26:35 -07:00
Chris Robinson
4620912f0f Don't inline the utf8 converters 2019-10-01 23:33:00 -07:00
Chris Robinson
0063f4bfac Add some allocator fields GCC 6.3 seems to want 2019-10-01 01:49:21 -07:00
Chris Robinson
94ff2daafc Use using to avoid extraneous template instantiations 2019-09-29 16:02:25 -07:00
Chris Robinson
95996effaf Move the ifstream wrapper to common 2019-09-22 12:23:41 -07:00
Chris Robinson
2ae1f8b8b6 Revert "Silence some unreachable code warnings on MSVC"
This reverts commit 2ab4883439b1bc96578e86cc894504b9a1d1021b.

It apparently didn't work at silencing anything.
2019-09-20 14:40:12 -07:00
Chris Robinson
2ab4883439 Silence some unreachable code warnings on MSVC 2019-09-20 14:25:06 -07:00
Chris Robinson
65eb0987e2 Remove and simplify some functions 2019-09-20 13:35:29 -07:00
Chris Robinson
79a621ac47 Simplify some REQUIRES uses 2019-09-20 10:59:12 -07:00
Chris Robinson
b9daffe159 Don't clean up more than necessary on destruction 2019-09-20 10:58:29 -07:00
Chris Robinson
24a1058952 Work around MSVC's lack of standard _Pragma support 2019-09-18 13:58:04 -07:00
Chris Robinson
b8f64155e9 Silence a couple specific warning instances 2019-09-18 13:24:16 -07:00
Chris Robinson
66565ca7a3 Enable and fix some more warnings 2019-09-18 10:09:04 -07:00
Chris Robinson
2c5c5a5397 Add and use custom string types and functions 2019-09-16 13:45:14 -07:00
Chris Robinson
4b8f78a8d6 Fix a few more GCC warnings 2019-09-14 19:42:54 -07:00
Chris Robinson
b212ab9ea2 Add a note about clearing complex_hilbert's imaginary input 2019-09-14 18:37:00 -07:00
Chris Robinson
2c348cecb6 Fix some more implicit conversions noted by GCC 2019-09-14 18:35:23 -07:00
Lopuska
925894fb8b
removed unnecessary loop
the caller in fshifter is already doing the same job by putting 0 for the imaginary part
2019-09-15 02:58:53 +02:00
Chris Robinson
fa64b1fd6d Fix implicit conversions in the effects 2019-09-14 12:16:51 -07:00
Chris Robinson
5f862a5b49 Clean up sample converter implicit conversions 2019-09-12 17:45:06 -07:00