Lorenzo Sutton <lorenzofsutton@xxxxxxxxx> writes: > Now... this is a very, very interesting new thread... > >> On Thu, Jan 27, 2022 at 5:27 PM Tim <termtech@xxxxxxxxxx >> <mailto:termtech@xxxxxxxxxx>> wrote: >> On 1/27/22 1:08 PM, Paul Davis wrote: >> Hiya Paul. Could you explain that a bit more? >> Human exponential vs. linear, I don't quite understand. >> Let's suppose you are playing the simplest of beats, let's say you >> just play a note/tone at 120bpm. There's 0.5 seconds between your >> playing. >> To do a linear speedup, you would gradually reduce the time between >> notes, maybe like this: 0.5, 0.45, 0.40, 0.35, 0.30 and so on > > I think most software users have always 'adapted' linear > tempo-changing and ramping interfaces to try and mimic somewhat > 'realistic' human behaviour and indeed that can be challenging :-) > > What I'm wondering is: when a software offers exponential ramps > etc. isn't that just a user interface? i.e. how the software then > calculates the ramp values automatically for the users and sets the > BPM at certain instants depending on the granularity? > In that case I'd assume the software is then exposing the (calculated) > BPM to e.g. plugins or a transport mechanism if it were the 'master'? I cannot speak in general terms, but you need to keep several sources with different note lengths in sync. LilyPond, a music typesetter, does this by using exact rational numbers. Exponential speedups/slowdowns are pretty bad at managing the mapping of a rational note length grid to a rational timeline, with nominators and denominators of manageable size. So one needs to be somewhat careful about the formulas to employ. -- David Kastrup _______________________________________________ Linux-audio-user mailing list Linux-audio-user@xxxxxxxxxxxxxxxxxxxx https://lists.linuxaudio.org/listinfo/linux-audio-user