0:00/0:00
// Scandal — Queen
// 104 bpm, 4/4, key G major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Full arrangement: all 108 bars on a 16-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(104/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.
// chords · synth strings 1 · "Strings"
const synth_strings_1 = note(`<
~@2 A B C D A B C E A B C F A B C@2 G H G H I J K L@2 A B C D A B C@2 G H G H I J K L M N O N P Q@2 R S T A B C@2 A U
C@2 G H G H I J K L@4 V W V W A B C@2 A B C@2 A B C@2 X Y Z AA AB AC AD AE AF AG AH AG AI C@2 A AJ C@2 AK
>`.pickRestart({
A: "e2!7 [e2,b3,e4,f#4], [b3,e4,a4]@2 [b3,e4,g4]@2 ~ [b3,e4,f#4]@2 ~", // Esus2 Esus4 Em Bsus4
B: "e2!4 d2!3 [d2,a3,d4,f#4], [b3,e4,a4]@2 [b3,e4,g4]@2 ~ [a3,d4,f#4]@2 ~", // D Esus4 Em D
C: "c2!7 [c2,g3,c4,d4], [a3,d4,f#4]@2 [g3,c4,e4]@2 ~ [g3,c4,d4]@2 ~", D: "c2!6 d2!2, [a3,d4,f#4] [g3,c4,e4]@3",
E: "[c2,a3,d4,f#4]@2 b2 a2 b2 c3 a2 g2, ~ [g3,c4,e4] ~@2", F: "c2!4 c3 a2 g2 a2, [a3,d4,f#4] [g3,c4,e4] ~@2",
G: "g2!8, [c4,d4,g4]@3 [b3,d4,g4]@5", H: "d3!8, [d4,g4,a4]@3 [d4,f#4,a4]@5",
I: "e2!8, [c4,e4,g4]@3 [c4,e4,g4]@3 [c4,e4,g4]@2", J: "f#2!8, [d4,f#4,a4]@3 [d4,f#4,a4]@3 [d4,f#4,a4]@2",
K: "g2!8, [e4,g4,c5]@3 [e4,g4,c5]@3 [e4,g4,c5]@2", L: "b2!8, [e4,a4,c#5]!4",
M: "[b2,e4,a4,c#5] [b2,d#4,f#4,b4] b2!6, ~ [d#4,f#4,b4]!3", // A B
N: "c3@2 c3@2 c3 e3 c3 e3 c3@2 [c3,e4,g4,c5]@2 [c3,e4,g4,c5]@2 [c3,e4,g4,c5]@2, [e4,g4,c5] ~@3", // C
O: "g2@2 g2@2 g2 b2 g2 b2 g2@2 [g2,b3,d4,g4]@2 [g2,b3,d4,g4]@2 [g2,b3,d4,g4]@2, [b3,d4,g4] ~@3", // G
P: "g2@2 g2@2 g2 b2 g2 b2 g2@2 g2@2 g2@2 g2@2, [b3,d4,g4] ~@2 [b3,d4,g4]", Q: "a#2!8, [a#3,d4], g4@3 f4@3 e4@2",
R: "a2!6 [a2,e4] [a2,f4], [a3,c4], g4@3 f4@3 ~@2", // A5 Dm Am
S: "g2@2 g2@2 g2@2 g2@2 g2@2 g2@2 g2@2 g4 a4, a4@7 ~, [b3,d4]@6 ~ g2", T: "g2!6 g2@2, [d4,g4,b4]",
U: "e2!5 d2!2 [d2,a3,d4,f#4], [b3,e4,a4]@2 [b3,e4,g4]@2 ~ [a3,d4,f#4]@2 ~", V: "e2!8", W: "e2!8, [g3,b3,e4]",
X: "g2!8, [d4,g4,b4]@3 [d4,g4,b4]@5", Y: "d2!8, [d4,f#4,b4]@3 [d4,f#4,a4]@5", Z: "f2!8, [c4,f4,g4]@3 [c4,f4,g4]@5",
AA: "e2!8, [c4,e4,g4]@3 [c4,e4,g4]@5", AB: "d#2!8, [d#4,g4,c5]@3 [d#4,g4,c5]@5",
AC: "d2!8, [d4,g4,c5]@3 [d4,g4,b4]@5", AD: "c#2!8, [c#4,e4,g4,b4]!4", AE: "c2!8, [c4,e4,g4,b4]@3 [c4,e4,g4]@5",
AF: "d2!5 [d2,b4] d2!2, [d4,f#4,a4]@3 [d4,f#4]@5, ~@3 a4@2 ~ c5@2", AG: "e2!8, [e4,g4,b4]", AH: "e2!8, ~ [e4,g4,d5]",
AI: "e2!5 d2!3, [e4,g4,d5] ~", AJ: "e2!4 d2 [d2,a3,d4,f#4] d2 [d2,a3,d4,f#4], [b3,e4,a4] [b3,e4,g4] ~@2",
AK: "e2!2 [e2,b3,e4,g4] ~@5, [b3,e4,a4] ~@3", // Em Esus4
})).s("gm_synth_strings_1").gain(0.41)
// bass · electric bass finger · "Bass"
const bass = note(`<
A@3 B C D A B C E A B C F A B C@2 G H G H A I G J@2 A B C D A B C@2 G H G H A I G J@2 K L K L M@2 N G@2 A B C@2 A O
C@2 G H G H A I G J@4 A@5 B C@2 A B C@2 A B C@2 G P Q A R P S C P A@3 O C@2 A B C@2 T
>`.pickRestart({
A: "e1 ~ e1 ~ e1 ~ e1 ~ e1 ~ e1 ~ e1 ~ e1 ~", B: "e1 ~ e1 ~ e1 ~ e1 ~ d1 ~ d1 ~ d1 ~ d1 ~",
C: "c1 ~ c1 ~ c1 ~ c1 ~ c1 ~ c1 ~ c1 ~ c1 ~", D: "c1 ~ c1 ~ c1 ~ c1 ~ c1 ~ c1 ~ d1 ~ d1 ~",
E: "c1 ~ c1 ~ b1 ~ a1 ~ b1 ~ c2 ~ a1 ~ g1 ~", F: "c1 ~ c1 ~ c1 ~ c1 ~ c2 ~ a1 ~ g1 ~ a1 ~",
G: "g1 ~ g1 ~ g1 ~ g1 ~ g1 ~ g1 ~ g1 ~ g1 ~", H: "d2 ~ d2 ~ d2 ~ d2 ~ d2 ~ d2 ~ d2 ~ d2 ~",
I: "f#1 ~ f#1 ~ f#1 ~ f#1 ~ f#1 ~ f#1 ~ f#1 ~ f#1 ~", J: "b1 ~ b1 ~ b1 ~ b1 ~ b1 ~ b1 ~ b1 ~ b1 ~",
K: "c2 ~ c2 ~ c2 e2 c2 e2 c2 ~ c2 ~ c2 ~ c2 ~", L: "g1 ~ g1 ~ g1 b1 g1 b1 g1 ~ g1 ~ g1 ~ g1 ~",
M: "a#1 ~ a#1 ~ a#1 ~ a#1 ~ a#1 ~ a#1 ~ a#1 ~ a#1 ~", N: "a1 ~ a1 ~ a1 ~ a1 ~ a1 ~ a1 ~ a1 ~ a1 ~",
O: "e1 ~ e1 ~ e1 ~ e1 ~ e1 ~ d1 ~ d1 ~ d1 ~", P: "d1 ~ d1 ~ d1 ~ d1 ~ d1 ~ d1 ~ d1 ~ d1 ~",
Q: "f1 ~ f1 ~ f1 ~ f1 ~ f1 ~ f1 ~ f1 ~ f1 ~", R: "d#1 ~ d#1 ~ d#1 ~ d#1 ~ d#1 ~ d#1 ~ d#1 ~ d#1 ~",
S: "c#1 ~ c#1 ~ c#1 ~ c#1 ~ c#1 ~ c#1 ~ c#1 ~ c#1 ~", T: "e1@2 e1 ~@5",
})).s("gm_electric_bass_finger").gain(0.54)
// drums · kick
const kick = s("bd").struct(`<
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 B A B A B A B A B A B C D
>`.pickRestart({
A: "x!2", B: "x ~@2 x ~@2 x ~ x ~@7", C: "x ~@6 x ~@4 x ~ x!2", D: "~@2 x!2 ~@12",
})).gain(0.39)
// drums · snare
const snare = s("sd").struct("<[~ x ~ x]!107 [x!2 ~@2]>").gain(0.39)
// drums · low tom
const low_tom = s("lt").struct("<~@106 [~@10 x!2 ~@4] ~>").gain(0.39)
// drums · hihat
const hihat = s("hh").struct("<[x!9 ~ x!3 ~ x ~]!106 [x!8 ~@6 x ~] ~>").gain(0.31)
// drums · hihat · soft notes
const hihat_soft = s("hh").struct("<[~@9 x ~@3 x ~ x]!106 ~@2>").gain(0.2)
// drums · mid tom
const mid_tom = s("mt").struct("<~@106 [~@8 x!2 ~@6] ~>").gain(0.39)
// drums · open hat
const open_hat = s("oh").struct("<~@106 [~@13 x ~@2] ~>").gain(0.39)
// drums · crash
const crash = s("cr").struct("<~@106 [~@3 x] [x!2 ~@2]>").gain(0.28)
stack(synth_strings_1, bass, kick, snare, low_tom, hihat, hihat_soft, mid_tom, open_hat, crash)
More by Queen
We Are The Champions1978 · F major · 95 bpmRadio Ga GaF major · 110 bpmWho Wants to Live ForeverG major · 72 bpmAnother One Bites The DustG major · 115 bpmBohemian RhapsodyB♭ major · 70 bpmUnder PressureD major · 113 bpmCrazy Little Thing Called LoveD major · 233 bpmFriends Will Be FriendsG major · 74 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.