Strudelify

Dio mio no

Battisti

KeyA majorTempo120 bpm
0:00/0:00
// Dio mio no — Battisti
// 120 bpm, 2/2, key A major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Full arrangement: all 137 bars on a 16-step grid, each part at one level. Source detail keeps the original performance.
// note: Guitar parts that double another keep only their own notes (fills, solos): Chit. muta.
setcpm(120/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 · acoustic guitar steel · "Chit." · E7 Bm7 E7
const acoustic_guitar_steel = note("[b3,d4,e4,g#4,b4]@2 [b3,d4,e4,g#4,b4]@2 [b3,d4,e4,g#4,b4]@2 [b3,d4,e4,g#4,b4] [b3,d4,e4,g#4,b4]@2 [b3,d4,e4,g#4,b4] [b3,d4,e4,g#4,b4]@2 [b3,d4,e4,a4,b4]@2 [b3,d4,e4,g#4,b4]@2")
  .s("gm_acoustic_guitar_steel").gain(0.04)

// bass · electric bass finger · "Basso"
const bass = note("e2@2 e2@2 e2@2 e2 e2@2 e2 e2@2 e2@2 e2@2").s("gm_electric_bass_finger").gain(0.04)

// other · electric guitar muted · "Chit. muta"
const electric_guitar_muted = note("<~@67 [~@4 e5 ~@3] ~@3 [~@2 e5 ~] ~@2 [~@2 e5 ~]!4 ~@59>")
  .s("gm_electric_guitar_muted").gain(0.64)

// other · drawbar organ · "Org."
const drawbar_organ = note("<~@17 A@2 B@2 A@2 B@2 ~@65 A@2 B@2 A@2 B@2 ~@39>".pickRestart({
  A: "[~@5 b4 c#5 e5@3 ~@6]/2", B: "[~@4 b4 e5@2 e5@3 ~@6]/2",
})).s("gm_drawbar_organ").gain(0.64)

stack(acoustic_guitar_steel, bass, electric_guitar_muted, drawbar_organ)

More by Battisti