0:00/0:00
// March in D major (C.P.E. Bach) — Bach Johann Sebastian
// 120 bpm, 4/4, key D major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Full arrangement: all 28 bars on a 32-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(120/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.
// chords · piano · "A.PIANO 1"
const piano = note("<A@3 B@2 C D@6 E F G H@3 I J K L@4 M N@2>".pickRestart({
A: "[~@5 [d3,d5] ~@5 g3 ~@4 f#3 ~@4 b4@2 ~ c#5@2 [d3,d5] ~@5 g3 ~@3 f#3@2 ~@6 c#5@2 ~ f#3 ~ e5@2 f#5@2 ~ g5@2 a5@2 g5@3 f#5@2 e5@3 [d2,f#5]@4 ~ d3@2 c#3@2 ~ d3@2 ~@3 f#5@2 e5 ~@2 d2@4 ~ d3 ~ c#3@2 ~, ~@11 a4@10 e3 ~@9 a4@11 [e3,b4]@4 d5@2 ~@3 d3 ~@4 c#3 ~@4 a2 ~@9 d5@7 ~@3 d2 ~@4 f#5@2 ~@3 d5@5]/3", // D E5
B: "[d3 ~@4 b4@2 a4@2 ~ [d2,b4]@2 g#4@3 d3 ~ c#3@2 ~ d3 ~ d5@3 c#5@2 b4@3 c#2@2 ~@3 f#2 ~@2 d5 ~ d2 ~@2 b4 [e2,c#5] b4@2 a4 ~@7 e4@2 a4 ~@2 c#5@2 ~ a2, ~@5 d2 ~@9 e5@8 ~@2 d2 ~@4 a4@8 ~@17 a2 ~@4 a2 ~ a4@2]/2", // G C#m
C: "~ c#5@2 e5@3 a2@2 ~@3 e3 ~@6 a3@4 ~ a4@3 ~@2 d5@2 ~@2, ~ a2 ~ a2 ~@2 a5@13 ~@9 d3 ~@3",
D: "[~ g3 ~@5 f#3 ~@4 b4@2 c#5 ~ d5 d3 ~@3 g3 ~@5 f#3 ~@3 b4@2 ~ c#5@2 d5@3 e5@2 f#5@2 g5@2 a5@3 g5@2 f#5@2 e5@2 ~ d2@4 ~ d3 ~ c#3@2 d3@2 ~@3 d2 f#5@2 e5@2 d2@4 ~ d3@2 c#3@2 ~ d3@2 ~@3 b4@2 a4@3 b4@2 g#4@2 ~ d3@2 c#3@2 ~ d3@2 ~ d5@2 c#5@2 b4@3 c#2@2 ~@3 f#2 ~@2 d5 ~ c#5 b4 c#5 ~ c#5 e2 ~ a4 ~@2 [a2,a4]@6 [a2,e4] ~ [a2,a4] ~ c#5@2 a4@2 ~ c#5@2 e5@2 ~ a2@2 ~@3 e3 ~@5 a3@4 ~ e5@4 ~ a5@2 ~@3 e5@10 f#5@2, ~ a4@11 e3 ~@8 a4@10 ~@5 f#3 ~@4 d3 ~@3 c#3 ~@4 a2 ~@4 f#5@2 ~@3 d5@7 ~@7 f#5@2 ~@3 d5@10 d2 ~@4 d2@5 e5@8 ~@2 d2 ~@4 a4@8 ~@2 d2@2 ~ b4@2 ~@15 a2 ~ a2 ~@2 a2 ~ a2 ~@2 a5@13 ~@13 d4@3 ~@9]/6", // A A5 A
E: "~ g#5 ~ a5 ~@4 d4 ~@4 c#4 ~@4 f#5@2 g#5 ~@2 a5@4 g5@2 ~ f#5@2, ~@4 e5@5 ~@7",
F: "e5@3 f#5@2 g5@2 e5@2 ~ d4@2 ~@2 d3@2 ~ e3 ~ f#3 ~@2 a4@2 [d3,b4] ~ c5@2 ~ b4@2 d5, c#4 ~@8 f#5@2 ~@3 d5@7 ~@11", // G
G: "~@2 e5@2 f#5@2 g5@2 ~ b4 ~ [g#3,c#5]@2 d5@2 ~ [a3,c#5]@2 e5@2 ~ f#5@2 g5@3 a5@2 c#5@2 [a#3,d5]@2", // C#5 A A#
H: "[~ e5@2 [b3,d5]@2 g5@3 b5@2 a5@3 g5@2 f#5@2 e5@2 d5 ~@2 [a3,c#5]@2 a2@2 ~@3 g3@2 ~ f#3@2 e3 ~@2 [f#3,d5] ~@4 g2@6 ~@10 b4 ~@2 c#5@2 a4@2 ~ b4@2 c#5@2 d5@2 ~ e5@2 [g3,f#5]@2 g5@2 ~ [f#3,a5]@2 ~@3 d5@2 ~@3 g3 ~ e5@2 d5@2, ~@8 g3 ~@4 e3 ~@3 g3 ~@8 a3@2 ~@57 b3 ~@8 a3 ~, ~@27 a4@9 ~@6 b4@3 ~@44 f#5@3 ~@4]/3", // Bm A D Gmaj7 F#m
I: "c#5@2 ~ [d3,d5]@5 a4@2 [d2,d5] ~ f#5@2 d2 d5@2 f#5@2 a5@2 ~ d2@2 ~@3 a2 ~@4, ~@8 d2 ~@3 d2 ~@4 d2 ~ d2 ~ d6@11", // D
J: "d3@3 ~@2 e5@4 ~ a5@2 ~@4 d4 ~@8 f#5@2 g#5@2 ~ a5@2, ~@10 a3 ~@4 e5@10 ~@7",
K: "~@8 c#4 ~@3 f#5@2 ~ g#5@2 a5@5 g5@2 f#5@3 e5@2 f#5@2 g5, ~@3 e5@10 ~@14 c#4 ~@4",
L: "[~ e5 ~@2 [d4,f#5]@2 ~@3 d3@2 e3 ~@2 f#3 ~@2 a4@2 [d3,b4] ~ c5@2 ~ b4@2 d5 ~@2 e5 ~ f#5@2 g5@2 ~ b4 ~ [g#3,c#5]@2 d5@2 ~@3 e5@2 f#5@2 g5@2 a5@2 ~ c#5@2 a#3@2 e5@2 ~ d5@2 g5@2 ~ g3 ~ a5@2 [e3,g5] ~ f#5@2 e5 g3 d5 ~ c#5 d5 c#5@4 a3 ~ g3@2 f#3 ~ e3@2 ~ d5@2 a4@2 b4@2 ~ a4@2 g4@2 f#4@3 g4@2 b4@2 ~ g3 ~ b4@2 ~ a3@4 b4@2 c#5@2 ~ d5@2, ~@9 d5@7 ~@8 g3@5 ~@13 c#5@3 ~@11 d5 ~@8 b5@3 ~@43 e5@2 ~@3 c#5@2 ~@10, ~@43 a3@4 ~@14 b3 ~@31 f#3 ~@3 g2@6 ~@25]/4", // D G C#5 Em
M: "e5@2 f#5@2 g5@3 [f#3,a5]@2 ~@3 [b3,d5] ~@4 f#5@2 e5@2 ~ a3 ~ c#5@2 [d3,d5]@5 ~, ~@2 g3 ~@14 g3 ~@3 d5@3 ~@8", // F#m Bm D
N: "[a4@2 d5@2 [d2,f#5]@2 ~ [d2,d5]@2 f#5@2 ~ a5@3 d2@2 ~@4 a2@2 ~@7 d3@10 ~@24, d2 ~ d2 ~@6 d2 ~@2 d2@2 ~ d6@28 ~@21]/2", // D
})).s("gm_piano").gain(0.4)
// chords · piano · "A.PIANO 1" · soft notes
const piano_soft = note("<A ~@3 B ~@2 C ~@2 D E F G ~@2 H@2 ~ I J@2 ~ K L ~@3>".pickRestart({
A: "a4 ~@15", B: "~@8 b4 c#5@2 ~@7 a4@6 ~ a2 ~@6, ~@18 a2 ~@13", C: "e3 ~@31", D: "~ b4@2 ~@29",
E: "~@15 a3@2 ~@9 c#4 ~@4 b3", F: "~@3 a3 ~@14 b3 ~@4 a3 ~@4 b3 ~@3", G: "~@5 a3 ~@23 g3@3",
H: "[~@7 a4@3 ~@2 a4@2 ~ g4 ~ f#4@2 g4@2 ~ b4 ~ g3@2 ~@3 a3@5 ~@30, ~@7 d3 ~@16 e5 ~@39]/2",
I: "~@21 c#4 ~@4 b3 ~@3 a3 ~", J: "[~@3 d4 ~@9 b3 ~@3 a3@2 ~@3 b3@3 ~@6 a3@2 ~@31]/2",
K: "~@15 a3 ~@2 a2 a4@7 ~@5 d3", L: "~@23 a4@2 ~@7",
})).s("gm_piano").gain(0.24)
stack(piano, piano_soft)
More by Bach Johann Sebastian
Brandenburgisches Konzert Nr. 1 F-Dur, BWV 1046: IV. Menuet - Trio - Menuet - Polonaise - Menuet - Trio - MenuetG major · 136 bpmOrchestersuite Nr. 2 5. PolonaiseG major · 82.6 bpm2-Part Invention No. 1 in C major, BWV 772E major · 120 bpmPrelude in C MajorE♭ major · 90 bpmJesus bleibet meine Freude (Herz und Mund und Tat und Leben BWV. 147)G major · 61 bpmToccata and Fugue in D minor, BWV 565D minor · 120 bpmAir On The G StringD minor · 120 bpmBrandenburg Concerto No. 2 in F major, BWV 1047: III. Allegro assaiC major · 95 bpm
Not in the database
That song isn't here.
Nothing in the database matches this link. It may have been renamed, or the address was mistyped. The closest songs to :
Real transcriptions · Editable patterns · Instrumental
Type a song.
Get Strudel code.
Chords, structure, melody, bass and drums compiled from open transcriptions into Strudel live-coding patterns. Play it here, scrub through the bars, then open it in strudel.cc and start hacking.
Smells Like Teen SpiritNirvana
The JokerSteve Miller Band · 1973
Love Me DoThe Beatles · 1964
I Don't MindJames Brown · 1961
- Real transcriptionsMcGill chord charts, Lakh MIDI and quality-filtered PDMX scores. The library includes alternate transcriptions of some songs.
- One bar, one cycleEvery layer follows the same bar timeline, keeping the code, playback and song structure aligned.
- Instrumental by designDetected vocal parts are removed. Guitar riffs, harmonica and other instrumental leads stay.