Strudelify
KeyB♭ majorTempo120 bpm
0:00/0:00
// ding dong merrily on high — 16th century French melodyharmonised by Charles Wood
// 120 bpm, 2/2, key Bb major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: ch 4 "Bass" named as a bass, played on electric bass finger (its tuba patch is not one)
// note: Transcription provider: pdmx. https://musescore.com/score/406296; license: https://creativecommons.org/publicdomain/mark/1.0/
// note: Full arrangement: all 24 bars on a 16-step grid, each part at one level. Source detail keeps the original performance.
setcpm(120/4)

// Notation: c3@3 lasts 3 steps · ~ is a rest.
// A part's distinct bars are riffs (A, B, C...) played in order: edit a riff to change every repeat.

// other · alto sax · "Alto"
const alto_sax = note("<A B C D A B C D E F G H I J C D E F G H I J C D>".pickRestart({
  A: "f4@2 f4@2 g4!2 eb4!2", B: "c4@3 f4", C: "f4 eb4 c4 f4", D: "f4!2", E: "~ f4@2 bb4", F: "bb4 a4 g4 f4 g4 f4 eb4@2",
  G: "~@2 f4 eb4 d4@2 g4@2", H: "g4 f4 eb4 d4 eb4 d4 c4@2", I: "~@2 d4 c4 bb3@2 eb4@2", J: "c4 d4 eb4 d4 c4@2 f4@2",
})).s("gm_alto_sax").gain(0.3).pan(0.9)

// other · trombone · "Tenor"
const trombone = note("<A B C D A B C D E F G H I J C D E F G H I J C D>".pickRestart({
  A: "d4@2 bb3@2 g3!2 c4 bb3", B: "a3@3 bb3", C: "bb3!2 c4!2", D: "d4!2", E: "~ c4 d4 bb3", F: "c4 bb3@2 c4",
  G: "~ a3 bb3 g3", H: "a3 g3@2 a3", I: "~ f3 g3!2", J: "c4 bb3 c4 d4",
})).s("gm_trombone").gain(0.3).pan(0.7)

// bass · electric bass finger · "Bass"
const bass = note("<A B C D A B C D E F G H I J C D E F G H I J C D>".pickRestart({
  A: "bb2@2 d3@2 eb3!2 c3!2", B: "f3@3 d3", C: "eb3 g3 f3!2", D: "bb2!2", E: "~ a3 bb3 d3", F: "c3@2 d3@2 eb3 d3 c3@2",
  G: "~ f3 g3 bb2", H: "a2@2 bb2@2 c3 bb2 a2@2", I: "~ d3 eb3 g3", J: "f3 g3 a3 bb3",
})).s("gm_electric_bass_finger").gain(0.3).pan(0.4)

stack(alto_sax, trombone, bass)