Commit Graph

51 Commits

Author SHA1 Message Date
Chris Cannam
c1fd6fe6a5 Fix overrun 2021-05-12 17:26:27 +01:00
Chris Cannam
f6a66171bc Initial experimental import of bq resampler 2021-05-10 18:11:35 +01:00
Chris Cannam
e7f47b4b98 Introduce built-in fft; drop no-longer-supported ffts 2021-04-08 14:23:27 +01:00
Chris Cannam
a5cb3a6b4a Add some profiler entries 2021-03-11 16:15:10 +00:00
Chris Cannam
fcc952e81a A few helper functions 2021-03-09 17:29:21 +00:00
Chris Cannam
e79658b04f Fix incorrect cases in double-only/float-only cases 2021-03-09 17:21:08 +00:00
Chris Cannam
7c8fa72c60 Avoid reserved preprocessor symbols 2021-02-10 11:07:33 +00:00
Chris Cannam
955a32fc7e Copyright dates 2021-01-08 17:13:52 +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
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
f42a369b8e Same fix in resampleInterleaved as earlier committed in resample 2020-09-21 16:44:53 +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
27f4572258 Fix silly compile error 2020-09-15 17:36:21 +01:00
Chris Cannam
de618103f7 Experiment with small crossfade on resampler rate change 2020-09-15 13:46:18 +01:00
Chris Cannam
bfb69779af Dates 2020-01-16 10:20:23 +00: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
5eb13cb947 Fixes to reset calls, thanks to Justin Frankel 2017-09-26 09:51:22 +01:00
Chris Cannam
24560ba3ec Copyright dates 2015-07-09 15:26:08 +01:00
Chris Cannam
a0f8c91e7b Include 2015-07-09 15:14:47 +01:00
Chris Cannam
dfdc1ad2e0 Fix memory leak (thanks bepaald!) 2015-07-08 19:23:41 +01:00
Chris Cannam
0f4a9e1612 Refuse to accept NaNs in MovingMedian, replacing them with zeros (and a warning) instead. (Must push something, to maintain filter length) 2015-02-23 10:56:31 +00:00
Chris Cannam
6f361078f9 Reorder args to with_gain functions to match bqvec; docs; build fixes 2014-09-05 09:02:49 +01:00
Chris Cannam
8bcd90fab0 Copyrights 2014-05-29 18:00:22 +01:00
Chris Cannam
97fb6da962 Use the appropriate type for this 2013-05-15 10:35:30 +01:00
Chris Cannam
82d1f570da Enforce no-null-args to FFTs; avoid corresponding potential crash in formant preservation code 2012-10-28 10:23:42 +00:00
Chris Cannam
405c8c47e9 Comment and include guard 2012-10-14 12:57:16 +01:00
Chris Cannam
0e2b395ed2 Android build fixes 2012-09-09 18:27:30 +01:00
Chris Cannam
93c38b50a0 Update to new combined build 2012-09-09 16:57:42 +01:00
Chris Cannam
c26dc1dc88 * Add centre-focus option (mid/side processing)
* Simplify RingBuffer and add explicit memory locks
* Fix hang with certain unfortunate combinations of parameters
* Bump version to 1.7
2011-11-25 11:11:59 +00:00
Chris Cannam
c45acda473 * Fix failure to remember that we have constructed an interpolator
window already (#25).  Also avoid using alloca for substantial buffers
* Lose FFT::getFloatTimeBuffer and getDoubleTimeBuffer -- it's too
unclear when it's safe to use them and it's safer to control sizes externally.
In RB with smoothing on, these buffers were incorrectly being used for window-si
zed calculations (larger than FFT-sized).
* Fix some incorrect buffer resize sizes
* Build fixes for OS/X
2011-03-19 12:41:38 +00:00
Chris Cannam
0b8c1bd90b * Pull across from main repo: Fix silent channel of output when processing with band-limited transients option; include libresample support. Also update copyright dates. 2011-01-07 21:46:36 +00:00
Chris Cannam
99ba629361 * More work on framing, interpolation and scaling for longer window than FFT size.
This adds the --smoothing option to the command line tool and SmoothingOn/Off
  options to the API, introducing a double-length window with presum FFT and
  time-domain smoothing.  Behaviour elsewhere _should_ be unchanged.
2010-05-29 22:07:54 +01:00
Chris Cannam
49cf25d724 * Further work on handling distinct analysis and synthesis window and FFT sizes 2010-05-25 21:49:05 +01:00
Chris Cannam
3ed58ba356 * Separate out analysis and synthesis window sizes from FFT size.
This is an internal change only, so far -- results should be
  unchanged from 1.5.0.
2010-05-16 10:44:38 +01:00
Chris Cannam
23b9aa9c51 * Detection function fix (was losing crispness in transients) 2010-04-30 22:29:37 +01:00
Chris Cannam
b9d2bbdf49 * tidy 2010-03-24 12:35:21 +00:00
Chris Cannam
87dc720243 Update from main repo.
* Add a more reliable transient detection mode, and make the mode
   selectable using OptionDetectorXXX flags -- the new method is
   the default
 * Band-limit transient detectors to avoid being distracted by
   inaudible garbage
 * Add a key-frame mapping facility for variable stretch ratio
   management during offline stretches
2010-03-24 09:44:51 +00:00