p-fields:
/* MOCKBEND - perform a time-varying transpose on a mono input signal using cubic spline interpolation p0 = output start time p1 = input start time p2 = output duration (time to end if negative) p3 = amplitude multiplier p4 = gen index for pitch curve p5 = input channel [optional, default is 0] p6 = percent to left [optional, default is .5] Assumes gen table 1 is amplitude curve for the note. */Sample scorefile:
rtsetparams(44100, 2); rtinput("/usr/share/sounds/login.wav"); load("MOCKBEND"); dur = DUR(0); amp = 1; pan = 0.5; /* amplitude curve */ setline(0,0, 1, 1, 90, 1, 100, 0); /* transpose from 4 semitones up to 8 down - stored in gen slot 2 */ makegen(-2, 18, 512, 1,.4, 512,-.8); MOCKBEND(0, 0, dur, amp, 2, 0, pan);