0:00/0:00
// Eins Zwei Polizei — Mo-Do
// 143 bpm, 4/4, key E minor. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: pitch bends are ignored
// note: Full arrangement: all 136 bars on a 16-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(143/4)
// Notation: c3@3 lasts 3 steps · ~ is a rest · [c3,e3] is a chord · [...]/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.
// bass · fretless bass · "FRETLESS"
const bass = note(`<
~@4 A@2 B C A@2 B C A@2 B C A@2 B C A@2 B C A@2 B C A@2 B C A@2 B C A@2 B C A@2 B C A@2 B C A@2 B C A@2 B C A@2 B C
A@2 B C A@2 B C A@2 B C A@2 B C A@2 B C A@2 B C A@2 B C A@2 B C A@2 B C A@2 B C A@2 B C A@2 B C ~@8 A@2 B C A@2 B C
A@2 B C A@2 B C ~@4
>`.pickRestart({
A: "e1 e2 e1 e2 e1 e2 e1 e2", B: "g1 g2 g1 g2 g1 g2 g1 g2", C: "d1 d2 d1 d2 d1 d2 d1 d2",
})).s("gm_fretless_bass").gain(0.52)
// other · synth bass 1 · "SYN BASS 1"
const synth_bass_1 = note(`<
~@12 A@2 B C A@2 B C A@2 B C A@2 B C ~@16 A@2 B C A@2 B C ~@40 A@2 B C A@2 B C A@2 B C A@2 B C ~@28
>`.pickRestart({
A: "e4 b4 g4 e5 b4 f#5 b4 g5", B: "b4 d5 f#5 g5 d5 a5 d5 b5", C: "a4 d5 a4 g5 d5 e5 f#5 d5",
})).s("gm_lead_8_bass_lead").gain(0.23).pan(0.7)
// other · synth bass 2 · "SYN BASS 2"
const synth_bass_2 = note("<~@21 A@2 B@2 A@2 ~@18 A@2 B@2 A@2 B@2 A@2 B@2 A@2 B@2 ~@40 A@2 B@2 A@2 ~@29>".pickRestart({
A: "[~@8 g4 ~ e4 ~ g4 ~ e4@5 ~@13]/2", B: "[~@8 g4 ~ e4 ~ f#4 ~ e4@5 ~@13]/2",
})).s("gm_synth_bass_2").gain(0.41).pan(0.6)
// chords · lead 2 sawtooth · "SAW WAVE"
const lead_2_sawtooth = note(`<
~@12 A@2 B C A@2 B C A@2 B C A@2 B C A@2 B C A@2 B C A@2 B C A@2 B C A@2 B C A@2 B C A@2 B C A@2 B C ~@8 A@2 B C A@2 B
C A@2 B C A@2 B C A@2 B C A@2 B C A@2 B C A@2 B C A@2 B C A@2 B C ~@8 A@2 B C A@2 B C A@2 B C A@2 B C ~@4
>`.pickRestart({
A: "[e2,g4]!16", B: "[e2,b4]!16", C: "[e2,a4]!16",
})).s("gm_lead_2_sawtooth").gain(0.33).pan(0.3)
// chords · lead 1 square · "SQUAREWAVE"
const lead_1_square = note(`<
~@36 A@2 B C A@2 B C ~@8 A@2 B C A@2 B C ~@17 D ~ E ~ D ~ E A@2 B C A@2 B C ~@32 F@2 G H F@2 G H ~@4
>`.pickRestart({
A: "[e3,b4,e5] ~ [e3,b4,e5]@2 ~@2 [e3,b4,e5] ~ [e3,b4,e5] ~ [e3,b4,e5]@2 ~@4", // E5
B: "[g3,d5,g5] ~ [g3,d5,g5]@2 ~@2 [g3,d5,g5] ~ [g3,d5,g5] ~ [g3,d5,g5]@2 ~@4", // G5
C: "[d3,a4,d5] ~ [d3,a4,d5]@2 ~@2 [d3,a4,d5] ~ [d3,a4,d5] ~ [d3,a4,d5]@2 ~@4", D: "~@5 [b3,e4] [b4,e5] [b5,e6]",
E: "~@5 [a3,d4] [a4,d5] [a5,d6]", F: "[b3,e4] [b4,e5] ~ [b4,e5] [b3,e4] [b4,e5] ~@2",
G: "[d4,g4] [d5,g5] ~ [d5,g5] [d4,g4] [d5,g5] ~@2", H: "[a3,d4] [a4,d5] ~ [a4,d5] [a3,d4] [a4,d5] ~@2",
})).s("gm_lead_1_square").gain(0.26).pan(0.4)
// drums · kick
const kick = s("bd").struct(`<
~@4 A B A B A B A B ~@4 A B A B A B A B A B A B A B A B A B A B A B A B A B A B A B A B A B A B A B A B A B A B A B A
B A B A B A B A B A B A B A B A B A B A B A B A B A B A B A B A B A B A B A B A B A B A B A B A ~ A B A B A B A B A B
A B A B A B A B A B A B A B
>`.pickRestart({
A: "x!4", B: "x ~ x ~ x ~ x!2",
})).gain(0.64)
// drums · snare
const snare = s("sd").struct(`<
~@10 A@2 ~@14 A@2 B@14 A@2 ~@6 A@2 B@6 A@2 ~@14 A@2 ~@8 B@6 A@2 ~@6 A@2 B@6 A@2 ~@6 A@2 B@6 A@2 B@6 A@2 ~@4
>`.pickRestart({
A: "x!16", B: "~@2 x ~@3 x!2",
})).gain(0.39)
// drums · hihat
const hihat = s("hh").struct(`<
[~ x!3 ~ x!3 ~ x!3 ~ x!3]!4
~@4
[x!4]!4
[~ x!3 ~ x!3 ~ x!3 ~ x!3]!4
[x!4]!92
~@4
[x!4]!20
~@4
>`).gain(0.39)
// drums · hihat · soft notes
const hihat_soft = s("hh").struct("<[x!4]!4 ~@8 [x!4]!4 ~@120>").gain(0.19)
// drums · open hat
const open_hat = s("oh").struct("<~@8 [~ x ~ x ~ x ~ x]!4 ~@4 [~ x ~ x ~ x ~ x]!92 ~@4 [~ x ~ x ~ x ~ x]!20 ~@4>")
.gain(0.39)
// drums · crash
const crash = s("cr").struct(`<
~@20 A ~@3 A ~@3 A ~@15 A ~@3 A ~@3 A ~@7 A ~@15 A ~@7 A ~@7 A ~@3 A ~@3 A ~@3 A ~@11 A ~@7 A ~@7 A ~@3
>`.pickRestart({
A: "x",
})).gain(0.39)
// drums · woodblocks
const woodblocks = s("woodblock:5").struct("<~@52 [x!2 ~ x!2 ~ x ~]!8 ~@76>").gain(0.75)
stack(
bass, synth_bass_1, synth_bass_2, lead_2_sawtooth, lead_1_square, kick, snare, hihat, hihat_soft, open_hat, crash,
woodblocks
)
More by Mo-Do
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.