0:00/0:00
// Wale Ft Jeremih On Chill — Rickey C Battle jr
// 80 bpm, 4/4, key Db major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: duplicate parts dropped: ch 2 "B♭ Clarinet" clarinet (copy of ch 1 "Flute" flute); ch 5 "B♭ Trumpet" trumpet (copy of ch 1 "Flute" flute); ch 7 "Horn in F" french horn (copy of ch 3 "Alto Saxophone" alto sax); ch 8 "Mellophone" french horn (copy of ch 3 "Alto Saxophone" alto sax); ch 9 "Baritone Horn" french horn (copy of ch 4 "Tenor Saxophone" tenor sax)
// note: Transcription provider: pdmx. https://musescore.com/score/5836993; license: https://creativecommons.org/publicdomain/zero/1.0/
// note: Full arrangement: all 51 bars on a 16-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(80/4)
// Notation: c3@3 lasts 3 steps · ~ is a rest · [c3,e3] is a chord · "a, b" plays two voices at once.
// A part's distinct bars are riffs (A, B, C...) played in order: edit a riff to change every repeat.
// other · alto sax · "Alto Saxophone"
const alto_sax = note(`<
~@3 A B@2 C@2 B D E F G ~@3 G ~@6 H ~@3 H I ~@4 J K L ~ J K L B M N O B D P F Q R ~
>`.pickRestart({
A: "~@3 db5", B: "~@4 db5@3 bb4 bb4@2 ~@6", C: "~@4 bb4 eb5 ~ db5@2 ~ bb4 bb4@2 ~@3", D: "~@10 gb5@3 f5@3",
E: "db5@4 ~@3 db5@2 ~ bb4 bb4@2 ~@3", F: "db5@4 ~@3 db5 f5@4 ~@4, ~@8 eb5 ~@7", G: "[eb5,gb5] ~@3",
H: "~@4 ab4 db5 db5@2", I: "[gb5,bb5] ~@3", J: "~@10 [gb4,gb5]@3 [f4,f5]@3", K: "eb5@2 db5 eb5 db5@4 ~@8",
L: "~ eb5 bb4 db5", M: "~@4 db5@3 bb4 ~@2 gb5@3 f5@3", N: "db5@4 bb4 eb5 ~ db5@2 ~ eb5@3 gb5@3",
O: "ab5@3 ~ gb5@2 ~@2", P: "db5@2 ~@2 gb5 f5 eb5!2", Q: "[eb5,gb5]@4 ~@6 eb5 gb5 f5@4", R: "~ [eb5,gb5,bb5]",
})).s("gm_alto_sax").gain(0.5)
// other · alto sax · "Alto Saxophone" · soft notes
const alto_sax_soft = note("<A@2 B C ~@28 A D ~@2 A D ~@13>".pickRestart({
A: "~@2 gb4@2 gb4@2 ab4 bb4@3 gb4@2 db4@4", B: "db5!2 bb4 eb5 db5!2 bb4@2", C: "~@4 gb4 bb4 ~@2",
D: "~@2 gb4@2 gb4@2 ab4 bb4@3 ~@6",
})).s("gm_alto_sax").gain(0.2)
// other · tenor sax · "Tenor Saxophone"
const tenor_sax = note("<~@3 A B C D E B F D@2 G ~@3 G ~@6 H ~@3 H I ~@10 A B C J K B F L M N O ~>".pickRestart({
A: "~@12 gb4 f4 eb4 f4", B: "eb4@3 db4 db4@3 bb3 bb3@2 ~@2 gb4 f4 eb4 f4", C: "eb4@3 db4 db4@3 bb3 bb3@2 ~@6",
D: "db4!4 bb3 eb4 ~ db4@2 ~ bb3 bb3@2 ~@3", E: "db4!4 bb3 eb4 ~ db4@2 ~@3 gb4 f4 eb4 f4",
F: "eb4@3 db4 f4@3 db4 db4@4 ~@4", G: "gb4 ~@3", H: "~ eb4 f4 gb4 ~@2 [db4,bb4]@2", I: "bb4 ~@3",
J: "db4!4 bb3 eb4 ~ db4@2 ~ eb4@3 gb4@3", K: "ab4@3 ~ gb4@2 ~@2", L: "db5@2 ~@2 gb5 f5 eb5!2",
M: "db4@4 bb3 eb4 ~ db4@2 ~ bb4 bb4@2 ~@3", N: "[gb4,bb4]@4 ~@6 eb4 gb4 bb4@4", O: "~ [gb4,bb4]",
})).s("gm_tenor_sax").gain(0.5)
// other · tenor sax · "Tenor Saxophone" · soft notes
const tenor_sax_soft = note("<A@2 B C ~@27 D E F G H E F G I ~@11>".pickRestart({
A: "~@2 gb3@2 gb3@2 ab3 bb3@3 gb3@2 db3@4", B: "db4!2 bb3 eb4 db4!2 bb3@2", C: "~ db3 eb3 f3 ~@4",
D: "~@9 db4@2 db4@2 db4@2 ~", E: "ab3 bb3 ab3@2 ~@3 bb3 eb4!2 bb3!2 db4@2 db4@2", F: "ab3 bb3!2 ab3@2 ~@5 db4!6",
G: "gb3 ab3 bb3 ab3@2 ~@2 ab3 bb3!4 db4@2 ab3 gb3", H: "ab3 bb3 ab3@2 ~@5 db4@2 db4@2 db4@2 ~",
I: "ab3 bb3 ab3@2 ~@12",
})).s("gm_tenor_sax").gain(0.3)
// chords · trombone
const trombone = note("<~@4 A B C D A B C D E ~@3 E ~@3 F G H I F G H I E ~@11 A B C D A B J D K L ~>".pickRestart({
A: "[gb3,bb3,eb4] [ab3,db4,f4] [gb3,bb3,eb4] ~", B: "[gb3,bb3,eb4] [ab3,db4,f4] [gb3,bb3,eb4]@2", C: "[ab3,db4,f4]",
D: "[gb3,bb3,eb4] [f3,ab3,db4]", E: "[gb3,bb3,eb4] ~@3", F: "[gb3,bb3,eb4]@3 [f3,ab3,db4]",
G: "[gb3,bb3,eb4]@3 [gb3,bb3,eb4] ~@2 [gb3,bb3,eb4]@8 ~@2", H: "[f3,ab3,db4]",
I: "[gb3,bb3,eb4]@3 [gb3,bb3,eb4] ~@2 [gb3,bb3,eb4]@6 [gb3,bb3,db4] ~ [gb3,bb3,db4] ~", // Ebm Gb
J: "~@4 gb4 ~@3, [ab3,db4], f4@7 ~", K: "[gb3,bb3,eb4] ~@2 [bb3,db4,f4]", L: "[gb3,bb3,eb4] [gb3,bb3,eb4,gb4]",
})).s("gm_trombone").gain(0.5)
// chords · trombone · soft notes
const trombone_soft = note("<A@2 B C ~@27 D E F G H E F G I ~@11>".pickRestart({
A: "~@2 gb3@2 gb3@2 ab3 bb3@3 gb3@2 db3@4", B: "db4!2 bb3 eb4 db4!2 bb3@2", C: "[gb3,bb3,eb4]@3 ~",
D: "~@9 db4@2 db4@2 db4@2 ~", E: "ab3 bb3 ab3@2 ~@3 bb3 eb4!2 bb3!2 db4@2 db4@2", F: "ab3 bb3!2 ab3@2 ~@5 db4!6",
G: "gb3 ab3 bb3 ab3@2 ~@2 ab3 bb3!4 db4@2 ab3 gb3", H: "ab3 bb3 ab3@2 ~@5 db4@2 db4@2 db4@2 ~",
I: "ab3 bb3 ab3@2 ~@12",
})).s("gm_trombone").gain(0.3)
// bass · tuba
const bass = note(`<
~@3 A B C D E F G H E F I J E F I J E B C D E B C D E F I J E ~@7 K L I M N L O P N Q R S
>`.pickRestart({
A: "~@12 eb2 gb2 bb2@2", B: "ab2 ~ ab2@2 ~@2 eb2@2 ab2@2 ~@2 db2@2 ~@2", C: "eb2@2 ~ eb2@2 ~ eb2 ~ eb2@2 ~@6",
D: "db2 ~ db2@2 ~@2 db2@2 db2@2 ~@2 db2@2 ~@2", E: "eb2@4 ~@2 eb2@2 f2!2 f2@2 ~@2 gb2@2",
F: "ab2 ~ ab2@2 ~@2 eb2@2 ab2@2 ~@2 db3@2 ~@2", G: "eb3@2 ~ eb3@2 ~ bb2 ~ eb2@2 ~@6",
H: "db3 ~ db3@2 ~@2 db3@2 db3@2 ~@2 db3 bb2 ab2 gb2", I: "eb3 ~ eb3 bb2 ~ bb2 eb2@2 ~@2 eb3 ~ eb3 bb2 eb3 ~",
J: "db3 ~ db3@2 ~@2 db3 ~ db3@2 ~@2 bb2 ab2 gb2 ~", K: "~@7 gb3", L: "ab3 ~ ab3@2 ~@2 eb3@2 ab3@2 ~@2 db3@2 ~@2",
M: "db3 ~ db3@2 ~@2 db3 ~ db3@2 ~@2 bb3 ab3 gb3 ~", N: "eb3@4 ~@2 eb3@2 f3!2 f3@2 ~@2 gb3@2",
O: "eb3@2 ~ eb3@2 ~ eb3 ~ eb3@2 ~@2 gb2 ab2 bb2 eb3", P: "db3 ~ db3@2 ~@2 db3@2 db3@2 ~@2 db3@2 ~@2",
Q: "ab3@4 eb3 db3 bb2 eb3 db3@2 ~@2 bb2@2 f2@2", R: "eb2", S: "eb3 ~@3",
})).s("gm_tuba").gain(0.5)
// bass · tuba · soft notes
const bass_soft = note("<~@32 A B C D A B C E ~@11>".pickRestart({
A: "ab2 ~ ab2@2 ~@2 eb2@2 ab2@2 ~@2 db2@2 ~@2", B: "eb2@2 ~ eb2@2 ~ eb2 ~ eb2@2 ~@6",
C: "db2 ~ db2@2 ~@2 db2@2 db2@2 ~@2 db2@2 ~@2", D: "eb2@4 ~@2 eb2@2 f2!2 f2@2 ~@2 gb2@2",
E: "eb2@4 ~@2 eb2@2 f2!2 f2@2 ~@4",
})).s("gm_tuba").gain(0.3)
// drums · kick
const kick = s("bd").struct(`<
~@4 A B A C A D E F A D E C A D E C A D E C A D E C A D E C A D E C A D E C A D E C A D E C ~ G H
>`.pickRestart({
A: "x!2 ~ x!2 ~ x ~", B: "x ~@2 x ~@2 x ~ x ~@3 x ~ x ~", C: "x ~@5 x ~ x!3 ~@3 x ~",
D: "x ~@2 x ~@2 x ~ x ~@3 x!2 ~ x", E: "x ~ x ~@3 x ~ x ~@3 x!2 ~ x", F: "x ~ x ~@3 x ~ x!3 ~@3 x ~",
G: "x ~@3 x ~@3 x ~@3 x!2 ~ x", H: "x",
})).gain(0.5)
stack(alto_sax, alto_sax_soft, tenor_sax, tenor_sax_soft, trombone, trombone_soft, bass, bass_soft, kick)
More by Rickey C Battle jr
Ariane Grande God Is A WomanG♭ major · 70 bpmBackstreet Boys The CallD♭ major · 100 bpmbanditA♭ major · 80 bpmBig Sean Go Legend ft Travis ScottC♭ major · 70 bpmGangsta's ParadiseE♭ major · 80 bpmGucci Mane ClassicalA♭ major · 60 bpmkill the lightsC♭ major · 80 bpmLil Baby Life_Goes_OnA♭ major · 70 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.