wip: ArrangerStandalone

This commit is contained in:
🪞👃🪞 2024-08-21 21:03:46 +03:00
parent 1104093395
commit 3cbb2d2e0b
19 changed files with 165 additions and 231 deletions

View file

@ -29,7 +29,7 @@ impl Timebase {
self.rate.load(Ordering::Relaxed)
}
#[inline] fn usec_per_frame (&self) -> f64 {
1_000_000 as f64 / self.rate() as f64
1_000_000f64 / self.rate()
}
#[inline] pub fn frame_to_usec (&self, frame: f64) -> f64 {
frame * self.usec_per_frame()
@ -43,10 +43,10 @@ impl Timebase {
self.bpm.store(bpm, Ordering::Relaxed)
}
#[inline] fn usec_per_beat (&self) -> f64 {
60_000_000f64 / self.bpm() as f64
60_000_000f64 / self.bpm()
}
#[inline] fn beat_per_second (&self) -> f64 {
self.bpm() as f64 / 60000000.0
self.bpm() / 60000000.0
}
/// Pulses per beat
@ -54,10 +54,10 @@ impl Timebase {
self.ppq.load(Ordering::Relaxed)
}
#[inline] pub fn pulse_per_frame (&self) -> f64 {
self.usec_per_pulse() / self.usec_per_frame() as f64
self.usec_per_pulse() / self.usec_per_frame()
}
#[inline] pub fn usec_per_pulse (&self) -> f64 {
self.usec_per_beat() / self.ppq() as f64
self.usec_per_beat() / self.ppq()
}
#[inline] pub fn pulse_to_frame (&self, pulses: f64) -> f64 {
self.pulse_per_frame() * pulses
@ -69,10 +69,10 @@ impl Timebase {
4.0 * self.usec_per_beat() * num / den
}
#[inline] pub fn frames_per_pulse (&self) -> f64 {
self.rate() as f64 / self.pulses_per_second()
self.rate() / self.pulses_per_second()
}
#[inline] fn pulses_per_second (&self) -> f64 {
self.beat_per_second() * self.ppq() as f64
self.beat_per_second() * self.ppq()
}
#[inline] pub fn note_to_frame (&self, note: (f64, f64)) -> f64 {