Strudelify

Look Into My Eyes

Bone

KeyD♭ majorTempo144 bpm
0:00/0:00
// Look Into My Eyes — Bone
// 144.1 bpm, 4/4, key C# major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: ch 14 "Bass 2" named as a bass, played on electric bass finger (its piano patch is not one); ch 1 "Wa-Wa Guitar" named as a guitar, played on electric guitar clean (its lead 5 charang patch is not one)
// note: duplicate parts dropped: ch 14 "Bass 2" electric bass finger (copy of ch 16 "Bass 1" slap bass 2)
// note: Full arrangement: all 153 bars on a 24-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(144.1/4)

// Notation: c3@3 lasts 3 steps · ~ is a rest · [c3,e3] is a chord · "a, b" plays two voices at once · [...]/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.

// bass · slap bass 2 · "Bass 1"
const bass = note(`<
  A@2 B@2 A@2 B@2 A@2 B@2 A@2 B@2 A@2 B@2 A@2 B@2 A@2 B@2 ~@3 C A@2 B@2 A@2 D@2 A@2 B@2 A@2 B@2 A@2 B@2 A@2 B@2 A@2 B@2
  A@2 D@2 A@2 E@2 ~@3 C A@2 B@2 A@2 B@2 A@2 B@2 A@2 B@2 A@2 B@2 A@2 F@2 A@2 B@2 G@2 H@2 I@2 H@2 I@2 H@2 I@2 H@2 I@2 J@2
  I@2 H@2 I@2 K@2 I@2 H@2 ~@3 L I@2 H@2 I@2 H@2 I@2 H@2 I@2 H@2 ~
>`.pickRestart({
  A: "[bb1@2 bb1@2 ~ c2 ~ db2@8 bb1]/2", B: "[eb2@2 eb2@2 ~ f2 ~ gb2@4 f2!2 f2@2 f2]/2",
  C: "~@9 db2@2 ~ gb2@3 db2@2 ~ f2@2 ~ db2@3",
  D: "[eb2@6 eb2@6 ~@3 f2@3 ~@3 gb2@12 db2@2 ~ gb2@3 db2@2 ~ f2@2 ~ db2@3]/2",
  E: "[eb2@2 eb2@2 ~ f2 ~ gb2@4 eb2 gb2 f2@2 db2]/2", F: "[eb2@2 eb2@2 ~ f2 ~ gb2@4 ~@5]/2",
  G: "[bb1@6 bb1@6 ~@4 c2@3 ~@3 db2@24 bb1@2]/2", H: "[~ eb2@6 eb2@6 ~@3 f2@3 ~@3 gb2@12 f2@3 f2@3 f2@6 f2@2]/2",
  I: "[~ bb1@6 bb1@6 ~@3 c2@3 ~@3 db2@24 bb1@2]/2", J: "[~ eb2@6 eb2@6 ~@3 f2@3 ~@3 gb2@12 eb2@3 gb2@3 f2@6 db2@2]/2",
  K: "[~ eb2@6 eb2@6 ~@3 f2@3 ~@3 gb2@12 db2@2 ~ gb2@3 db2@2 ~ f2@2 ~ db2@2]/2",
  L: "~@10 db2@2 ~ gb2@3 db2@2 ~ f2@2 ~ db2@2",
})).s("gm_slap_bass_2").gain(0.64)

// other · string ensemble 1 · "Strings"
const string_ensemble_1 = note(`<
  ~@8 A@2 B@2 A@2 B@2 ~@16 C@2 D@2 C@2 D@2 A@2 B@2 A@2 B@2 ~@24 A@2 B@2 A@2 B@2 ~@16 C@2 D@2 E@2 F@2 G@2 H@2 G@2 H@2
  ~@23 I G@2 H@2 G@2 H@2 G@2 H@2 G@2 H@2 ~
>`.pickRestart({
  A: "[bb3@15 f4]/2", B: "[eb4@13 f4@3]/2", C: "[bb2@15 f3]/2", D: "[eb3@13 f3@3]/2", E: "[bb2@45 ~ f3@2]/2",
  F: "[~ eb3@39 f3@8]/2", G: "[~ bb3@45 f4@2]/2", H: "[~ eb4@39 f4@8]/2", I: "~@13 db4@6 eb4@5",
})).s("gm_string_ensemble_1").gain(0.14)

// other · electric guitar jazz · "Guitar"
const electric_guitar_jazz = note(`<
  A B@2 C@2 B@2 D ~@32 A B@2 C@2 B@2 D ~@24 A B@2 C@2 B@2 D ~@24 E F@2 G@2 F@2 H ~@24 E F@2 G@2 F@2 H E F@2 G@2 F@2 H ~
>`.pickRestart({
  A: "~ f5 bb4@2 db5@3 f5", B: "[bb4@2 db5@7 f5 bb4@2 db5@3 f5]/2",
  C: "[bb4@2 ~ bb4 f5@2 ~@2 bb4 f5 bb4@2 db5@3 f5, ~@2 db5@4 db5@3 ~@7]/2", D: "bb4@2 db5@2 db5 eb5 e5 f5",
  E: "~@4 f5@3 bb4@6 db5@9 f5@2", F: "[~ bb4@6 db5@21 f5@3 bb4@6 db5@9 f5@2]/2",
  G: "[~ bb4@6 ~@3 bb4@3 f5@6 ~@6 bb4@3 f5@3 bb4@6 db5@9 f5@2, ~@7 db5@12 db5@9 ~@20]/2",
  H: "~ bb4@6 db5@6 db5@3 eb5@3 e5@3 f5@2",
})).s("gm_electric_guitar_jazz").gain(0.14)

