Strudelify

Wet Hands

C418

KeyA majorTempo72 bpm
0:00/0:00
// Wet Hands — C418
// 72 bpm, 4/4, key A major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Transcription provider: pdmx. https://musescore.com/score/5854557; license: https://creativecommons.org/publicdomain/zero/1.0/
// note: Full arrangement: all 26 bars on a 16-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(72/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.

// other · violin
const violin = note("<A@4 B C D@2 E F E G H@2 I@2 J K L@2 M@2 N@4>".pickRestart({
  A: "a3/4", B: "g#4@3 a4", C: "f#4@6 e4 f#4", D: "[g#4@6 b4 c#5@2 f#4@5 c#4 e4]/2", E: "g3 b3 d4 f#4 a4 f#4 d4 b3",
  F: "g3 b3 g4 f#4 a4@4", G: "g3 b3 d4 f#4 a4@4", H: "e4/2", I: "[d5@3 c#5 a4@2 e5 f#5@2 d5@5 b4 c#5]/2",
  J: "d5@2 c#5 d5@2 f#5@3", K: "c#5@6 b4 a4", L: "b4/2", M: "[g5 f#5 e5 d5 e5 d5 e5 f#5@2 e5@3 a5@4]/2",
  N: "[g#5 e5 b4 g#4 e4@28]/4",
})).s("gm_violin").gain(0.2)

// other · viola
const viola = note("<~@4 A B C@2 D@2 E@2 F G ~@12>".pickRestart({
  A: "g#3@3 a3", B: "f#3@6 e3 f#3", C: "[g#3@6 b3 c#4@2 f#3@5 c#4 e4]/2", D: "[g4@3 f#4 d4@2 a3 b3@9]/2",
  E: "[g4@2 f#4@2 d4@2 a3 b3@7 a3@2]/2", F: "a3 c#4 a4 b4 c#5 b4 a4 e4", G: "a3 c#4 e4 b4 c#4 e4 a4 c#5",
})).s("gm_viola").gain(0.4)

// other · viola · soft notes
const viola_soft = note("<A@4 ~@10 B C D E F@2 G@2 H@4>".pickRestart({
  A: "a3/4", B: "g#2 d4 f#4 a4 c#4@4", C: "b3 d4 f#4 a4 c#4@4", D: "g3 b3 d4 g4 a3@4", E: "[a3,e4]", F: "b3/2",
  G: "[g4 f#4 e4 d4 e4 d4 e4 f#4@2 e4@3 a4@4]/2", H: "[g#4 e4 b3 g#3 e3@28]/4",
})).s("gm_viola").gain(0.2)

// other · cello · "Violoncello"
const cello = note("<A B A B A B A C D@2 E@2 F@2 G@2 H I J K L M N O ~@2>".pickRestart({
  A: "a2 c#3 a3 b3 c#4 b3 a3 e3", B: "d3 f#3 c#4 e4 c#4 a3@3", C: "d3 f#3 c#4 e4 c#4 a3 ~@2",
  D: "[g3@3 f#3 d3@2 a2 b2@9]/2", E: "[g3@2 f#3@2 d3@2 a2 b2@7 a2@2]/2", F: "e2/2", G: "b2 d3 f#3 a3 c#4@4",
  H: "g2 b2 d3 g3 a3@4", I: "[a2,e3]", J: "e2 g#2 b2 e3 g#3 e3 b2 g#2", K: "e2 g#2 b2 e3 g#3 e3 a2@2",
  L: "g2 b2 d3 f#3 a3 f#3 d3 b2", M: "a2 c#3 e3 a3 c#4 b3 a3 e3", N: "g#4 e4 b3 g#3 e3@4", O: "b3 g#3 e3 b2 g#2@4",
})).s("gm_cello").gain(0.3)

// other · cello · "Violoncello" · soft notes
const cello_soft = note("<~@24 [e2 g#2 b2 e3 b2 g#2@3]!2>").s("gm_cello").gain(0.2)

// bass · contrabass
const bass = note("<A B A B A B A C D E D F A G H@2 I J K L D M N O ~@2>".pickRestart({
  A: "a1 c#2 a2 b2 c#3 b2 a2 e2", B: "d2 f#2 c#3 e3 c#3 a2@3", C: "d2 f#2 c#3 e3 c#3 a2 ~@2",
  D: "g1 b1 d2 f#2 a2 f#2 d2 b1", E: "g1 b1 g2 f#2 a2@4", F: "g1 b1 d2 f#2 a2@4", G: "a1 c#2 e2 b2 c#2 e2 a2 c#3",
  H: "b1 d2 f#2 a2 c#3@4", I: "g1 b1 d2 g2 a2@4", J: "[a1,e2]", K: "e1 g#1 b1 e2 g#2 e2 b1 g#1",
  L: "e1 g#1 b1 e2 g#2 e2 a1@2", M: "a1 c#2 e2 a2 c#3 b2 a2 e2", N: "g#3 e3 b2 g#2 e2@4", O: "b2 g#2 e2 b1 g#1@4",
})).s("gm_contrabass").gain(0.3)

// bass · contrabass · soft notes
const bass_soft = note("<~@24 [e1 g#1 b1 e2 b1 g#1@3]!2>").s("gm_contrabass").gain(0.2)

stack(violin, viola, viola_soft, cello, cello_soft, bass, bass_soft)

More by C418