Strudelify

i dont want to be

Gavin Degraw

KeyE♭ majorTempo76 bpm
0:00/0:00
// i dont want to be — Gavin Degraw
// 76 bpm, 4/4, key Eb major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: metre changes (4/4 at bar 1, 2/4 at bar 19, 4/4 at bar 20, 2/4 at bar 46, ...) are rendered on a constant 4/4 grid of one bar per cycle
// note: Transcription provider: pdmx. https://musescore.com/score/2527361; license: https://creativecommons.org/publicdomain/zero/1.0/
// note: Full arrangement: all 64 bars on a 16-step grid, each part at one level. Source detail keeps the original performance.
setcpm(76/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 · piano
const piano = note(`<
  A@3 B C D C E F G F H I J K L M N O P@2 Q R@8 S T U V W X Y Z AA AB AC AB AD AE@2 AF AG AH AI AJ AI AK AI AJ AI AK AI
  AJ AI AK AI AJ AI AK
>`.pickRestart({
  A: "[bb2,f3,bb3] [c3,g3,c4]@2 [bb2,f3,bb3] [c3,g3,c4]@2 [bb2,f3,bb3] [c3,g3,c4]!2 [bb2,f3,bb3] [c3,g3,c4]@2 [bb2,f3,bb3]!2 [c3,g3,c4]@2", // Bb5 C5 Bb5 C5 Bb5 C5 Bb5 C5 …
  B: "[bb2,f3,bb3] [c3,g3,c4]@2 [bb2,f3,bb3] [c3,g3,c4]@2 [bb2,f3,bb3] [c3,g3,c4]!2 [bb2,f3,bb3] [c3,g3,c4]@2 [bb2,f3,bb3]!2 [c3,g3,c4] [bb2,f3,bb3]", // Bb5 C5 Bb5 C5 Bb5 C5 Bb5 C5 …
  C: "[bb2,f3] [c3,g3]@2 [bb2,f3] [c3,g3]@2 [bb2,f3] [c3,g3]!2 [bb2,f3] [c3,g3]@2 [bb2,f3]!2 [c3,g3]@2, [c4,e4,g4,c5]", // Bb5 C5 Bb5 C5 Bb5 C5 Bb5 C5 …
  D: "[bb2,f3] [c3,g3]@2 [bb2,f3] [c3,g3]@2 [bb2,f3] [c3,g3]!2 [bb2,f3] [c3,g3]@2 [bb2,f3,bb3,d4,f4,bb4]@4, [c4,eb4,g4,c5]@11 ~@5", // Bb5 C5 Bb5 C5 Bb5 C5 Bb5 C5 …
  E: "[bb2,f3] [c3,g3]@2 [bb2,f3] [c3,g3]@2 [bb2,f3] [c3,g3]!2 [bb2,f3] [c3,g3]@2 [bb2,f3]@2 [c3,g3] [bb2,f3], [c4,eb4,g4,c5]@11 ~ [bb3,d4,f4,bb4]@4", // Bb5 C5 Bb5 C5 Bb5 C5 Bb5 C5 …
  F: "[bb2,f3] [c3,g3]@2 [bb2,f3] [c3,g3]@2 [bb2,f3] [c3,g3]!2 [bb2,f3] [c3,g3]@2 [bb2,f3]!2 [c3,g3]@2, [e4,g4,c5,e5]", // Bb5 C5 Bb5 C5 Bb5 C5 Bb5 C5 …
  G: "[bb2,f3] [c3,g3]@2 [bb2,f3] [c3,g3]@2 [bb2,f3] [c3,g3]!2 [bb2,f3] [c3,g3]@2 [bb2,f3,d4,f4,bb4,d5]@4, [eb4,g4,c5,eb5]@11 ~@5", // Bb5 C5 Bb5 C5 Bb5 C5 Bb5 C5 …
  H: "[bb2,f3] [c3,g3]@2 [bb2,f3] [c3,g3]@2 [bb2,f3] [c3,g3]!2 [bb2,f3] [c3,g3]@2 bb2@2 a2@2, [eb4,g4,c5,eb5]@11 ~ [d4,f4,bb4]@4", // Bb5 C5 Bb5 C5 Bb5 C5 Bb5 C5 …
  I: "ab2@2 ab2@2 [ab2,ab4,c5,f5]@3 g5 [g4,bb4,f5] eb5 [eb2,eb5]@2 [eb4,g4,c5] bb4 bb4@2, [c4,eb4,ab4]@2 ~@2 eb2 ~ eb2@2", // Fm Gm7 Eb Cm Ab
  J: "[d4,f4,bb4] g4 [bb2,g4]@2 [bb3,d4,f4] eb4 eb4@2 [c4,eb4] f4 [c3,g4]@2 [d3,d4,f4,bb4]@2 g4 f4, bb2 ~ bb2@2 c3 ~@2 bb2", // Bb Eb Bb Cm C5 Bb
  K: "ab2@2 ab2@2 [ab2,ab4,c5,f5]@3 g5 [g4,bb4,f5] eb5 [eb2,eb5]@2 [g4,c5] bb4 g4 [d4,f4,bb4], [ab3,c4,eb4]@2 ~@2 eb2 ~ eb2@2", // Fm Gm7 Eb C5 Bb Ab
  L: "[d4,f4,bb4] g4 [bb2,g4]@2 [d4,f4,bb4] c5 c5@2 c3@2 c3@2 d3@2 c3 bb2, bb2 ~ bb2@2 [eb4,g4,c5]@2 [d4,f4,bb4]@2", // Bb Eb Bb Cm Bb
  M: "ab2@2 ab2@2 [ab2,ab4,c5,f5]@3 g5 [g4,bb4,f5] eb5 [eb2,eb5]@2 [g4,c5]@2 bb4 g4, [c4,eb4,ab4]@2 ~@2 eb2 ~ eb2@2", // Fm Gm7 Eb C5 Ab
  N: "[d4,bb4] g4 f4 eb4 [bb2,d4,f4]@3 bb3 [c4,eb4] f4 g4 ~ [d3,d4,f4,c5]@2 eb5 [eb4,ab4,c5], bb2!2 ~@2 c3@2 ~ bb2", // Gm Bb Cm Dm7 Ab
  O: "ab2@2 ab2@2 [ab2,ab4,c5,f5]@3 g5 [g4,bb4,f5] eb5 [eb2,eb5]@2 [g4,c5] bb4 bb4@2, [eb4,ab4,c5]@2 ~@2 eb2 ~ eb2@2", // Fm Gm7 Eb C5 Ab
  P: "[[d4,g4] bb4 [bb2,c5]@2 ~@2 [c3,eb4,g4,c5]@2 [c3,eb4,g4,c5]@15 ~ [bb2,f3,c4,c5] ~ [c4,c5] [bb2,f3] [c3,g3]@2 [bb2,f3,c4,c5] [c3,g3], bb2@2 ~@23 [c3,g3]@2 ~ [c4,c5] ~@3]/2", // G5 Bbsus2 Cm Bbsus2 C Bb5 C5 Bbsus2 …
  Q: "[c3,g3,c4,c5] [bb2,f3] [c3,g3]@2 [bb2,f3,c4,c5] [bb2,f3] [c3,g3]@2 [bb2,f3,c4,c5] ~ [c4,c5] [bb2,f3] [c3,g3]@2 [bb2,f3,c4,c5] [c3,g3], ~@2 [c4,c5] ~@3 [c4,c5] ~@2 [c3,g3]@2 ~ [c4,c5] ~@3", // C5 Bb5 C5 Bbsus2 Bb5 C5 Bbsus2 C …
  R: "[[c3,g3,c4,c5] [bb2,f3] [c3,g3]@2 [c4,c5] ~ [c4,c5] ~ [bb2,f3] [c3,g3]@2 [bb2,f3] [c3,g3]@2 [bb2,f3] [c3,g3] [c3,g3] [bb2,f3] [c3,g3]@2 [bb2,f3]!2 [c3,g3]@2 [bb2,f3] [c3,g3]@2 [bb2,f3] [c3,g3]@2 [bb2,f3] [c3,g3] [c3,g3] [bb2,f3] [c3,g3]@2 [bb2,f3,bb3,d4,f4,bb4]@4 [bb2,f3] [c3,g3]@2 [bb2,f3] [c3,g3]@2 [bb2,f3] [c3,g3] [c3,g3] [bb2,f3] [c3,g3]@2 [bb2,f3]!2 [c3,g3]@2 [bb2,f3] [c3,g3]@2 [bb2,f3] [c3,g3]@2 [bb2,f3] [c3,g3] [c3,g3] [bb2,f3] [c3,g3]@2 [bb2,f3]@2 [c3,g3] [bb2,f3]!2 [c3,g3]@2 [bb2,f3] [c3,g3]@2 [bb2,f3] [c3,g3] [c3,g3] [bb2,f3] [c3,g3]@2 [bb2,f3]!2 [c3,g3]@2 [bb2,f3] [c3,g3]@2 [bb2,f3] [c3,g3]@2 [bb2,f3] [c3,g3] [c3,g3] [bb2,f3] [c3,g3]@2 [bb2,f3,d4,f4,bb4,d5]@4 [bb2,f3] [c3,g3]@2 [bb2,f3] [c3,g3]@2 [bb2,f3] [c3,g3] [c3,g3] [bb2,f3] [c3,g3]@2 [bb2,f3]!2 [c3,g3]@2 [bb2,f3] [c3,g3]@2 [bb2,f3] [c3,g3]@2 [bb2,f3] [c3,g3], ~@2 [c4,c5] ~ [bb2,f3]@4 [c4,e4,g4,c5]@16 [c4,eb4,g4,c5]@11 ~@5 [c4,e4,g4,c5]@16 [c4,eb4,g4,c5]@11 ~ [bb3,d4,f4,bb4]@4 [e4,g4,c5,e5]@16 [eb4,g4,c5,eb5]@11 ~@5 [e4,g4,c5,e5]@16 [eb4,g4,c5,eb5]@8]/8", // C5 Bb5 C5 C Bb5 C5 Bb5 C5 …
  S: "[c3,g3] [bb2,f3] [c3,g3]@2 bb2@2 a2@2 ab2@2 ab2@2 [ab2,ab4,c5,f5]@3 g5, ~ [d4,f4,bb4] [c4,eb4,ab4] ~", // C5 Bb5 C5 Fm Bb Ab
  T: "[g4,bb4,f5] eb5 [eb2,eb5]@2 [eb4,g4,c5] bb4 bb4@2 [d4,f4,bb4] g4 [bb2,g4]@2 [bb3,d4,f4] eb4 eb4@2, eb2 ~ eb2@2 bb2 ~ bb2@2", // Gm7 Eb Cm Bb Eb Bb
  U: "[c4,eb4] f4 [c3,g4]@2 [d3,d4,f4,bb4]@2 g4 f4 ab2@2 ab2@2 [ab2,ab4,c5,f5]@3 g5, c3 ~@2 bb2 [ab3,c4,eb4]@2 ~@2", // Cm C5 Bb Fm Ab
  V: "[g4,bb4,f5] eb5 [eb2,eb5]@2 [g4,c5] bb4 g4 [d4,f4,bb4]!2 g4 [bb2,g4]@2 [d4,f4,bb4] c5 c5@2, eb2 ~ eb2@2 bb2 ~ bb2@2", // Gm7 Eb C5 Bb Eb Bb
  W: "c3@2 c3@2 d3@2 c3 bb2 ab2@2 ab2@2 [ab2,ab4,c5,f5]@3 g5, [eb4,g4,c5] [d4,f4,bb4] [c4,eb4,ab4] ~", // Fm Cm Bb Ab
  X: "[g4,bb4,f5] eb5 [eb2,eb5]@2 [g4,c5]@2 bb4 g4 [d4,bb4] g4 f4 eb4 [bb2,d4,f4]@3 bb3, eb2 ~ eb2@2 bb2!2 ~@2", // Gm7 Eb C5 Gm Bb
  Y: "[c4,eb4] f4 g4 ~ [d3,d4,f4,c5]@2 eb5 [eb4,ab4,c5] ab2@2 ab2@2 [ab2,ab4,c5,f5]@3 g5, c3@2 ~ bb2 [eb4,ab4,c5]@2 ~@2", // Cm Dm7 Ab Fm Ab
  Z: "[g4,bb4,f5] eb5 [eb2,eb5]@2 [g4,c5] bb4 bb4@2 [d4,g4] bb4 c5@2 ~@2 [c3,eb4,g4,c5]@2, eb2 ~ eb2@2 bb2@3 ~", // Gm7 Eb C5 G5 Cm
  AA: "c3@4 [c3,g3]!2 f3 eb3 [g2,g3,bb3,d4]@3 [g2,bb3,d4,g4] f2 ~ [g3,bb3,d4]@2, [eb4,g4,c5]@4 ~@2 [bb3,d4,g4] ~, ~@13 g2@3", // C5 Gm Cm Gm
  AB: "g2@2 g2@2 f2 g2@3 [g2,g3,bb3,d4]@3 [g2,bb3,d4,g4] f2 ~ [g3,c4,d4,e4]@2, [g3,bb3,d4]@4 ~@2 [bb3,d4,g4] ~, ~@13 g2@3", // Gm C Gm
  AC: "g2@2 g2@2 f2 ~ c4 bb3 [g2,g3,bb3,d4]@3 [g2,bb3,d4,g4] f2 ~ [g3,bb3,d4]@2, [g3,c4,d4,e4]@5 g2@3 ~@4 [bb3,d4,g4]@2 ~@2, ~@13 g2@3", // Gm C Gm
  AD: "[g2,g3,c4,d4,e4]@3 g2 [c3,g3,c4]@2 [bb2,f3,bb3,d4]@2 [a2,f3,a3,eb4]@3 c4 eb4@2 eb4 c4", // C C5 Bb F7
  AE: "eb4@2 eb4@2 [c3,g3,c4]@2 [bb2,f3,bb3,d4]@2 [a2,f3,a3,eb4]@3 c4 eb4@2 eb4 c4", // C5 Bb F7
  AF: "eb4@2 eb4@2 [bb2,bb3] [c3,c4] [d3,d4]@2 [eb2,g3,bb3,f4]@2 [eb2,g3,bb3,f4]@2 [eb2,g3,c4]@2 [eb2,g3,c4]@2", // Bb C D Eb Cm
  AG: "[f2,a3,c4,f4]!4 [f2,a3,c4,g4]!3 [g2,eb4,g4,c5]", // F Cm
  AH: "[d4,g4] bb4 c5@2 ~@2 [c3,eb4,g4,c5]@2 [c3,eb4,g4,c5]@4 [c3,c4,eb4,g4]@2 [bb2,bb3,d4,f4]@2, bb2@3 ~@5", // G5 Cm Bb
  AI: "ab2@2 ab2@2 [ab2,ab3,c4,eb4]@3 ab2 eb2@2 eb2@2 eb2@2 f2 g2, [ab3,c4,eb4] ~ [g3,bb3,eb4]!2", // Ab Eb
  AJ: "bb2!2 [bb2,f3,bb3,d4]@2 c3 eb3 [d3,f3,bb3,d4] [bb2,eb4], [f3,bb3,d4] ~ [g3,c4,eb4] ~", // Bb Eb5 Bb Cm
  AK: "bb2!4 c3 eb3 d3 bb2, [f3,bb3,d4]!2 [g3,c4,eb4] [f3,bb3,d4]", // Bb Cm Bb
})).s("gm_piano").gain(0.3)

stack(piano)