Strudelify
All Shook Up cover art

1958 · Elvis' Golden Records

All Shook Up

Elvis Presley

KeyB♭ majorTempo153 bpm
0:00/0:00
// All Shook Up — Elvis Presley
// 153 bpm, 4/4, key A# major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: pitch bends are ignored
// note: duplicate parts dropped: ch 6 "STEEL GTR" acoustic guitar steel (copy of ch 3 "JAZZ GTR" electric guitar jazz)
// note: Full arrangement: all 73 bars on a 24-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(153/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, A@4 for four bars: edit a riff to change every repeat.

// chords · piano · "A.PIANO 1"
const piano = note(`<
  ~ A B@2 C A B@2 C A B D ~ E F G H A B@2 C A B D ~ E F G H I@2 J K I L M ~ A B@2 C A B D ~ E F G H I@2 J@2 I L N ~ A
  B@2 C A B D ~ E F G H E F G O
>`.pickRestart({
  A: "bb1@3 ~ [bb1,f3,bb3,d4] ~ d2@4 [f3,bb3] ~ f2@4 [f2,f3,bb3,d4] ~ g2@4 [f3,bb3,d4] ~", // Bb Bb5 Bb
  B: "bb1@3 ~ [bb1,f3,bb3,d4] ~ d2@4 [f3,bb3,d4] ~ f2@3 ~ [f2,f3,bb3,d4] ~@5 [f3,bb3,d4] ~, ~@3 g2", // Bb
  C: "bb1@3 ~ [bb1,f3,bb3,d4] ~ d2@4 [f3,bb3,d4] ~ f2@4 [f3,bb3,d4] ~ g2@3 ~ [f3,bb3,d4] ~, ~@8 f2 ~@3", D: "bb1 ~@7",
  E: "eb2@4 [g3,bb3,c4,eb4] ~ g2@4 [g3,bb3,c4,eb4] ~ bb2@4 [g3,bb3,c4,eb4] ~ c3@4 [g3,bb3,c4,eb4] ~", // Cm7
  F: "f2@4 [a3,c4,eb4] ~ a2@4 [a3,c4]@2 c3@4 [a3,c4,eb4] ~ d3@4 [a3,c4,eb4] ~, ~@10 eb4 ~@13", // Adim Am Adim
  G: "bb2@4 [f3,bb3,d4] ~ g2@4 [f3,bb3,d4] ~ f2@4 [bb3,d4] ~ d2@4 [bb3,d4]@2, ~@16 f3@2 ~@4 f3 ~", // Bb
  H: "bb1@4 [f3,bb3] ~ d2@4 [f3,bb3,d4] ~ f2@4 [f3,bb3,d4] ~ g2@4 [f3,bb3,d4] ~, ~@2 d4 ~@9", // Bb5 Bb
  I: "eb2@4 [g3,bb3,c4,eb4] ~ g2@4 [g3,bb3,c4,eb4] ~ bb2@4 [g3,bb3,c4,eb4] ~ g2@4 [g3,bb3,c4,eb4] ~", // Cm7
  J: "bb1@4 [f3,bb3,d4] ~ d2@4 [f3,bb3] ~ f2@4 [f3,bb3,d4] ~ d2@4 [f3,bb3,d4] ~, ~@5 d4 ~@6", // Bb Bb5 Bb
  K: "bb1@4 [f3,ab3,bb3,d4] ~ d2@4 [f3,ab3,bb3,d4] ~ f2@4 [f3,ab3,bb3,d4] ~ d2@4 [f3,ab3,bb3,d4] ~", // Bb7
  L: "eb2@4 [g3,bb3,c4,eb4] ~ g2@4 [g3,bb3,c4,eb4] ~ bb2@4 [g3,bb3,eb4]@2 g2@5 ~, ~@16 c4 ~@7", // Cm7 Eb
  M: "[f3,a3,c4] ~@23, [f2,eb4] ~@7", N: "[f2,f3,a3,c4,eb4] ~@7",
  O: "[bb1,f2,bb2]@2 ~ [bb1,f2,bb2] ~ [bb1,f2,bb2]@2 ~@5", // Bb5
})).s("gm_piano").gain(0.33).pan(0.6)

