6d52f2e861
Add CMakeLists.txt, remove DSP library dependency/copy
2025-02-27 16:27:07 +00:00
d34b33da28
Fix time-stretching bug (never recomputed previous block)
2025-02-27 16:27:07 +00:00
94553a3789
Move input time after seeking
2025-02-27 16:27:07 +00:00
37f855cc7f
It sounds OK, but doesn't null with the previous one
2025-02-27 16:27:07 +00:00
1eeba87b13
v1.1.1
...
* Fix bug with `.reset()` after silent input (thanks Steve!)
2025-01-29 16:42:53 +00:00
44c8f865af
v1.1.0
2025-01-29 15:57:09 +00:00
bc8a7fd65e
Calculate interval-step twists on-the-fly
2025-01-29 14:51:45 +00:00
Geraint
79b287ee0e
Calculate vertical twists only when needed
2025-01-29 14:51:45 +00:00
Geraint
e5057a9f54
Don't need a separate prevOutput, since we use it straight away
2025-01-29 14:51:45 +00:00
Geraint
218bd0f16c
Do phase-centre rotation in the time domain
2025-01-29 14:51:45 +00:00
Syl Morrison
9bffc80ec8
CMake for example command-line util
2025-01-29 14:51:45 +00:00
c867188d8e
Initial web release
2024-10-22 12:24:55 +01:00
Geraint
a9d78f0331
Add .flush() for getting the final bits of output without any input
2024-02-19 10:20:40 +00:00
Geraint
ebaf93d494
Add .seek() method to setup/move input position
...
Also update DSP library to v1.6.0 (for `STFT::nextInvalid()`)
2024-02-16 12:11:58 +00:00
Geraint
e0231d5267
Fix inverted arguments for real distribution
2023-05-10 18:40:50 +01:00
Geraint
3c8c05b633
Tidying up
2023-05-07 23:50:33 +01:00
Geraint
8395e46da7
Skip the peak-finding if we're not pitch-shifting
2023-05-07 22:58:16 +01:00
Geraint
d1bc2e358d
Fix some warnings, support random seed
2023-05-06 23:03:18 +01:00
Geraint
37db3a75a4
Even smoother phase-randomisation when stretching past 2x
2023-05-01 23:10:54 +01:00
Geraint
a9112f4f35
Move some methods up so it reads better
2023-05-01 07:49:08 +01:00
Geraint
605091c29e
Randomise time-stretch slightly when it goes past 2x
2023-05-01 07:47:18 +01:00
Geraint
fddcdb628f
De-emphasise phase-vocoder prediction when amplitude changes up or down
2022-12-18 17:07:16 +00:00
Geraint
7ca6c8d13c
Restore up-front vertical phase-twist calculations and prediction weighting
2022-12-18 02:32:29 +00:00
Geraint
f72fa99cfa
Bugfix: if the prediction is too weak, scale the fallback properly.
...
This was a problem when doing large pitch-shifts, because the pitch-map ends up folding back on itself, causing sections of the spectrum to have 0 energy. This was fine for the max-energy channel, but dependent channels would then have a zero prediction, and would quote their input without energy-scaling.
2022-12-18 00:20:09 +00:00
Geraint
ec3c6a253f
Refactor (nest some conditions, remove unused variables)
2022-12-17 23:30:39 +00:00
Geraint
3ffe6704ce
Correct energy for preliminary (phase-vocoder) output.
2022-12-17 23:08:45 +00:00
Geraint
c3addb7298
Tidying up
2022-12-17 13:29:50 +00:00
Geraint
6364651d1b
Ensure previous input spectrum is always one interval behind.
...
This increases CPU when time-stretching, but improves tuning.
2022-12-04 09:51:58 +00:00
Geraint
bb1bc7a6c4
Remove unused #include
2022-12-01 00:26:42 +00:00
Geraint
72ea54e4a9
Smoother frequency map using cubics instead of linear segments.
...
This means the frequency map isn't *completely* linear around the peaks, but it's pretty close, and the smoother curve reduces pre-ringing around transients.
2022-12-01 00:02:42 +00:00
Geraint
85df203ba7
Bugfix for very large buffers (e.g. whole audio file)
2022-11-29 21:44:13 +00:00
Geraint
088dad47f6
Add cheaper preset
2022-11-29 16:36:44 +00:00
Geraint
450b2fecce
Performance tweak to make it almost usable in Debug
2022-11-29 15:54:11 +00:00
Geraint
31a4c2b5ba
Bypasses processing when given silent input
2022-11-29 15:38:14 +00:00
Geraint
901df7bf97
Remove unused weights
2022-11-29 15:38:14 +00:00
Geraint
8787460488
Two-pass setup
2022-11-29 15:38:14 +00:00
Geraint
96eeee7a6f
Start replacing order-sorting with two-pass setup
2022-11-29 15:36:49 +00:00
Geraint
598d037212
Remove custom pitch-map, add order-sorting
2022-11-27 11:25:35 +00:00
Geraint
c6db62ca6e
Add license/readme
2022-11-25 14:17:40 +00:00
Geraint
e244e31614
Initial commit: pitch-shift works OK, time-stretch could be better
2022-11-25 13:45:55 +00:00