fixed slidebasefreq

This commit is contained in:
aprilnightk 2025-09-13 11:18:51 +03:00
parent 4b608b2584
commit c9487762b2
2 changed files with 10 additions and 5 deletions

View file

@ -1,4 +1,4 @@
ln = s.sec(4)
ln = s.sec(6)
s.endtick(ln)
@ -9,10 +9,12 @@ left.setpos(0, -0.3, 0, 0)
right.setpos(0, 0.3, 0, 0)
tr1 = s.node()
tr1.setbasefreq(ln, s.note("C4"))
tr1.setbasefreq(0, s.note("E4"))
tr1.slidebasefreq(s.sec(2), s.sec(4), s.note("E4"), s.note("C4"))
tr1.setbasefreq(s.sec(4), s.note("C4"))
tr1.sine(0, ln)
tr1.setgain(0, 0.3)
tr1.setpos(0, 100, 0, 0)
s.air(tr1, [left])
s.air(tr1, [right])
s.wire(tr1, [left])
s.wire(tr1, [right])

View file

@ -255,7 +255,10 @@ pub const Activity = struct {
const startfreq = self.operands[0];
const endfreq = self.operands[1];
const freq = utility.interpolate(current_tick, start_tick, end_tick, startfreq, endfreq);
const x = (current_tick * (current_tick / 2)) - (start_tick*current_tick);
const xx = ((endfreq - startfreq) / (end_tick - start_tick)) * x;
const freq = ((startfreq * current_tick) + xx) / current_tick;
try self.soundnode.s("basefreq", freq);
}