// bass · acoustic bass · "ACOU BASS"
const bass = note(`<
  ~ A B C D E@6 F ~ G H I J E@6 F ~ G H I K G L E@2 G L M ~ E@6 F ~ G H N O G L E@2 G L M ~ E@6 F ~ G H N O G H N P
>`.pickRestart({
  A: "bb2@4 ~@2 g2@5 ~ f2@5 ~ g2@5 ~", B: "bb2@5 ~ g2@5 ~ f2@6 g2@6", C: "bb2@3 ~ bb2 ~ g2@5 ~ f2@5 ~ g2@5 ~",
  D: "bb2@5 ~ g2@6 f2@5 ~ g2@4 ~@2", E: "bb2@5 ~ ab2@3 ~ g2 ~ f2@6 g2@5 ~", F: "bb2 ~@5",
  G: "eb2@4 ~@2 g2@5 ~ bb2@5 ~ c3@6", H: "f2@5 ~ a2@5 ~ c3@5 ~ d3@5 ~", I: "bb2@5 ~ g2@5 ~ f2@5 ~ d2@5 ~",
  J: "bb1@5 ~ d2@5 ~ f2@5 ~ g2@3 ~@3", K: "bb2@5 ~ ab2@4 ~@2 g2@5 ~ bb2@2 g2 ~ f2@2",
  L: "db3@5 ~ c3@5 ~ bb2@5 ~ g2@5 ~", M: "f2 ~@5", N: "bb2@5 ~ g2@5 ~ f2@5 ~ a2@5 ~",
  O: "bb2@5 ~ g2@4 ~@2 f2@5 ~ bb2@4 ~@2", P: "bb2@4 ~@2 bb2@3 ~ bb2@4 ~@10",
})).s("gm_acoustic_bass").gain(0.44)

// chords · electric guitar jazz · "JAZZ GTR"
const electric_guitar_jazz = note(`<
  A B C@2 D C@5 E F ~ G@4 C@5 E F ~ H@4 I@2 J K I@2 L A C@5 E F ~ M@4 I@2 J K I@2 L A C@5 E F ~ M@4 N@3 O
>`.pickRestart({
  A: "~@11 [a3,db4,e4,a4]", B: "[bb3,f4,bb4]@4 ~@2 [f4,bb4]@4 d4 ~ [f4,bb4]@5 d4 ~@4 [a3,db4,e4,a4]@2",
  C: "[bb3,f4,bb4]@4 [d4,f4] ~@5 [d4,f4] ~@5 [d4,f4] ~@5 [a3,db4,e4,a4]@2", // Bb5 Dm A
  D: "[bb3,f4,bb4]@4 d4 ~ [f4,bb4]@4 d4 ~@11 [a3,db4,e4,a4]@2", E: "[bb3,f4,bb4]@4 [d4,f4] ~@5 [d4,f4] ~@5 [d4,f4] ~@7",
  F: "[bb3,f4,bb4] ~@5", // Bb5
  G: "[~@2 eb5@19 ~@4 f5@17 ~@6 [bb4,d5]@34 ~@12 [a3,db4,e4,a4]@2, [g4,bb4]@20 ~@3 a4@20 ~@4 [f4,g4]@34 ~@15, ~ c5@19 ~@4 [c5,eb5]@19 ~@53]/4", // Bb A Gm Fsus2 Cm
  H: "[~@2 eb5@19 ~@4 f5@17 ~@6 [d5,f5]@34 ~@14, [g4,bb4]@20 ~@3 a4@20 ~@4 [f4,bb4]@34 ~@15, ~ c5@19 ~@4 [c5,eb5]@19 ~@53]/4", // Dm Gm Bb5 Cm
  I: "[bb3,eb4,g4]@8 ~@2 [bb3,eb4,g4] ~@13", J: "[d4,f4]@6 ~@4 [bb3,d4,f4] ~@13", K: "[d4,f4]@8 ~@2 [bb3,d4,f4] ~@13",
  L: "[a3,c4,eb4,f4] ~@7", // F7
  M: "[~@2 eb5@19 ~@3 [c5,eb5]@19 ~@5 [bb4,d5]@34 ~@14, [g4,bb4]@20 ~@3 a4@20 ~@4 [f4,g4]@34 ~@15, ~ c5@19 ~@76]/4", // Cm Bb Gm Fsus2
  N: "[~@2 eb5@19 ~@3 [c5,eb5]@19 ~@5 [bb4,d5]@22 ~@2, [g4,bb4]@20 ~@3 a4@20 ~@4 [f4,g4]@22 ~@3, ~ c5@19 ~@52]/3", // Cm Bb Gm Fsus2
  O: "[bb2,f3,bb3]@4 ~@2 [bb2,f3,bb3] ~@3 [bb2,f3,bb3]@3 ~@11", // Bb5
})).s("gm_electric_guitar_jazz").gain(0.22).pan(0.4)