// other · vibraphone · "Vibe Hit"
const vibraphone = note(`<
  ~ A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A
  ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 B ~@3 B ~@3 B ~@3 B ~@3 B ~@3 B ~@3 B ~@3 B ~@3 B ~@3 B ~@3 B ~@3 B ~@3 B ~@3
>`.pickRestart({
  A: "~@12 db7@11 ~", B: "~@13 db7@11",
})).s("gm_vibraphone").gain(0.8)

// chords · pan flute · "Flute"
const pan_flute = note(`<
  ~@4 A B ~@6 A B ~@6 A B ~@6 A B ~@6 A B ~@6 A B ~@6 A B ~@6 A B ~@6 A B ~@6 A B ~@6 A B ~@6 A B ~@6 C D ~@6 C D ~@6 C
  D ~@6 C D ~@6 C D ~@6 C D ~@6 C D ~@3
>`.pickRestart({
  A: "~@12 [db4,f4]@2 ~@2 [db4,f4] ~@2 [db4,f4] ~@2 [db4,f4] ~", B: "[db4,f4] ~@11",
  C: "~@13 [db4,f4]@2 ~ [db4,f4] ~@2 [db4,f4] ~@2 [db4,f4] ~", D: "~ [db4,f4]@2 ~@21",
})).s("gm_pan_flute").gain(0.25)

// chords · electric guitar clean · "Wa-Wa Guitar"
const electric_guitar_clean = note(`<
  ~@5 A ~@7 A ~@7 A ~@7 A ~@7 B ~@7 A ~@7 A ~@7 A ~@7 A ~@7 A ~@7 A ~@7 A ~@7 C ~@7 C ~@7 C ~@7 C ~@7 C ~@7 C ~@7 C ~@3
>`.pickRestart({
  A: "[db4,f4]@2 ~@2 [db4,f4] ~@2 [db4,f4] ~@2 [db4,f4] ~ [db4,f4] ~@2 [db4,f4] ~@2 [db4,f4] ~@5", // Db
  B: "[db4,f4]@2 ~@2 [db4,f4] ~@2 [db4,f4] ~@4 [db4,f4] ~@5 [db4,f4] ~@5", // Db
  C: "~ [db4,f4]@2 ~ [db4,f4] ~@2 [db4,f4] ~@2 [db4,f4] ~@2 [db4,f4] ~@2 [db4,f4] ~@2 [db4,f4] ~@4", // Db
})).s("gm_electric_guitar_clean").gain(0.24)

// chords · electric guitar clean · "Wa-Wa Guitar" · soft notes
const electric_guitar_clean_2 = note(`<
  ~@5 A ~@7 A ~@7 A ~@7 A ~@7 B ~@7 A ~@7 A ~@7 A ~@7 A ~@7 A ~@7 A ~@7 A ~@7 C ~@7 C ~@7 C ~@7 C ~@7 C ~@7 C ~@7 C ~@3
>`.pickRestart({
  A: "~@21 [db4,f4] ~@2", B: "~@10 [db4,f4] ~@4 [db4,f4] ~@5 [db4,f4] ~@2", C: "~@22 [db4,f4] ~",
})).s("gm_electric_guitar_clean").gain(0.12)

// drums · kick
const kick = s("bd").struct(`<
  A B A C A B A C A B A C A B A C A B A C A B A C A B A C A B A C A B A C ~@3 D A B A C A B A C A B A C A B A C A ~@2 E
  A B A C A ~@2 E A B A C A B A C A B A C A B A C A B A C A B A C A B A ~ A B A C F G H I H G H I H G H I H G H I H G ~
  J H G H I H G H I H G H I H G H ~ H G H I H G H I H G H I H G H I ~
>`.pickRestart({
  A: "x ~ x ~@2 x ~ x", B: "~@7 x", C: "~@3 x ~ x ~ x", D: "~@5 x!3", E: "~@5 x ~ x", F: "x ~@2 x ~@4 x ~@2 x",
  G: "~@11 x", H: "~ x ~@5 x ~@8 x ~@5 x ~", I: "~@5 x ~@2 x ~@2 x", J: "~@8 x ~@2 x",
})).gain(0.64)

// drums · snare
const snare = s("sd").struct("<A@36 ~@3 A@19 ~ A@7 ~ A@28 ~ A@4 B@18 ~ B@16 ~ B@16 ~>".pickRestart({
  A: "~ x", B: "~@13 x ~@10",
})).gain(0.64)

// drums · cabasa
const cabasa = s("cabasa:4").struct("<A@36 ~@4 A@17 B ~ C A@5 B ~ C A@27 D A@4 E F@17 ~ G F@15 ~ F@16 ~>".pickRestart({
  A: "x ~ x!3 ~ x!2", B: "x ~ x!3 ~@3", C: "~@4 x ~ x!2", D: "x", E: "x ~@5 x ~@3 x ~@2 x ~@5 x ~@2 x ~",
  F: "~ x ~@5 x ~@2 x ~@2 x ~@5 x ~@2 x ~", G: "~@13 x ~@5 x ~@2 x ~",
})).gain(3.24)

stack(
  bass, string_ensemble_1, electric_guitar_jazz, vibraphone, pan_flute, electric_guitar_clean, electric_guitar_clean_2,
  kick, snare, cabasa
)

More by Bone