Strudelify

Minuet no.3

J. S. Bach

KeyC majorTempo120 bpm
0:00/0:00
// Minuet no.3 — J.S Bach
// 120 bpm, 3/4, key C major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Transcription provider: pdmx. https://musescore.com/score/6336585; 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(120/3)

// Notation: c3@3 lasts 3 steps · ~ is a rest · [c3,e3] is a chord.
// A part's distinct bars are riffs (A, B, C...) played in order: edit a riff to change every repeat.

// other · cello · "Violoncelo"
const cello = note(`<
  A B C D E F G H A B C D E F G I A B C D E F G H A B C D E F G I J K D L M D B A@2 C A G N E I@2 J K D L M D B A@2 C A
  G N E O@2
>`.pickRestart({
  A: "g2", B: "b2", C: "a2", D: "c3", E: "f2", F: "e2", G: "d2", H: "e2@3 d2@13", I: "c2", J: "e3", K: "d3", L: "f#2",
  M: "d2@5 f#2@5 ~ b2@5", N: "g2@5 b2@5 ~ d3@5", O: "[c2,g2]",
})).s("gm_cello").gain(0.3)

// other · cello · "Violoncelo"
const cello_2 = note(`<
  A B C D E F G H A B C D E F I J A B C D E F G H A B C D E F I J K C D L M N O P Q O L R S E I F K C D L M N O P Q O L
  R S E T J
>`.pickRestart({
  A: "~@5 c4@3 d4@3 e4@2 f4@3", B: "~@5 e3@3 f3@3 g3@2 a3@3", C: "~@5 f3@3 g3@3 a3@2 b3@3",
  D: "~@5 c4@3 b3@3 a3@2 g3@3", E: "~@5 b3@3 a3@3 g3@2 f3@3", F: "~@5 f3@3 e3@3 d3@2 c3@3",
  G: "~@5 a2@3 b2@3 c3@2 d3@3", H: "e4@3 d4@13", I: "~@5 g3@3 f3@3 e3@2 d3@3", J: "c4", K: "~@5 g3@3 a3@3 b3@2 c4@3",
  L: "~@5 a3@3 g3@3 f3@2 e3@3", M: "d4@3 e4@2 f4@3 g4@3 a4@2 b4@3", N: "~@5 f4@3 e4@3 d4@2 c4@3",
  O: "~@5 d4@3 c4@3 b3@2 a3@3", P: "g4", Q: "~@5 e4@3 d4@3 c4@2 b3@3", R: "~@5 d3@3 c3@3 b2@2 a2@3",
  S: "g3@3 a3@2 b3@3 c4@3 d4@2 e4@3", T: "d4@3 f4@2 c4@3 ~@3 b3@3 ~@2",
})).s("gm_cello").gain(0.25)

stack(cello, cello_2)

More by J. S. Bach