Strudelify

Blue Tango

Vaughn

KeyD majorTempo118 bpm
0:00/0:00
// Blue Tango — Vaughn
// 118 bpm, 4/4, key D major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: duplicate parts dropped: ch 8 "Chords" synth strings 1 (copy of ch 7 "Voice" tremolo strings)
// note: Full arrangement: all 71 bars on a 16-step grid, each part at one level. Source detail keeps the original performance.
setcpm(118/4)

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

// chords · drawbar organ · "Chords"
const drawbar_organ = note(`<
  ~@3 A B@2 C@2 D@2 E@2 B@2 C@2 F G F H I@2 J@2 K L M@2 I@2 J@2 K L N O P@2 B@2 C@2 D@2 E@2 B@2 C@2 F G F H I@2 J@2 K L
  M@2 I@2 J@2 K L Q R ~
>`.pickRestart({
  A: "~@3 [a4,c#5,e5,g5]", B: "[[d4,f#4,a4] [g4,b4,d5] [d4,f#4,a4]@6]/2", C: "[[f#4,a4,c#5] [a4,c#5,e5,g5]@3]/2",
  D: "[[d4,f#4,a4] [g4,b4,d5] [d4,f#4,a4]@5 [a4,c#5,e5,g5]]/2", E: "[[a4,c5,d#5,f#5] [a4,c#5,e5,g5]@7]/2",
  F: "[d4,f#4,a4]", G: "[a4,c#5,e5,g5]", H: "[d4,f#4,a4,c5]", I: "[g4,b4,d5]/2", J: "[d4,f#4,a4]/2",
  K: "[a4,c#5,e5,g5] [g4,b4,d5]", L: "[a4,c5,d#5,f#5] [a4,c#5,e5,g5]", M: "[[d4,f#4,a4]@3 [d4,f#4,a4,c5]]/2",
  N: "[d4,f#4,a4]@3 [d4,f#4,a4,c5]", O: "[e4,g4,b4,d5] [a4,c#5,e5,g5]", P: "[d4,f#4,a4]@3 [a4,c#5,e5,g5]",
  Q: "[d4,f#4,a4]@3 [d4,f#4,a4]", R: "[d4,f#4,a4,b4]",
})).s("gm_drawbar_organ").gain(0.23)

// drums · tambourine
const tambourine = s("tb").struct("<A@2 B C A@21 D E@2 A@8 B C A@21 D E@2 A@7 B ~>".pickRestart({
  A: "x ~@2 x!2 ~ x ~", B: "x ~@2 x", C: "x!4", D: "x ~@2 x ~@2 x ~", E: "x!5 ~ x ~",
})).gain(0.1)

// drums · cabasa
const cabasa = s("cabasa:4").struct("<A@2 B C A@21 D E@2 A@8 B C A@21 D E@2 A@7 B ~>".pickRestart({
  A: "x ~@2 x!2 ~ x ~", B: "x ~@2 x", C: "x!4", D: "x ~@2 x ~@2 x ~", E: "x!5 ~ x ~",
})).gain(0.49)

stack(drawbar_organ, tambourine, cabasa)

More by Vaughn