Commit Graph

59 Commits

Author SHA1 Message Date
Chris Cannam
1dc6abdb96 Remove libresample support. It hasn't been exercised in years and nobody should be using it in preference to the other options 2022-09-27 08:47:33 +01:00
Chris Cannam
9e423cdd8c Handle non-ideal sample rates in R3; document sample rate parameter 2022-09-26 16:02:13 +01:00
Chris Cannam
57d59b4c7a Eliminate the mlock logic entirely. It's caused a couple of issues lately and it turns out it wasn't even used! 2022-09-26 10:11:16 +01:00
Chris Cannam
a5e2bfa444 Fix some (benign) shadowing warnings 2022-09-20 09:30:48 +01:00
Chris Cannam
2eb9a20052 There's no longer any good reason to do this; remove it 2022-09-09 11:22:53 +01:00
Chris Cannam
021de9d51c Add resample-before mode 2022-09-02 14:49:34 +01:00
Chris Cannam
deb84a5f78 Update build files 2022-09-02 13:11:15 +01:00
Chris Cannam
8c817265d5 Pick more rational rational values 2022-09-02 12:07:41 +01:00
Chris Cannam
2025c51d64 Use extracted pickNearestRational; ensure the max rational is actually the max for both num and denom 2022-09-02 12:06:45 +01:00
Chris Cannam
a525654d6a Pull out nearest-rational into mathmisc so it can be used in other places than BQResampler 2022-09-02 12:06:11 +01:00
Chris Cannam
ee3091ab75 Merge from branch speexdsp 2022-09-02 11:12:35 +01:00
Chris Cannam
e0a6fc686d Add support for external libspeexdsp 2022-09-02 11:10:44 +01:00
Chris Cannam
8fee46b704 Add SLEEF FFT support 2022-08-09 15:50:02 +01:00
Chris Cannam
f81598c166 Backed out changeset c03ab2acf74e
No, that worked very badly in practice. Revisit
2022-08-08 17:02:08 +01:00
Chris Cannam
f027a59fa4 I don't like adjusting the rational approximation - it changes (even if only nominally) the effective ratio based on quality. I think this is more appropriate 2022-08-08 16:55:53 +01:00
Chris Cannam
63ebc45107 ... I said, in RatioOftenChanging mode 2022-08-04 13:34:31 +01:00
Chris Cannam
76ee5998f1 Permit rational precision to vary by quality setting in RatioOftenChanging mode 2022-08-04 13:31:33 +01:00
Chris Cannam
d211121701 Ah, this was still in use in Scavenger. It can stay for now 2022-07-14 17:49:22 +01:00
Chris Cannam
dc74c993cf Add profile points; switch to microseconds 2022-07-14 10:02:39 +01:00
Chris Cannam
7179c2626c Update Profiler to use std::chrono 2022-07-14 09:42:10 +01:00
Chris Cannam
75c1bdc015 Fix speex build 2022-06-30 14:00:14 +01:00
Chris Cannam
9845e4bb38 Make this a default implementation of Logger rather than a special case in Log 2022-06-23 09:52:23 +01:00
Chris Cannam
5137b19407 Wire up Log throughout 2022-06-22 11:33:36 +01:00
Chris Cannam
e8b63bd10d These can just be overloads for log, which at least avoids us using log2 as a method name here 2022-06-22 09:10:02 +01:00
Chris Cannam
7434abe664 More on logging 2022-06-21 17:03:24 +01:00
Chris Cannam
35653f3a86 Start reworking log output 2022-06-21 16:06:16 +01:00
Chris Cannam
e546767a6d Rename/rejig so as to have just a single Impl and then R2 and R3 stretcher classes 2022-06-21 10:25:08 +01:00
Chris Cannam
326f9b721d Add RTENTRY macro for STOAT testing 2022-06-15 17:22:32 +01:00
Chris Cannam
bbb5db3087 Windows dedicated build updates 2022-06-14 17:03:33 +01:00
Chris Cannam
2c57d0ee30 Fix compiler warnings 2022-06-14 16:52:09 +01:00
Chris Cannam
b160475b07 Fix some compiler warnings 2022-06-14 15:15:55 +01:00
Chris Cannam
9dbf53026a Fix failure to calculate offline stretch correctly when a zero-chunk region is found; provide alternate projection calculation method for R3 without stop-the-world phase resets 2022-06-13 17:16:03 +01:00
Chris Cannam
182e2b0e3b Put binForFrequency/frequencyForBin in a common place 2022-06-13 10:08:05 +01:00
Chris Cannam
c50397128a Fix failure to reset m_fill on reset 2022-06-10 17:07:23 +01:00
Chris Cannam
63bcfb0e22 Tidy up 2022-06-10 16:44:04 +01:00
Chris Cannam
5dcc499cf9 Now update MovingMedian behaviour to match bsq code (i.e. make it "more" correct) 2022-06-10 16:39:32 +01:00
Chris Cannam
0bfa94a76a Restore MovingMedian to the simpler single filter and provide ..Stack separately. Seems little point in coalescing memory there, now we have separate ring buffers anyway 2022-06-10 13:09:48 +01:00
Chris Cannam
6723ca3636 Use SingleThreadRingBuffer for MovingMedian 2022-06-10 12:57:08 +01:00
Chris Cannam
6940ad29d8 Introduce a histogram filter for filtering discrete values 2022-06-10 12:35:15 +01:00
Chris Cannam
75b1c9abb5 Fixes to MovingMedian edge-cases and related tests 2022-06-08 11:39:16 +01:00
Chris Cannam
0b8b0742c1 A few signal-bits tests 2022-06-08 10:35:51 +01:00
Chris Cannam
0bc0d7deb0 Avoid compiler warning 2022-06-07 11:12:39 +01:00
Chris Cannam
1bfd02c6f3 Simplify by using MovingMedianStack to implement MovingMedian 2022-06-07 10:06:30 +01:00
Chris Cannam
0cd622d0da Create a MovingMedianStack to contain a stack of filters with contiguous addressing - does not appear to be notably beneficial, though I quite like the api 2022-06-07 09:50:33 +01:00
Chris Cannam
a564a7c812 Minor tidy 2022-06-07 09:06:37 +01:00
Chris Cannam
459be9fbad Tiny simplification 2022-06-07 09:02:00 +01:00
Chris Cannam
b8c7289c45 Further small improvement to moving median 2022-06-07 08:53:42 +01:00
Chris Cannam
d7163b36f6 Quicker moving median (max one call to lower_bound, we're copying the elements between the two values anyway so we might as well compare against them too) - this checks out 2022-06-07 08:50:25 +01:00
Chris Cannam
7519ef47cc Toward minimising MovingMedian a bit 2022-06-06 21:53:54 +01:00
Chris Cannam
c3309f56c1 Remove debug output 2022-05-25 14:43:31 +01:00