Strudelify

Land Of 1000 Dances

Wilson Pickett

KeyE majorTempo156 bpm
0:00/0:00
// Land Of 1000 Dances — Wilson Pickett
// 156 bpm, 4/4, key E major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Full arrangement: all 102 bars on a 16-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(156/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.

// other · piano
const piano = note(`<
  ~@6 A@3 B@3 ~@17 C@2 D@2 ~@3 E F@2 B@3 A@3 B@3 A@3 B@3 ~@28 E F@2 B@3 A@3 B@3 A@3 B@3 ~@2
>`.pickRestart({
  A: "[e4@6 ~@2 d4 ~ e4 ~ d4 ~ e4@7 ~@3 d4 ~ e4 ~ d4 ~ e4@5 ~ d4 ~ b3 ~ d4@3 ~ b3 ~ a3 ~]/3",
  B: "[b3 ~@7 d4@2 e4 ~ d4 ~ e4@28 ~@6]/3", C: "[[b3,e4,g#4]@2 ~@2 [b3,e4,g#4]@25 ~@3]/2",
  D: "[[b3,e4,g#4] ~ [b3,e4,g#4]@13 ~]/2", E: "e4@8 d4@2 e4 ~ d4 ~ e4@2",
  F: "[e4@8 d4 ~ e4 ~ d4 ~ e4@5 ~ d4 ~ b3 ~ d4@3 ~ b3 ~ a3 ~]/2",
})).s("gm_piano").gain(0.71).pan(0.3)

// other · vibraphone · "Vibes"
const vibraphone = note("<~@33 A@2 B@2 ~@5 C@3 D@3 C@3 D@3 ~@34 C@3 D@3 C@3 D@3 ~@2>".pickRestart({
  A: "[[b3,e4,g#4]@2 ~@2 [b3,e4,g#4]@25 ~@3]/2", B: "[[b3,e4,g#4] ~ [b3,e4,g#4]@13 ~]/2",
  C: "[g#4@7 ~ f#4@2 g#4 ~ f#4 ~ g#4@9 ~ f#4 ~ g#4 ~ f#4 ~ g#4@5 ~ f#4 ~ d4 ~ f#4@4 d4 ~ c#4 ~]/3",
  D: "[d4@4 ~@4 f#4@2 g#4 ~ f#4 ~ g#4@30 ~@4]/3",
})).s("gm_vibraphone").gain(0.66).pan(0.8)

// chords · acoustic guitar nylon · "GUITAR-1"
const acoustic_guitar_nylon = note(`<
  ~@13 A@2 B@2 A@2 B@2 A@2 B@2 A@2 B@2 ~@26 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 ~@17 C@2
>`.pickRestart({
  A: "[[g#3,b3,e4] ~ [g#3,b3,e4]@13 ~]/2", B: "[[g#3,b3,e4] ~ [g#3,b3,e4]@14]/2",
  C: "[[g#3,b3,e4] ~ [g#3,b3,e4]@7 ~@7]/2", // E
})).s("gm_acoustic_guitar_nylon").gain(0.5).pan(0.1)

// chords · acoustic guitar steel · "GUITAR- 2"
const acoustic_guitar_steel = note(`<
  ~@13 A B@2 C A B@2 C A B@2 C A B@2 D ~@26 A B@2 C A B@2 D E F G H I J K L M N O P A B@2 C A B@2 C ~@17 Q R
>`.pickRestart({
  A: "[d5,g#5]@2 ~@2 [d5,e5,g#5]@4 ~@4 b4 ~@3, ~@10 [d5,e5]@5 ~", // Ddim E7 Dsus2
  B: "[d5@3 ~ b4@2 [b4,e5]@4 d5@2 e5 ~ d5@2 ~@2 f5 ~ [d5,e5]@4 ~@4 b4@3 ~, b4 ~@11 b4@6 ~@2 b4@6 e5@5 ~]/2", // E5 Dsus2
  C: "[b4,e5]@3 ~ b4@2 [d5,e5]@2 [b4,e5] ~ [b4,d5]@3 ~ [b4,d5,e5]@2, d5@4 ~@6 e5 ~@5", // E5 Dsus2 E5 Bm E7
  D: "[b4,e5]@3 ~ b4@2 [d5,e5]@2 [b4,e5] ~ [b4,d5]@4 [b4,d5,e5]@2, d5@4 ~@6 e5 ~@5", // E5 Dsus2 E5 Bm E7
  E: "[b4,e5] ~@3 [b4,e5] ~@5 [b4,e5] ~@5", F: "[b4,e5] ~@3 [b4,e5]@2 ~@4 [b4,e5]@2 ~@2 e5@2",
  G: "~@4 [b4,e5] ~@5 [b4,e5]@2 ~@4", H: "[b4,e5]@2 ~@4 [b4,d5,e5] ~@3 [d5,e5] ~@3 [b4,e5]@2",
  I: "[b4,e5]@2 ~@2 [b4,e5]@2 ~@4 [b4,e5]@2 ~@2 b4 ~", J: "~@6 [b4,d5,e5] ~@5 [b4,d5,e5] ~@3",
  K: "~@2 [b4,e5] ~@5 [b4,d5,e5]@2 ~@2 b4 ~ [b4,e5]@2", L: "~@4 [b4,d5,e5]@2 ~@4 [b4,d5,e5]@2 ~@2 [b4,e5] ~",
  M: "[b4,e5] ~@3 [b4,e5] ~@5 [b4,d5,e5] ~@5", N: "[b4,d5,e5] ~@3 [b4,d5,e5] ~@3 b4 ~ [b4,d5,e5] ~@5",
  O: "[b4,d5,e5] ~@3 [b4,d5,e5] ~@5 [b4,d5,e5] ~@5", P: "[b4,d5,e5] ~@3 [b4,d5,e5] ~@5 [d5,e5] ~@3 [b4,d5,e5]@2",
  Q: "[d5,g#5] ~ [d5,e5,g#5]@2 ~@4", R: "[b4,e5]@3 ~@13",
})).s("gm_acoustic_guitar_steel").gain(0.6).pan(0.8)

