0:00/0:00
// Corne d'Aurochs — Brassens Georges
// 220 bpm, 2/2, key F major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Full arrangement: all 197 bars on a 16-step grid, each part at one level. Source detail keeps the original performance.
setcpm(220/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 · acoustic guitar steel
const acoustic_guitar_steel = note(`<
A B C D E@2 F@8 G@8 H I J K A B C L A B C L M@3 F@8 G@8 H I J K A B C L A B C L M@3 F@8 G@8 H I J K A B C L A B C L
M@3 F@8 N@16 G@8 H I J K A B C L A B C L M@3 F@8 G@8 H I J K A B C L A B C L M@3 F@8 O@3 P@8 Q
>`.pickRestart({
A: "c5@3 ~ c5@5 ~ c5@2 c5@3 ~", B: "c5@3 ~ c5@3 ~ c5@3 ~ c5@3 ~", C: "c5@3 ~ c5@11 ~",
D: "c5@3 ~ bb4@5 ~ a4@2 g4@3 ~", E: "[~@4 [e5,g5,c6]@5 [e5,g5,c6]@5 ~ [e5,g5,c6]@5 [e4,g4,c5]@3 ~ c5@3 ~ c5@3 ~]/2",
F: "[a4@3 ~@5 [c4,f4]@3 ~@5 [c4,f4]@3 ~@5 [c4,f4]@3 ~@5 [c4,f4]@3 ~@5 [d4,f4]@3 ~@5 [d4,f4]@3 ~@5 [c4,f4]@3 ~@5 [c4,f4]@3 ~@5 [c4,f4]@3 ~@5 [c4,f4]@3 ~@9 [c4,f4,c5]@7 ~ [b3,d4,g4]@7 ~ [bb3,e4,c5]@7 ~ [a3,c4,f4]@3 ~@9, ~@4 a3@31 ~ bb3@15 ~ a3@35 ~@41]/8", // F5 Dm F5 G C7 F
G: "[~@8 [c4,f4]@3 ~@5 [c4,f4]@3 ~@5 [c4,f4]@3 ~@5 [c4,f4]@3 ~@5 [d4,f4]@3 ~@5 [d4,f4]@3 ~@5 [c4,f4]@3 ~@5 [c4,f4]@3 ~@5 [c4,f4]@3 ~@5 [c4,f4]@3 ~@9 [c4,f4,c5]@7 ~ [b3,d4,g4]@7 ~ [bb3,e4,c5]@7 ~ [a3,c4,f4]@7 ~@5, ~@4 a3@31 ~ bb3@15 ~ a3@35 ~@41]/8", // F5 Dm F5 G C7 F
H: "c6@3 ~ c6@5 ~ c6@2 c6@3 ~", I: "c6@3 ~ c6@3 ~ c6@3 ~ c6@3 ~", J: "c6@3 ~ c6@11 ~",
K: "d6@3 ~ bb5@5 ~ a5@2 g5@3 ~", L: "d5@3 ~ bb4@5 ~ a4@2 g4@3 ~",
M: "[~@4 [e5,g5,c6]@5 [e5,g5,c6]@5 ~ [e5,g5,c6]@5 c4@19 ~ c5@3 ~ c5@3 ~]/3", // C
N: "[~@8 [c4,f4]@3 ~@5 [c4,f4]@3 ~@5 [c4,f4]@3 ~@5 [c4,f4]@3 ~@5 [d4,f4]@3 ~@5 [d4,f4]@3 ~@5 [c4,f4]@3 ~@5 [c4,f4]@3 ~@5 [c4,f4]@3 ~@5 [c4,f4]@3 ~@9 [c4,f4,c5]@7 ~ [b3,d4,g4]@7 ~ [bb3,e4,c5]@7 ~ [a3,c4,f4]@3 ~@9, ~@4 a3@31 ~ bb3@15 ~ a3@35 ~@41]/8", // F5 Dm F5 G C7 F
O: "[~@8 [c4,f4]@3 ~@5 [c4,f4]@3 ~@5 [c4,f4]@3 ~@5 [c4,f4]@3 ~@5 [d4,f4]@3 ~@5, ~@4 a3@31 ~ bb3@12]/3", // F5 Dm
P: "[[d4,f4]@3 ~@5 [c4,f4]@3 ~@5 [c4,f4]@3 ~@5 [c4,f4]@3 ~@5 [c4,f4]@3 ~@9 [c4,f4,c5]@7 ~ [b3,d4,g4]@7 ~ [bb3,e4,c5]@7 ~ [a3,c4]@3 ~ [a3,c4]@3 ~@5 [a3,c4]@3 ~@5 [a3,c4]@3 ~@5 [a3,c4]@3 ~@5 [a3,c4]@3 ~@5 [a3,c4]@3 ~@9 [e4,bb4,c5]@3 ~, ~@4 a3@35 ~@29 f4@51 ~@9]/8", // Dm F5 G C7 Am C7
Q: "~@4 [f4,a4,f5]@3 ~@9", // F
})).s("gm_acoustic_guitar_steel").gain(0.61).pan(1)
// bass · electric bass pick
const bass = note(`<
A@4 B@2 C@8 D@8 E@8 F@4 G@3 C@8 D@8 E@8 F@4 G@3 C@8 D@8 E@8 F@4 G@3 C@8 H@8 C@8 D@8 E@8 F@4 G@3 C@8 D@8 E@8 F@4 G@3
C@8 I@3 J@8 K
>`.pickRestart({
A: "[~@4 [c3,g3,e4]@15 ~ [d3,bb3,f4]@15 ~ [eb3,bb3,gb4]@15 ~ [e3,c4,g4]@11 ~]/4", // C Bb Ebm C
B: "[~@4 [c4,bb4]@5 [c4,bb4]@5 ~ [c4,bb4]@5 [c3,bb3]@3 ~@9]/2", // C7
C: "[~@4 f2@3 ~@5 c2@3 ~@5 f2@3 ~@5 f2@3 ~@5 f2@3 ~@5 f2@3 ~@5 f2@3 ~@5 f2@3 ~@5 f2@3 ~@5 f2@3 ~@5 f2@3 ~@5 [d2,d3]@7 ~ [g2,f3]@7 ~ [c2,c3]@7 ~ [f2,f3]@3 ~@9, ~@4 c3@31 ~ d3@15 ~ c3@35 ~@41]/8", // D G7 C F
D: "[~@4 f2@3 ~@5 c2@3 ~@5 f2@3 ~@5 f2@3 ~@5 f2@3 ~@5 f2@3 ~@5 f2@3 ~@5 f2@3 ~@5 f2@3 ~@5 c2@3 ~@5 f2@3 ~@5 [d2,d3]@7 ~ [g2,f3]@7 ~ [c2,c3]@7 ~ [f2,f3]@7 ~@5, ~@4 c3@31 ~ d3@15 ~ c3@35 ~@41]/8", // D G7 C F
E: "[~@4 [c3,g3,e4]@15 ~ [d3,bb3,f4]@15 ~ [eb3,bb3,gb4]@15 ~ [e3,c4,g4]@15 ~ [c3,g3,e4]@15 ~ [d3,bb3,f4]@15 ~ [eb3,bb3,gb4]@15 ~ [e3,bb3,g4]@12]/8", // C Bb Ebm C Bb Ebm Edim
F: "[~@4 [a3,d4,f4]@15 ~ [a3,eb4,gb4]@15 ~ [bb3,e4,g4]@15 ~ g3@5 ~ a3@2 bb3@3 ~, ~@52 c3@11 ~]/4", // Dm Ebdim Edim
G: "[~@4 [c4,bb4]@5 [c4,bb4]@5 ~ [c4,bb4]@5 [g2,bb2,e3]@15 ~ [g3,bb3,e4]@3 ~@9]/3", // C7 Edim
H: "[~@4 f2@3 ~@5 c2@3 ~@5 f2@3 ~@5 f2@3 ~@5 f2@3 ~@5 f2@3 ~@5 f2@3 ~@5 f2@3 ~@5 f2@3 ~@5 c2@3 ~@5 f2@3 ~@5 [d2,d3]@7 ~ [g2,f3]@7 ~ [c2,c3]@7 ~ [f2,f3]@3 ~@9, ~@4 c3@31 ~ d3@15 ~ c3@35 ~@41]/8", // D G7 C F
I: "[~@4 f2@3 ~@5 c2@3 ~@5 f2@3 ~@5 f2@3 ~@5 f2@3 ~@5 f2@3 ~, ~@4 c3@31 ~ d3@12]/3",
J: "[~@4 f2@3 ~@5 f2@3 ~@5 f2@3 ~@5 c2@3 ~@5 f2@3 ~@5 [d2,d3]@7 ~ [g2,f3]@7 ~ [c2,c3]@7 ~ f3@7 ~ e3@7 ~ d3@7 ~ e3@7 ~ f3@7 ~ e3@7 ~ d3@3 ~@5 c3@3 ~, ~@4 c3@35 ~@29 f2@51 ~@9]/8", // D G7 C
K: "~@4 [f2,f3]@3 ~@9", // F
})).s("gm_electric_bass_pick").gain(0.38).pan(0)
stack(acoustic_guitar_steel, bass)
More by Brassens Georges
Brave MargotC major · 125 bpmChanson pour l'AuvergnatE minor · 180 bpmDans l'eau de la claire FontaineA minor · 110 bpmJ'ai rendez-vous avec vousA major · 133 bpmLe Petit ChevalC major · 190 bpmLe temps ne fait rien a l'affaireA major · 130 bpmLes amoureux des bancs publicsC minor · 126 bpmLes Amours d'antanA major · 134.4 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.