helio-fm / helio-sequencer

Libre music sequencer for desktop and mobile platforms
https://helio.fm
GNU General Public License v3.0
3.13k stars 115 forks source link

Request for Time-Stretching feature #316

Open vespadj opened 3 months ago

vespadj commented 3 months ago

Hello,

I noticed that there is no time-stretching or elastic tempo feature available to adapt freely recorded MIDI tracks to a new BPM grid, (piano and sustan pedal). This functionality would be incredibly useful for aligning tracks that were recorded without a metronome.

Could you please consider adding this feature in a future update? Or this can be achievement with some workaround? (tempo mapping?)

Thank you for your attention!

Best regards.

peterrudenko commented 2 months ago

I guess the closest workaround would be to quantize the notes after recording them (hotkeys from Control + 1 to Control + 6 depending on which accuracy you need).

But not sure if I understand you correctly, do you have any examples of how it is implemented elsewhere?

vespadj commented 2 months ago

I try to explain better. I recorded some years ago a MIDI, and I didn't care about metronome (default 120 bpm), but I'm played with about 80 bpm, with ritardando and accelerando, too. I would like to edit the midi file to catch in a beat grid. In piano roll I can select a range, then move start note to a bar line, then stretch the latest note end with Shift key. It's work... but with a little piece of song, one by one. I'm thinking about some audio DAW (like the old dear Mixmeister): user can set manual marker on wave beat (of a old soul pop song, not played with metronome) and the tools stretch every range by 4/4 (or 8/4, ...) to target tempo (e.g.: 94 bpm), so now song is with constant and precise bpm. After that, Quantize tool can work fine.