// chords · acoustic guitar steel · "GUITAR- 2" · soft notes
const acoustic_guitar_steel_2 = note(`<
  ~@14 A@2 B ~ A@2 B ~ A@2 B ~ A@2 B ~@27 A@2 B ~ A@2 B C D E F E G H I ~@2 J K ~ A@2 B ~ A@2 B ~@19
>`.pickRestart({
  A: "~@2 e5 ~@13", B: "~@12 e5 ~@3", C: "~@2 b4 ~@9 b4 ~ b4 ~", D: "~@2 b4 ~@3 b4 ~@7 [b4,d5]@2",
  E: "~@2 b4 ~@3 b4 ~ b4 ~@7", F: "~@4 b4 ~@11", G: "[b4,d5,e5]@2 ~@2 b4 ~@11", H: "b4 ~@5 b4 ~@3 b4 ~@3 d5@2",
  I: "~@2 b4 ~@3 b4 ~ b4 ~@5 d5 ~", J: "~@14 b4 ~", K: "~@8 b4 ~ b4 ~@5",
})).s("gm_acoustic_guitar_steel").gain(0.36).pan(0.8)

// other · electric guitar jazz · "LEAD GUITAR"
const electric_guitar_jazz = note(`<
  ~@75
  [e3@3 ~ g#3@2 b3@2 d4@2 c#4 ~ b3@2 g#3 ~]
  [e3@2 ~@2 g#3@2 b3 ~ d4@2 c#4 ~ b3@2 g#3 ~]
  [e3@2 ~@2 g#3 ~ b3 ~ d4@2 c#4 ~ b3 ~ g#3 ~]
  [e3@2 ~@2 g#3 ~ b3 ~ d4@2 c#4 ~ b3@2 g#3 ~]
  ~@23
>`).s("gm_electric_guitar_jazz").gain(0.6).pan(0.1)

// bass · acoustic bass · "BASS"
const bass = note(`<
  ~ A B C@3 B@5 C B C@2 B@2 C@2 B@5 C@2 B C B@4 C B@3 C@2 B@2 C B C@2 B C B@2 C B@12 C B@2 C@2 B@3 C B@5 C B@5 C B@13 C
  B C B@3 D
>`.pickRestart({
  A: "~@6 b2 a2", B: "e2@3 ~@3 b2@3 ~ b1@2 b2@2 a2 ~", C: "e2@3 ~@3 b2@4 b1@2 b2@2 a2 ~", D: "e2@3 ~@13",
})).s("gm_acoustic_bass").gain(0.66)

// chords · piano
const piano_2 = note(`<
  ~@13 A@2 B@2 A@2 B@2 A@2 B@2 A@2 B@2 ~@26 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 ~@17 C@2
>`.pickRestart({
  A: "[[e6,g#6] ~ [e6,g#6]@13 ~]/2", B: "[[e5,g#5]@2 ~@2 [e5,g#5]@27 ~]/2", C: "[[e6,g#6] ~ [e6,g#6]@7 ~@7]/2",
})).s("gm_piano").gain(0.5).pan(0.1)

// other · drawbar organ · "Hammond"
const drawbar_organ = note("<~@66 A B C@2 D B C@2 ~@28>".pickRestart({
  A: "g#4@4 b4@4 c#5@3 ~ d#5@4", B: "c#5@3 ~ b4@2 g#4 ~ b4@3 ~ g#4@2 f#4 ~", C: "[g#4@26 g#4 ~@5]/2",
  D: "g#4@4 b4@3 ~ c#5@3 ~ d#5@4",
})).s("gm_drawbar_organ").gain(0.8).pan(0.1)

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

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

// drums · clap
const clap = s("cp").struct("<~@2 [x!4]!98 [x!2 ~@2] ~>").gain(0.4)

// drums · hihat
const hihat = s("hh").struct("<[x!4] [x ~ x ~ x ~ x!2] [x!8]!98 [x!4 ~@4] ~>").gain(0.36)

// drums · open hat
const open_hat = s("oh").struct("<~@100 [~@3 x] ~>").gain(0.4)

// drums · crash
const crash = s("cr").struct(`<
  ~@2 A ~@3 A ~@6 B ~@3 B ~@3 B ~@3 B ~@3 A ~@3 A ~@8 A ~@5 A ~@6 B ~@3 B ~@3 B ~@5 B ~@3 B ~ B ~@3 B ~@8 A ~@5 A ~@5 B
  A
>`.pickRestart({
  A: "x", B: "x!2 ~@2",
})).gain(0.4)

stack(
  piano, vibraphone, acoustic_guitar_nylon, acoustic_guitar_steel, acoustic_guitar_steel_2, electric_guitar_jazz, bass,
  piano_2, drawbar_organ, kick, snare, clap, hihat, open_hat, crash
)

More by Wilson Pickett