0:00/0:00
// Teach Your Children — Crosby, Stills & Nash
// 156 bpm, 4/4, key D major. Source: mcgill + midi.
// Generated by strudelify. One cycle = one bar.
// note: pitch bends are ignored
// note: sustain pedal (CC 64) lengthens the held notes
// note: Full arrangement: all 112 bars on a 16-step grid, each part at one level. 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, A@4 for four bars: edit a riff to change every repeat.
// bass · electric bass finger · "BASS"
const bass = note(`<
~ A B C D A E F G A H I J A E K L A H I J A E K L A H I J A E K L A H I J A E K L A M C N A O P Q R S A T I U A E K S
A H I J A E K L A H I J A E K L A H I J A E K L A H I J A E K L A M C N A O P Q R S V@2 I U W X A Y@4
>`.pickRestart({
A: "d2@8 a1@7 ~", B: "d2@7 ~ e2@3 ~ f#2@3 ~", C: "g2 d2", D: "g1@8 g2@7 ~", E: "d2@2 c#2 b1", F: "a1 e2", G: "a2@3 ~",
H: "d2@2 a1 e2", I: "g1 d2", J: "g2@4 d2@2 g2 ~", K: "a1@8 e1@7 ~", L: "a1@7 ~ b1@4 c#2@3 ~",
M: "d2@7 ~ e2@3 ~ f#2@2 ~@2", N: "g1@8 g2@4 f#2@3 ~", O: "d2@6 ~@2 d2@4 c#2@3 ~", P: "b1@8 f#1@7 ~",
Q: "b1@8 f#1@3 ~ b1@3 ~", R: "g1@2 d2 g2", S: "a1@13 ~@3", T: "d2@4 a1@2 d2 ~", U: "g2@8 g1@7 ~", V: "[d2@7 ~]/2",
W: "d2@7 ~ a1@5 ~@3", X: "a1@4 e1@2 a1 ~", Y: "[d2@3 ~ a1@3 ~ d2@51 ~@5]/4",
})).s("gm_electric_bass_finger").gain(0.33)
// chords · piano
const piano = note(`<
~ A@2 B@2 C@2 D E F@2 G@2 H@2 I J F@2 G@2 H@2 I J F@2 G@2 H@2 I J F@2 G@2 H@2 I J K L M N O P Q@2 R S T@2 U@2 V W X E
F@2 G@2 H@2 I J F@2 G@2 H@2 I J F@2 G@2 H@2 I J F@2 G@2 H@2 I J K L M N O P Q@2 R S Y@2 U@2 Z AA AB AC@4
>`.pickRestart({
A: "[[d3,f#3,a3,d4]@3 ~]/2", B: "[~@4 [g3,b3,d4]@19 ~ [g2,a3,d4]@7 ~, g2@11 ~@5]/2",
C: "[~@4 [f#3,a3,d4]@19 ~@9, d3@23 ~@9]/2", D: "~@12 [b3,e4] ~@3, a2@13 ~@3, ~@4 [a3,c#4,e4]@9 ~@3, ~@11 e3@2 ~@3",
E: "[a2,a3,c#4,e4]@13 ~@3", F: "[~@4 [d4,a4]@23 ~ e4 ~@3, d3@23 ~@9, ~@4 f#4@21 ~@7]/2",
G: "[~@2 [b3,d4]@9 ~@5, g2@11 ~@5, ~ g3@4 ~@3]/2", // Bm
H: "[~@4 [d4,f#4,a4]@15 ~ [d4,e4,a4]@7 ~ [d4,f#4] ~@3, d3@13 ~@3]/2", I: "~ [a3,c#4,e4]@3, a2",
J: "~@4 [b3,e4]@7 ~ [a2,a3,c#4,e4] ~@3", K: "~ [a3,d4,f#4]@3, d3", L: "d2@3 ~",
M: "~@4 [g3,b3,d4]@7 ~ [g3,b3,d4] ~@3, g2@11 ~@5", N: "~@12 [a3,d4]@3 ~, g2@15 ~",
O: "~@4 [f#3,a3,d4]@8 [f#3,a3,d4]@3 ~, d3@3 ~", P: "~@4 [f#3,a3,d4]@8 [f#3,a3,d4]@3 ~",
Q: "[b2@4 [b3,d4,f#4]@8 [b3,d4,f#4]@8 b3@8 b3@3 ~, ~@20 [d4,f#4]@11 ~]/2", // Bm D
R: "~@4 d4@8 [a3,d4]@3 ~, g2@15 ~, ~@4 [g3,b3]@11 ~", S: "[a2,a3,c#4]@13 ~@3",
T: "[~@4 [a3,d4,f#4]@8 [a3,d4,f#4]@6 ~@2 [a3,d4,f#4]@6 ~@2 [a3,d4,f#4] ~@3, d3@7 ~@9]/2", // D
U: "[~@4 [g3,b3,d4]@6 ~@2 [g3,b3,d4]@6 ~@2 [g3,b3,d4]@7 ~ [g3,a3,d4]@2 ~@2, g2@3 ~@5]/2", // G Gsus2
V: "~@4 [d3,f#3,a3,d4]@7 ~ [d3,f#3,a3,d4]@4", W: "~@4 [d3,a3,d4,f#4]@7 ~ [a3,d4,f#4] ~@3",
X: "~@4 [a2,a3,c#4,e4]@7 ~ [b3,e4]@2 ~@2, ~@11 e3@2 ~@3", Y: "[[d2,a3,d4,f#4]@27 ~ [d2,a3,d4,f#4] ~@3]/2",
Z: "~@4 [d4,f#4,a4]@7 ~ [d4,e4,a4] ~@3, d3@3 ~", AA: "~@4 [a3,c#4,e4]@7 ~ [b3,e4] ~@3, a2@13 ~@3",
AB: "~@4 [d4,f#4,a4]@8 d4@3 ~, d3", AC: "[a3 ~@3 [d3,d4,e4,a4] ~@3 [d3,d4,f#4,a4]@42 ~@14]/4",
})).s("gm_piano").gain(0.34).pan(1)
// drums · hihat
const hihat = s("hh").struct("<[x ~@3 x ~@3 x ~@3 x!2 ~@2] [~ x ~ x]!7 ~ [~ x ~ x]!99 ~@4>").gain(0.38)
// drums · open hat
const open_hat = s("oh").struct("<[~@11 x ~@3 x] ~@111>").gain(0.38)
stack(bass, piano, hihat, open_hat)
More by Crosby, Stills & Nash
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.