It's getting there, working on parameter adjustments at the moment You basically hold the note step, or several note steps at once (limited by fingers) and adjust parameters with the sliders.trevormeier wrote: ↑Sun Oct 02, 2022 2:32 am I’m interested in the step sequencer once you’ve had a few turns at it. One thing I’d love is something similar to parameter locks on Elektron devices. So, holding down a step and being able to affect its microtiming, FX sends or device parameters for just that step.
Whatever you put together, I’m interested to see how it turns out. Thanks for sharing!
Code: Select all
val proxies: Vector[Option[GetSetProxy[NoteStep, Double]]] = Vector(
// -- expressions
P(_.velocity(), (s, v) => s.setVelocity(v)),
P(_.releaseVelocity(), (s, v) => s.setReleaseVelocity(v)),
P(_.velocitySpread(), (s, v) => s.setVelocitySpread(v)),
(), // the missing note start, reserved for future when this hopefully gets added
P(_.duration(), (s, v) => s.setDuration(v)),
P(_.pan(), (s, v) => s.setPan(v)),
P(_.timbre(), (s, v) => s.setTimbre(v)),
P(_.pressure(), (s, v) => s.setPressure(v)),
// -- operators
P(_.chance(), (s, v) => s.setChance(v)),
// P(_.occurrence().ordinal() / NoteOccurrence.values().length.toDouble, (s, v) => s.setOccurrence(NoteOccurrence.values.apply((v * 10).toInt))),
// P(_.isRecurrenceEnabled(), (s, v) => s.setChance(v)),
// P(_.recurrenceLength() / 9.0, (s, v) =>
// val rec = (v * 9).toInt
// if (rec == 0)
// s.setIsRecurrenceEnabled(false)
// else
// s.setIsRecurrenceEnabled(true)
// s.setRecurrence
// ),
(), // occurence
(), // recurrence
(), // recurrence
P(_.repeatCount(), (s, v) => s.setChance(v)),
)