Strudelify
Big Me cover art

1995 · Foo Fighters

Big Me

Foo Fighters

KeyC majorTempo131 bpm
0:00/0:00
// Big Me — Foo Fighters
// 131 bpm, 4/4, key C major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Tempo changes preserved in elapsed time; displayed bars use the dominant tempo.
// note: Full arrangement: all 69 bars on a 16-step grid, each part at one level. Source detail keeps the original performance.
// note: The whole transcription plays 16 ms behind the beat; the grid follows it, so its parts stay together.
setcpm(131/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 · acoustic guitar steel · "Guitar 1"
const acoustic_guitar_steel = note(`<
  A B C D A B C D A B C D A B C D E D F G E D H I A B C D A J K L A B C D A B C D E D F G E D H I A B C D A J K L A B C
  D A J A J A M N@2 ~
>`.pickRestart({
  A: "[c3,e3,g3,c4]@3 ~ [c3,e3,g3,c4]@2 [c3,e3,g3,c4,g4]@4 [c3,e3,g3,c4,g4]@2 [c3,e3,g3,c4,g4]@2 [g3,c4]@2", // C C5
  B: "[a2,e3,a3,c4]@3 ~ [a2,e3,a3,c4]@2 [a2,e3,a3,c4,g4]@4 [a2,e3,a3,c4,g4]@2 [a2,e3,a3,c4,g4]@2 [g3,c4]@2", // Am Am7 C5
  C: "[g2,b2,d3,g3,c4]@3 ~ [g2,b2,d3,g3,c4]@2 [g2,b2,d3,g3,c4,g4]@4 [g2,b2,d3,g3,c4,g4]@2 [g2,b2,d3,g3,c4,g4]@2 ~@2", // G
  D: "[f2,c3,f3,a3,c4,f4]!3 [f2,c3,f3,a3,c4,f4]@2 [f2,c3,f3,a3,c4,f4]!2 [g3,b3]", // F G
  E: "[e2,b2,e3,g#3,b3,e4]@3 ~ [e2,b2,e3,g#3,b3,e4]@2 [e2,b2,e3,g#3,b3,e4]@4 [e2,b2,e3,g#3,b3,e4]@2 [e2,b2,e3,g#3,b3,e4]@2 [e2,b2,e3,g#3,b3,e4]@2", // E
  F: "[c3,e3,g3,c4]@3 ~ [c3,e3,g3,c4]@2 [c3,e3,g3,c4,g4]@4 [c3,e3,g3,c4,g4]@2 [c3,e3,g3,c4,g4]@2 g3@2", // C
  G: "[c3,e3,a#3,c4]!3 [c3,e3,a#3,c4]@2 [c3,e3,a#3,c4]!2 [b3,e4]", // C7 E5
  H: "[f2,c3,f3,a3,c4,f4]@3 ~ [f2,c3,f3,a3,c4,f4]@2 [f2,c3,f3,a3,c4,f4]@4 [f2,c3,f3,a3,c4,f4]@2 [f2,c3,f3,a3,c4,f4]@2 b3@2", // F
  I: "[g2,d3,g3,d4,g4]!3 [g2,d3,g3,d4,g4]@2 [g2,d3,g3,d4,g4]!2 [g3,b3]", // G5 G
  J: "[g2,b2,d3,g3,d4,g4]@3 ~ [g2,b2,d3,g3,d4,g4]@2 [g3,b3]@2 [f2,c3,f3,a3,c4,f4]@3 ~ [f2,c3,f3,a3,c4,f4]@2 [g3,b3]@2", // G F G
  K: "[c3,e3,g3,c4]@3 ~ [c3,e3,g3,c4]@2 [c3,e3,g3,c4,g4]@4 [c3,e3,g3,c4,g4]@2 [c3,e3,g3,c4,g4]@3 [c4,g4]", // C C5
  L: "[d3,g3,b3]!2 [d3,g3,d4,g4]!5 [g3,d4]", // G G5
  M: "[g2,b2,d3,g3,d4,g4]@4 ~@2 [g2,d3]@2 [g3,b3]@2 ~ [f2,c3,f3,f4]@4 ~, ~@5 [b2,g3,d4,g4]@2 ~@3 [a3,c4]@4 ~@2", // G G5 G F5 G Am
  N: "[[f2,c3,f3,a3,c4,f4]@2 [g3,b3]@3 [c3,e3,g3,c4]@20 ~ [c3,e3,a#3,c4]@4 ~@2]/2", // F G C C7
})).s("gm_acoustic_guitar_steel").gain(0.48).pan(0)

// chords · electric guitar clean · "Guitar 2"
const electric_guitar_clean = note(`<
  A B C D A B C D A B C D A B C D E D F G E D H I A B C D A J K L A B C D A B C D E D F G E D H I A B C D A J K L A B C
  D A J A J A M N@2 ~
>`.pickRestart({
  A: "[c3,e3,g3,c4]@3 ~ [c3,e3,g3,c4]@2 [c3,e3,g3,c4,g4]@4 [c3,e3,g3,c4,g4]@2 [c3,e3,g3,c4,g4]@2 [g3,c4]@2", // C C5
  B: "[a2,e3,a3,c4]@3 ~ [a2,e3,a3,c4]@2 [a2,e3,a3,c4,g4]@4 [a2,e3,a3,c4,g4]@2 [a2,e3,a3,c4,g4]@2 [g3,c4]@2", // Am Am7 C5
  C: "[g2,b2,d3,g3,c4]@3 ~ [g2,b2,d3,g3,c4]@2 [g2,b2,d3,g3,c4,g4]@4 [g2,b2,d3,g3,c4,g4]@2 [g2,b2,d3,g3,c4,g4]@2 ~@2", // G
  D: "[f2,c3,f3,a3,c4,f4]!3 [f2,c3,f3,a3,c4,f4]@2 [f2,c3,f3,a3,c4,f4]!2 [g3,b3]", // F G
  E: "[e2,b2,e3,g#3,b3,e4]@3 ~ [e2,b2,e3,g#3,b3,e4]@2 [e2,b2,e3,g#3,b3,e4]@4 [e2,b2,e3,g#3,b3,e4]@2 [e2,b2,e3,g#3,b3,e4]@2 [e2,b2,e3,g#3,b3,e4]@2", // E
  F: "[c3,e3,g3,c4]@3 ~ [c3,e3,g3,c4]@2 [c3,e3,g3,c4,g4]@4 [c3,e3,g3,c4,g4]@2 [c3,e3,g3,c4,g4]@2 g3@2", // C
  G: "[c3,e3,a#3,c4]!3 [c3,e3,a#3,c4]@2 [c3,e3,a#3,c4]!2 [b3,e4]", // C7 E5
  H: "[f2,c3,f3,a3,c4,f4]@3 ~ [f2,c3,f3,a3,c4,f4]@2 [f2,c3,f3,a3,c4,f4]@4 [f2,c3,f3,a3,c4,f4]@2 [f2,c3,f3,a3,c4,f4]@2 b3@2", // F
  I: "[g2,d3,g3,d4,g4]!3 [g2,d3,g3,d4,g4]@2 [g2,d3,g3,d4,g4]!2 [g3,b3]", // G5 G
  J: "[g2,b2,d3,g3,d4,g4]@3 ~ [g2,b2,d3,g3,d4,g4]@2 [g3,b3]@2 [f2,c3,f3,a3,c4,f4]@3 ~ [f2,c3,f3,a3,c4,f4]@2 [g3,b3]@2", // G F G
  K: "[c3,e3,g3,c4]@3 ~ [c3,e3,g3,c4]@2 [c3,e3,g3,c4,g4]@4 [c3,e3,g3,c4,g4]@2 [c3,e3,g3,c4,g4]@3 [c4,g4]", // C C5
  L: "[d3,g3,b3]!2 [d3,g3,d4,g4]!5 [g3,d4]", // G G5
  M: "[g2,b2,d3,g3,d4,g4]@4 ~@2 [g3,d4,g4]@2 [g3,b3]@2 ~ [c3,f3,a3,c4,f4]@4 ~, ~@5 [g2,b2,d3]@2 ~@3 f2@4 ~@2", // G G5 G F G
  N: "[[f2,c3,f3,a3,c4,f4]@2 [g3,b3]@3 [c3,e3,g3,c4]@20 ~ [c3,e3,a#3,c4]@4 ~@2]/2", // F G C C7
})).s("gm_electric_guitar_clean").gain(0.48).pan(1)

// bass · electric bass pick · "Bass"
const bass = note(`<
  A B C D A B C D A B C D A B C E F G H I J K L M A B C N O P Q R A B C D A B C E F G H I J K L M A B C N O P Q R A B C
  N O P O P O S T@3
>`.pickRestart({
  A: "c2@3 ~ a1@2 c2@4 g2@3 ~ c2@2", B: "a1@5 ~ e2@4 a1@3 ~ g#1@2", C: "g1@3 ~ e1@2 g1@4 a1@3 ~ g1@2", D: "f1!7 e1",
  E: "f1!7 b1", F: "e2@3 ~ e2@2 e2@2 e2@2 e2@2 e2@2 e2@2", G: "f2!7 a1", H: "c2@5 ~ c2@4 c2@2 c2@2 c2@2",
  I: "c2!3 c2@2 c2!3", J: "e2!8", K: "f2!8", L: "f2@3 ~ f2@2 f2@4 f2@2 f2@2 f2@2", M: "g2!7 a1", N: "f1!7 a1",
  O: "c2@3 ~@3 c2@4 c2@2 c2@2 a1@2", P: "g1@3 ~ g1@2 e1@2 f1@3 ~ f1@2 e1@2", Q: "c2@3 ~ c2@2 c2@4 c2@2 c2@3 ~",
  R: "c2 g1!7", S: "g1@4 ~ g1@3 e1@2 f1@4 ~@2", T: "[f1@2 e1@3 c2@31 c3@9 ~@3]/3",
})).s("gm_electric_bass_pick").gain(0.36)

// drums · kick
const kick = s("bd").struct(`<
  A@16 B C D@2 B C D E D@5 F D B A@8 B C D@2 B C D E D@5 F D B A@3 F D F D F D G H ~@2
>`.pickRestart({
  A: "x ~@2 x ~ x ~@2", B: "x!8", C: "x!6 ~@2", D: "x ~@2 x ~ x ~ x", E: "x!2 ~ x ~ x ~ x", F: "x ~@2 x!2 ~@2 x",
  G: "x ~@3 x!2 ~@2", H: "~@2 x ~@2 x ~@10",
})).gain(0.64)

// drums · snare
const snare = s("sd").struct(`<
  A@16 ~ B A@2 ~ B A C A@3 D A@3 E A@8 ~ B A@2 ~ B A C A@3 D A@3 E A@3 F A@5 G E ~@2
>`.pickRestart({
  A: "~ x ~ x", B: "~ x!4 ~ x ~", C: "~ x!3", D: "~@4 x ~@7 x ~@2 x", E: "x", F: "~@2 x ~@2 x!2 ~", G: "~@5 x ~@10",
})).gain(0.64)

// drums · open hat
const open_hat = s("oh").struct("<~@31 [~ x!7] ~@23 [~ x!7] ~@13>").gain(0.71)

// drums · crash
const crash = s("cr").struct(`<
  A ~@3 A ~@3 A ~@3 A ~@3 A ~ A ~ A ~ A B ~@4 A C A ~ A ~@3 A ~@3 A ~ A ~ A ~ A B ~@4 A C A ~ A ~@3 A C A C A D E ~@2
>`.pickRestart({
  A: "x", B: "~ x!3", C: "x!2", D: "x ~@4 x ~@2", E: "~@5 x ~@10",
})).gain(0.71)

// drums · ride
const ride = s("rd").struct(`<
  A B@3 A B@3 A B@3 A B@3 A C D B D C D E B@4 D F D G A B@3 A B@3 A C D B D C D E B@4 D F D G A B@3 H I A I D J G ~@2
>`.pickRestart({
  A: "~ x!7", B: "x!8", C: "x!5 ~ x ~", D: "~@2 x!6", E: "x!2 ~@6", F: "~@2 x!2 ~@2 x!2", G: "x", H: "~@2 x!5 ~",
  I: "~ x ~ x", J: "~@5 x ~@10",
})).gain(0.57)

stack(acoustic_guitar_steel, electric_guitar_clean, bass, kick, snare, open_hat, crash, ride)

More by Foo Fighters