Strudelify

feeling good

Muse

KeyD♭ majorTempo108 bpm
0:00/0:00
// feeling good — Muse
// 108 bpm, 12/8, key Db major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Transcription provider: pdmx. https://musescore.com/score/5891496; license: https://creativecommons.org/publicdomain/zero/1.0/
// note: Full arrangement: all 44 bars on a 24-step grid, each part at one level. Source detail keeps the original performance.
setcpm(108/6)

// 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.

// other · violin
const violin = note("<~@2 A B C D@2 E F G H I ~@9 J K L M N@2 O@2 P Q R S T A B C D@2 E F G H U>".pickRestart({
  A: "~@3 eb4 gb4 ab4 bb4@6", B: "ab4!4 eb4 gb4 ab4@6", C: "~@3 eb4!2 db4 eb4 gb4 ab4 bb4@3, ~@18 ab4 ~@5",
  D: "[~ db5@2 bb4!2 a4 bb4@3 ~ gb5@6 eb5 db5 a4 ab4 ab4@2 gb4 eb4]/2",
  E: "~@2 eb4@2 gb4@2 ab4@2 a4@2 ab4@2 gb4@6 ~@4 eb4 db4", F: "eb4@2 gb4@2 gb4 eb4 gb4@2 bb4@2 bb4 a4",
  G: "bb4@2 db5@4 ~@2 bb4 ab4 gb4 eb4", H: "ab4@12 ~@4 eb4!2 ab4@2 gb4@2 eb4@2", I: "eb4 ~",
  J: "~@16 eb4!2 ab4@2 gb4@2 eb4@2", K: "eb4@6 a4 ab4 a4 ab4 a4 ab4", L: "gb4 eb4!2 eb4@2 eb4@7, ~@6 d4 ~@3 d4 ~@13",
  M: "~@2 a4@2 a4@2 a4@2 a4 a4@3 a4 a4@2 bb4@9",
  N: "[~@2 db5@4 bb4@2 bb4@2 a4@2 bb4@2 a4@4 a4@2 gb4@2 eb4@4 ~@4 bb4 a4@2 bb4@3 bb4@2 a4@2 bb4 a4 bb4@6]/2",
  O: "[~ db5@2 bb4!2 a4 bb4@3 ~ bb4@6 ab4 gb4 ab4 gb4 eb4 ab4@3]/2", P: "~@2 eb4 gb4 ab4 bb4@4 ~ eb4!2",
  Q: "gb4@2 ab4@2 ab4 gb4 ab4@2 bb4@2 bb4 ab4", R: "bb4@2 db5@7 bb4@3", S: "bb5", T: "bb5 a5@3 bb5@8, a5 ~@23",
  U: "eb4",
})).s("gm_violin").gain(0.4)

// other · cello · "Violoncello"
const cello = note(`<
  A B C D C E C F G H I C D C D C E C F G H I J@2 K L K L M N O P K D C D C E C F G H I Q
>`.pickRestart({
  A: "gb3@5 gb3 e3@5 e3", B: "d3@5 d3 db3@3 e3 db3 e3", C: "eb3@5 eb3 db3@5 db3", D: "b2@5 b2 bb2@3 db3 bb2 db3",
  E: "b2@5 b2 bb2@3 bb2@3", F: "c3@5 c3 b2@5 b2", G: "bb2@5 bb2 ab2@5 ab2", H: "gb2@5 gb2 f2@6",
  I: "ab2@4 ab2 a2 bb2 ~@5", J: "eb2!2", K: "eb2@5 eb2 db2@5 db2", L: "b2@5 b2 bb2@3 d3@2 f3", M: "gb2@5 gb2 eb2@5 eb2",
  N: "b2@5 b2 ab2@5 eb3", O: "gb3@5 gb3 eb3@3 gb3@2 bb2", P: "b2@5 b2 bb2@6", Q: "eb2",
})).s("gm_cello").gain(0.45)

// chords · piano
const piano = note("<~@2 A@3 B C D E F G A@5 B C D E F G H I ~ J K ~ L M N ~ A@5 B C D E F G O>".pickRestart({
  A: "[bb3,eb4,gb4]!12", B: "[bb3,eb4,gb4]!6 [bb3,eb4,f4]!3 [bb3,d4,f4]!3", C: "[gb4,bb4,eb5]!6 [gb4,bb4,db5]!6",
  D: "[eb4,gb4,c5]!6 [eb4,gb4,b4]!6", E: "[eb4,gb4,bb4]!12", F: "[eb4,gb4,bb4]!6 [eb4,f4,bb4]!6",
  G: "[eb4,gb4,bb4]!6 [eb4,f4,ab4] ~@5", H: "~@4 gb4 ab4 eb4 ab4 a4 eb4!3",
  I: "gb4@2 eb4@2 eb4@2 eb4@3 ~ eb4@13 ~, ~@6 d4 ~@3 d4 ~@13", J: "~@7 eb4 gb4 ab4@2 a4", K: "bb4@23 ~",
  L: "~@8 bb4@2 db5@2 eb5@9 ~ bb4@2", M: "b4@11 ~@9 [gb4,ab4]@2 a4@2", N: "bb4@9 ~ bb4@2 eb5@6 ~@6",
  O: "[eb2,eb3]@23 ~", // Eb
})).s("gm_piano").gain(0.3)

stack(violin, cello, piano)

More by Muse