Commit Graph

264 Commits

Author SHA1 Message Date
Chris Cannam
91274b3fd5 Build and install JNI if header and Java compiler are found 2021-03-12 09:52:54 +00:00
Chris Cannam
a5cb3a6b4a Add some profiler entries 2021-03-11 16:15:10 +00:00
Chris Cannam
09e5bd29bf Protect profiler map with a mutex 2021-03-11 16:14:40 +00:00
Chris Cannam
fcc952e81a A few helper functions 2021-03-09 17:29:21 +00:00
Chris Cannam
b463cf5565 Fix wrong accumulator type - this fix makes the detector a little more sensitive, which is not necessarily good, but the previous accidental behaviour exaggerated the difference in results between float and double precision ffts 2021-03-09 17:22:41 +00:00
Chris Cannam
e79658b04f Fix incorrect cases in double-only/float-only cases 2021-03-09 17:21:08 +00:00
Chris Cannam
ee9128020d Additional kissfft source file 2021-03-09 13:05:24 +00:00
Chris Cannam
b81d62bb98 Update KissFFT code 2021-03-09 12:29:40 +00:00
Chris Cannam
120edca223 Build updates for Windows 2021-03-05 10:31:00 +00:00
Chris Cannam
7c8fa72c60 Avoid reserved preprocessor symbols 2021-02-10 11:07:33 +00:00
Chris Cannam
d2e5cf3a6d Fix incorrect initialisation 2021-02-05 16:39:41 +00:00
Chris Cannam
955a32fc7e Copyright dates 2021-01-08 17:13:52 +00:00
Chris Cannam
16487324fc Replace __MSVC__ define (which needs to be defined manually in the build) with _MSC_VER (which the compiler defines itself) throughout 2020-12-10 09:25:28 +00:00
Chris Cannam
897bd14b8e Avoid any smoothing when setting initial ratio 2020-11-16 09:11:12 +00:00
Chris Cannam
dbaaf12598 Hm, those settings weren't as well-behaved as I thought. I wonder if there is some unpleasant randomness here 2020-10-22 17:13:55 +01:00
Chris Cannam
e3e5fe7ae3 Settle on a single set of params that seems to work ok in tests 2020-10-22 15:55:48 +01:00
Chris Cannam
75f9af1f9b Remove support for resampler from IPP versions older than v7 2020-10-22 14:00:32 +01:00
Chris Cannam
cce7bdd703 Fix buffer underrun in case where rounded sample count accumulator exceeds length 2020-10-22 13:55:50 +01:00
Chris Cannam
c4ad5b6f4a Also avoid passing a genuinely long block when the ratio has just changed 2020-10-21 17:16:15 +01:00
Chris Cannam
ce5b79bb45 Avoid passing a very oversize outcount for the reasons given 2020-10-21 16:50:19 +01:00
Chris Cannam
3ddc35f7ae Resampler code pulled back in from bqresample, with safer api 2020-10-21 15:05:14 +01:00
Chris Cannam
81629cf714 Merge from default branch 2020-10-21 09:07:44 +01:00
Chris Cannam
d05806450a Avoid compiler complaints about dynamic array syntax. This is no better code, bu
t it's less sensitive to compile options.
2020-10-08 11:20:52 +01:00
Chris Cannam
42ff18a229 Prefer libsamplerate at any performance setting, now we know it is better-behaved when changing rates 2020-09-29 11:04:18 +01:00
Chris Cannam
c1108834c1 In this emergency, increase the buffer size by a factor rather than only by a constant amount - because if this arises because of an overlong increment being broken down into littler bits, we would end up doing it again and again, which is much more expensive. This makes a huge performance difference in cases where a time map ends up mapping very little input into a great expanse of output 2020-09-22 10:35:50 +01:00
Chris Cannam
8df9558868 In this emergency, increase the buffer size by a factor rather than only by a constant amount - because if this arises because of an overlong increment being broken down into littler bits, we would end up doing it again and again, which is much more expensive. This makes a huge performance difference in cases where a time map ends up mapping very little input into a great expanse of output 2020-09-22 10:35:50 +01:00
Chris Cannam
f42a369b8e Same fix in resampleInterleaved as earlier committed in resample 2020-09-21 16:44:53 +01:00
Chris Cannam
d65f5ebe34 Fix potential discontinuity when window size is reduced due to change in ratio 2020-09-21 13:48:45 +01:00
Chris Cannam
4728c79862 Fix potential discontinuity when window size is reduced due to change in ratio 2020-09-21 13:48:45 +01:00
Chris Cannam
661a1d05eb It appears this may be all we need - apparently the occasional odd extra sample (due to incremental rounding) added up and eventually overran the filter. I believe +1 is perfectly good here, but we can afford to be more accommodating just in case 2020-09-16 17:52:33 +01:00
Chris Cannam
76175b9e80 It appears this may be all we need - apparently the occasional odd extra sample (due to incremental rounding) added up and eventually overran the filter. I believe +1 is perfectly good here, but we can afford to be more accommodating just in case 2020-09-16 17:52:33 +01:00
Chris Cannam
438893fb6f Avoid some compiler warnings 2020-09-16 17:47:30 +01:00
Chris Cannam
27f4572258 Fix silly compile error 2020-09-15 17:36:21 +01:00
Chris Cannam
be843f3da7 Avoid an input increment of zero (= sigfpe) when given a very long stretch factor 2020-09-15 15:23:33 +01:00
Chris Cannam
de618103f7 Experiment with small crossfade on resampler rate change 2020-09-15 13:46:18 +01:00
Chris Cannam
a992376541 Fix iOS build broken by earlier commit 2020-09-15 08:20:07 +01:00
Chris Cannam
0513096661 Fix build failure for macOS 10.6 2020-09-14 12:04:08 +01:00
Chris Cannam
817c781efc Avoid warning when initialising bit pattern for sign bit outside numerical range of int 2020-02-10 09:22:27 +00:00
Chris Cannam
e2b62687d6 Rejig includes for alloca in particular - more logic in sysutils, remove from individual files (include sysutils instead), also indent includes in sysutils for a bit more clarity 2020-01-16 11:28:47 +00:00
Chris Cannam
bfb69779af Dates 2020-01-16 10:20:23 +00:00
Chris Cannam
26c7635c9e Avoid dependence on stdexcept by throwing a string here, for an internal error that is not supposed ever to be thrown or caught 2018-11-29 10:34:43 +00:00
Chris Cannam
d6f55d526e Include guard 2018-11-29 10:14:44 +00:00
Chris Cannam
4a4213dc3e Bring across current allocator from bqvec (it's less demanding of having the right preprocessor symbol set already) 2018-11-29 09:12:59 +00:00
Chris Cannam
f35c900c0b OSX memory barrier bit 2018-10-11 13:00:58 +01:00
Chris Cannam
a747e725f2 Fix build for FFTW_SINGLE_ONLY. Thanks to Andreas Müller 2018-08-15 14:52:16 +01:00
Chris Cannam
486ab5de62 Backport fixes for IPP v9 2018-05-14 20:41:25 +01:00
Chris Cannam
f5755ebf17 Merge 2018-05-13 21:34:15 +01:00
Chris Cannam
2976a1fbe5 Avoid a couple of picky compiler warnings 2018-05-13 19:08:04 +01:00
Chris Cannam
bbf45fa887 Copyright dates 2018-03-07 13:10:19 +00:00
Chris Cannam
12db9e651d Enable denormal flush-to-zero for ARM64 iOS (previous logic only worked for ARM32) 2018-02-22 17:13:58 +00:00