Chris Cannam
|
92362bdba0
|
Resample in chunks as well, to avoid overrunning resample buffer
|
2022-09-02 15:08:29 +01:00 |
|
Chris Cannam
|
021de9d51c
|
Add resample-before mode
|
2022-09-02 14:49:34 +01:00 |
|
Chris Cannam
|
4336d47a02
|
With longer process sizes we can end up with insufficient space in the inbuf, but enough in the outbuf following the previous retrieve call for a consume to be possible before writing to the inbuf
|
2022-09-01 10:41:25 +01:00 |
|
Chris Cannam
|
e58c6018c5
|
This appears benign and should be slightly quicker
|
2022-08-18 15:24:24 +01:00 |
|
Chris Cannam
|
6ecc973d41
|
Keep a structure with recommended limits for inhop/outhop in current configuration; skip readahead entirely when inhop is greater than a certain limit - allowing us to reduce start delay further in short-window mode
|
2022-08-05 14:58:12 +01:00 |
|
Chris Cannam
|
3eae190a85
|
This is not actually usually a serious problem, unlike the <1 case which can be genuinely troublesome
|
2022-08-04 16:31:23 +01:00 |
|
Chris Cannam
|
7833e1bff1
|
Avoid kick analysis in single-window mode; comment update
|
2022-08-04 12:08:15 +01:00 |
|
Chris Cannam
|
5b26e90a58
|
Fix to windowing offsets
|
2022-08-04 11:19:13 +01:00 |
|
Chris Cannam
|
fe9e86bc3c
|
Per-channel window source buffer, & connect it up
|
2022-08-04 10:31:36 +01:00 |
|
Chris Cannam
|
d1386b0a0c
|
Provide a separate window source buffer to simplify single/multi window logic
|
2022-08-04 10:02:09 +01:00 |
|
Chris Cannam
|
2fa0e1162e
|
Toward properly expressing the window sizes in Guide when in single-window mode, so as to separate the time-domain frame length from the longest FFT within R3Stretcher and allow us to use a shorter time-domain frame. Not working correctly in single-window mode yet.
|
2022-08-03 14:16:17 +01:00 |
|
Chris Cannam
|
9fff2836c6
|
Avoid RatioMostlyFixed in RealTime mode, it can lead to unpleasant surprises
|
2022-08-02 16:22:24 +01:00 |
|
Chris Cannam
|
d0cca91e30
|
Impose a limit here
|
2022-07-14 13:52:04 +01:00 |
|
Chris Cannam
|
e018458736
|
Make this fully single-windowed rather than just short-windowed
|
2022-07-14 13:44:22 +01:00 |
|
Chris Cannam
|
02928a3c86
|
Experimentally (re-)introduce short window mode
|
2022-07-14 11:55:21 +01:00 |
|
Chris Cannam
|
dc74c993cf
|
Add profile points; switch to microseconds
|
2022-07-14 10:02:39 +01:00 |
|
Chris Cannam
|
dca4c96834
|
Wire up setExpectedInputDuration
|
2022-07-07 10:54:23 +01:00 |
|
Chris Cannam
|
263e0cbf70
|
Ensure output accumulator is properly drained at finish. We rely on the calculated output count (in offline mode) to truncate properly.
|
2022-07-07 10:35:01 +01:00 |
|
Chris Cannam
|
a66d2a5140
|
Fix consumed counter for key-frame mapping
|
2022-07-07 09:43:17 +01:00 |
|
Chris Cannam
|
567e8636cd
|
Enable PROCESS_SAMPLE_TYPE for R3 as well, switching from double to process_t throughout
|
2022-07-06 10:40:10 +01:00 |
|
Chris Cannam
|
6e941fa2d3
|
Update the OptionPitch* options so that they do the expected thing for the R3 engine as well - this speeds up realtime mode when not dynamically pitch-shifting
|
2022-07-06 10:22:50 +01:00 |
|
Chris Cannam
|
72654b04ea
|
Introduce getPreferredStartPad(), deprecate getLatency() and replace with getStartDelay(); document and test both
|
2022-07-05 17:53:36 +01:00 |
|
Chris Cannam
|
687e3958a7
|
Connect up the ChannelsTogether option in R3 as well, to extend the channel lock range upward
|
2022-07-04 10:52:50 +01:00 |
|
Chris Cannam
|
54b10f155c
|
Padding and key-frame fixes
|
2022-06-29 16:51:18 +01:00 |
|
Chris Cannam
|
56c60d2420
|
Fix target duration in offline mode
|
2022-06-29 14:44:21 +01:00 |
|
Chris Cannam
|
2940bde16f
|
Since we're adding more padding than a half-frame, we have to remove a scaled proportion of it
|
2022-06-27 16:37:52 +01:00 |
|
Chris Cannam
|
5e726e79aa
|
Toward further tests
|
2022-06-24 18:05:32 +01:00 |
|
Chris Cannam
|
b9e6ebb6e3
|
Implement setMaxProcessSize in R3
|
2022-06-24 14:01:11 +01:00 |
|
Chris Cannam
|
9c04885d27
|
Read correct sample count out from mixdown buffer, when draining and having read less than one outhop at input
|
2022-06-24 13:25:36 +01:00 |
|
Chris Cannam
|
2478d54c05
|
We actually need to fill with the whole size (matching our reported latency)
|
2022-06-24 11:51:25 +01:00 |
|
Chris Cannam
|
d65755427f
|
In offline mode, create the resampler only if needed (i.e. if the pitch ratio is still 1.0 at the point when process is first called); and use plain 2048-sample fft with unity stretch
|
2022-06-24 10:51:40 +01:00 |
|
Chris Cannam
|
b318fb4e8b
|
Wire through debug level changes; tidy
|
2022-06-22 13:42:58 +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 |
|