// chords · electric guitar jazz · "JAZZ GTR" · soft notes
const electric_guitar_jazz_2 = note("<~ A@11 ~@5 A@7 ~@7 B C ~@4 A@7 ~@7 B C ~@4 A@7 ~@9>".pickRestart({
  A: "d4 ~@5", B: "bb3 ~@3", C: "bb3 ~@2",
})).s("gm_electric_guitar_jazz").gain(0.11).pan(0.4)

// other · flute
const flute = note(`<
  ~@6 A ~ B ~ C D E@2 F@3 ~ G ~ G ~ H D E@2 I@3 ~@9 J ~ C ~ K D L@2 M@3 ~@9 N ~ O ~ K D L@2 P@4 Q@2 R
>`.pickRestart({
  A: "d4@6 d4@4 d4@9 ~@5", B: "d4@4 d4@6 d4@9 ~@5", C: "d4@2 d4 d4@2 d4@2 ~@5", D: "~@11 d4",
  E: "[d4@3 d4@2 d4@3 d4 d4@2 eb4@4 ~@8 eb4]/2", F: "[f4@4 ~@4 f4@6 d4@9 d4@4 ~@9]/3", G: "d4@3 d4@2 d4@3 ~@4",
  H: "d4@6 d4@4 d4@5 ~@9", I: "[f4@4 ~@7 f4@3 d4@9 d4@4 ~@9]/3", J: "d4@2 d4@3 d4@2 ~@5", K: "~@2 d4 d4@2 d4@2 ~@5",
  L: "[d4@3 d4@2 d4@3 d4 d4@2 eb4@6 ~@6 eb4]/2", M: "[f4@13 ~@9 f4@6 d4@18 d4@8 ~@18]/3", N: "d4@2 d4@3 d4@3 ~@4",
  O: "d4@4 d4@2 d4@4 d4@5 ~@9", P: "[f4@16 ~@6 f4@6 d4@18 d4@11 ~@7 d4@2 d4@4 eb4@11 ~@13 eb4@2]/4",
  Q: "[f4@13 ~@9 f4@6 d4@18 d4@2]/2", R: "d4@3 d4@2 d4 ~@6",
})).s("gm_flute").gain(0.16).pan(0.4)

// drums · snare
const snare = s("sd").struct("<A B@10 C A B@10 C A B@10 C ~ B@6 D A B@10 C ~ B@6 D A B@7 E>".pickRestart({
  A: "~@15 x!2 ~ x ~@5", B: "x ~@5 x ~@4 x!2 ~@5 x ~@4 x", C: "x", D: "x!2", E: "x ~@2 x ~ x ~@6",
})).gain(0.16)

// drums · snare · soft notes
const snare_soft = s("sd").struct("<~ A@10 ~@2 A@10 ~@2 A@10 ~@2 A@6 ~@2 A@10 ~@2 A@6 ~@2 A@7 ~>".pickRestart({
  A: "~@3 x ~@3 x",
})).gain(0.05)

stack(piano, bass, electric_guitar_jazz, electric_guitar_jazz_2, flute, snare, snare_soft)

More by Elvis Presley