Strudelify
Farandole (from cover art

Farandole (from

Bizet Georges

KeyD minorTempo113 bpm
0:00/0:00
// Farandole (from — Bizet Georges
// 113 bpm, 4/4, key D minor. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Full arrangement: all 16 bars on a 16-step grid, each part at one level. Source detail keeps the original performance.
// note: The whole transcription plays 34 ms behind the beat; the grid follows it, so its parts stay together.
setcpm(113/4)

// Notation: c3@3 lasts 3 steps · ~ is a rest · [c3,e3] is a chord · "a, b" plays two voices at once.
// 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"
const piano = note("<A B C D E B F G H I J K L M J N>".pickRestart({
  A: "~@2 [f3,a3,d4] [e3,a3]", B: "[f3,bb3,d4]@4 ~@3 [g3,bb3,e4] [f3,a3,f4]@3 [a3,e4] [a3,f4]@3 [f3,bb3,d4]",
  C: "[f3,a3,c4,f4]@4 ~@3 [a3,c4,f4] [g3,c4,g4]@4 [a3,c4,f4,a4]@4", // F C5 F
  D: "[bb3,f4,bb4] [eb4,a4] [d4,g4] [d4,f4] [bb3,d4,e4]@2 [c4,e4,a4]@2", // Bb5 Ebdim G5 Dm Em7b5 Am
  E: "[bb3,c4,g4] [a3,f4] [g3,db4,e4] [a3,f4] [f3,a3,d4]@2 [e3,a3]@2", // C7 Dm Dbdim Dm A5
  F: "[f3,a3,c4,f4]@4 ~@3 [a3,c4,f4] [g3,c4,g4]@4 [c4,f4,a4]@4", // F C5 F
  G: "[bb3,f4,bb4] [eb4,a4] [d4,g4] [d4,f4] [g3,d4,f4]@2 [a3,db4,e4]@2", H: "[f3,a3,d4]@3 ~@5",
  I: "d4@4 a3@4 d4@6 ~ e4", J: "f4@2 ~ e4 f4@2 ~ d4 a4@6 ~ f4, g4 ~@15", K: "g4@2 ~@2 a4@2 ~@2 bb4 ~ a4 ~ g4 ~ f4 ~",
  L: "e4@2 ~@2 a4@2 ~@2 g4 ~ f4 ~ e4 ~ f4 ~", M: "d4@2 ~@2 a3@2 ~@2 d4@6 ~ e4", N: "g4@3 ~ e4@3 ~ a4@3 ~ a3@3 ~",
})).s("gm_piano").gain(0.41)

// chords · piano · "A.PIANO"
const piano_2 = note("<A B C D E B F G H ~@7>".pickRestart({
  A: "~@2 [f4,a4,d5] [e4,a4]", B: "[f4,bb4,d5]@4 ~@3 [g4,bb4,e5] [a4,f5]@3 [a4,e5] [a4,f5]@3 [bb4,d5]",
  C: "[a4,c5,f5]@4 ~@3 [a4,c5,f5] [c5,g5]@4 [c5,eb5,f5,a5]@4", // F C5 F7
  D: "[f5,bb5] [eb5,a5] [d5,g5] [d5,f5] [bb4,d5,e5]@2 [c5,e5]@2", // Bb5 Ebdim G5 Dm Em7b5 C
  E: "[bb4,c5,g5] [a4,f5] [g4,db5,e5] [a4,f5] [f4,a4,d5]@2 [e4,a4]@2", // C7 Dm Dbdim Dm A5
  F: "[a4,c5,f5]@4 ~@3 [a4,c5,f5] [c5,g5]@4 [c5,f5,a5]@4", // F C5 F
  G: "[f5,bb5] [eb5,a5] [d5,g5] [d5,f5] [bb4,d5,f5]@2 [g4,db5,e5]@2", H: "[f4,a4,d5]@3 ~@5",
})).s("gm_piano").gain(0.41)

// chords · piano · "A.PIANO"
const piano_3 = note("<A B C D E B F G H I J K L I J M>".pickRestart({
  A: "~@2 [f5,a5,d6] [e5,a5]", B: "[f5,bb5,d6]@4 ~@3 [g5,bb5,e6] [a5,f6]@3 [a5,e6] [a5,f6]@3 [bb5,d6]",
  C: "[a5,a6]@4 ~@3 [a5,c6,f6] [c6,g6]@4 [c6,eb6,f6,a6]@4", // A F C5 F7
  D: "[f6,bb6] [eb6,a6] [d6,g6] [d6,f6] [d6,e6]@2 [a5,e6,a6]@2", // Bb5 Ebdim G5 Dm Dsus2 A5
  E: "[bb5,c6,g6] [a5,f6] [g5,db6,e6] [a5,f6] [f5,a5,d6]@2 [e5,a5]@2", // C7 Dm Dbdim Dm A5
  F: "[a5,a6]@4 ~@3 [a5,c6,f6] [c6,g6]@4 [c6,f6,a6]@4", // A F C5 F
  G: "[f6,bb6] [eb6,a6] [d6,g6] [d6,f6] [bb5,d6,f6]@2 [g5,db6,e6]@2", H: "[f5,a5,d6]@3 ~ d5@2 a4@2",
  I: "d5@6 ~ e5 f5@2 ~ e5 f5@2 ~ d5, ~@8 g5 ~@7", J: "a5@6 ~ f5 g5@2 ~@2 a5@2 ~@2",
  K: "bb5 ~ a5 ~ g5 ~ f5 ~ e5@2 ~@2 a5@2 ~@2", L: "g5 ~ f5 ~ e5 ~ f5 ~ d5@2 ~@2 a4@2 ~@2",
  M: "bb5 ~ a5 ~ g5 ~ f5 ~ f5@2 ~@2 e5@2 ~@2",
})).s("gm_piano").gain(0.41)

stack(piano, piano_2, piano_3)

More by Bizet Georges