Strudelify

goodbye

Billie Eilish

KeyF♯ minorTempo55 bpm
0:00/0:00
// goodbye — Billie Eilish
// 55 bpm, 4/4, key F# minor. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Transcription provider: pdmx. https://musescore.com/score/5834050; license: https://creativecommons.org/publicdomain/zero/1.0/
// note: Full arrangement: all 26 bars on a 16-step grid, each part at one level. Source detail keeps the original performance.
setcpm(55/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.

// chords · synth strings 1 · "String Synthesizer"
const synth_strings_1 = note("<~ A B C D E F G H I J K L M J N O P J Q R S T U ~@2>".pickRestart({
  A: "[e4,g#4] [d4,g#4]", B: "[f#3,g#4,a4,c#5] [f3,g#4,a4,c#5]", C: "[e3,g#4,a4,c#5] [d#3,c#4,g4,a#4]",
  D: "[b2,b3,d4,f#4]", E: "[g#3,d4]", F: "[f#3,c#4,g#4,a4,c#5] [f3,c#4,g#4,c#5]",
  G: "[e3,c#4,e4,g#4,c#5] [d#3,g3,c#4,d#4]", H: "[b3,d4,f#4,g#4] [f#3,b3,d4,f#4]", I: "[g#3,b3,e4,g#5] [d3,g#3,d4]",
  J: "[a3,c#4,f#4] [c#4,f4,c#5,a5]", K: "[e4,g#4,b4,a5] [d#4,g4,c#5,d#5,a5]", L: "[b3,f#4,b4,f#5] [f#3,b3,d4]",
  M: "[e4,g#4,b4,a5] [e4,b4,e5,g#5]@3 [b3,d4,g#4,d5]@4", N: "[e4,g#4,a5] [d#4,g4,c#5,d#5,a5]", O: "[b3,d4,f#4,b4]",
  P: "[b3,d4,e4,g#4] [d3,g#3,b3,d4]", Q: "[e4,g#4,b4,a5] [c#4,d#4,b4]",
  R: "[b3,d4,f#4,b4]@2 [f#3,b3,d4,f#4] [f#3,b3,b4,f#5]", S: "[e4,g#4,b4]@4 g#6 a6 [g#4,b6]@2, ~ [b3,d4,d5], ~@2 g#4 ~",
  T: "[a3,c#4,f#4,c#7] [a3,c#4,f4,b5]", U: "[a3,c#4,e4,c#6] [c#4,d#4,g4,b5]",
})).s("gm_synth_strings_1").gain(0.25)

// bass · electric bass pick · "Bass Guitar (Tablature)"
const bass = note("<~@4 A B C D A B C D A B C D E F C D G B C H I@2>".pickRestart({
  A: "f#1@4 f#1 f#1@3", B: "e1@4 d2 d2@2 d2", C: "f#1 f1", D: "e1 e1@3 d#2@4", E: "f#1@2 f#1@2 f#1!2 f#1@2",
  F: "e1@2 e1@2 d2!4", G: "b1@2 b1!2", H: "e1 e1@3 d#2@2 d#2@2", I: "b1/2",
})).s("gm_electric_bass_pick").gain(0.3)

// drums · kick
const kick = s("bd").struct("<~@17 [~@2 x ~@3 x!2] [x!2 ~ x] [~ x ~ x]!5 ~@2>").gain(0.25)

stack(synth_strings_1, bass, kick)

More by Billie Eilish