Strudelify

Vera

Pink Floyd

KeyE minorTempo103 bpm
0:00/0:00
// Vera — Pink Floyd
// 103 bpm, 4/4, key E minor. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: pitch bends are ignored
// note: Full arrangement: all 32 bars on a 16-step grid, each part at one level. Source detail keeps the original performance.
setcpm(103/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.

// other · violin
const violin = note("<~@3 A@2 B ~@14 C@4 D@4 E F ~@2>".pickRestart({
  A: "[e4@7 d4]/2", B: "c4", C: "[g3 f#4, d4]/4", D: "[~@7 g3@3 c4@4 d4@2, [b4,f#5] ~]/4", E: "g4 f#4", F: "e4",
})).s("gm_violin").gain(0.19)

// chords · synth strings 2
const synth_strings_2 = note("<~@3 A@2 B ~@3 C@5 D@2 E@2 F@2 G@4 H@3 I@2 J@3>".pickRestart({
  A: "[e4@7 d4]/2", B: "c4", C: "e3/5", D: "[e4 [d4,f#4], a4]/2", E: "[g4 e4 ~@2, b4]/2", F: "[e3,e4]/2",
  G: "[g3 f#3, d4]/4", H: "g4/3", I: "d4/2", J: "e4/3",
})).s("gm_synth_strings_2").gain(0.16).pan(0.7)

// chords · synth strings 1 · ""The Wall.""
const synth_strings_1 = note("<~@14 A@2 B@2 ~@6 C@2 ~ D@2 E@3>".pickRestart({
  A: "[e4 [d4,f#4], a4]/2", B: "[g4 e4 ~@2, b4]/2", C: "[f#4,f#5]/2", D: "d4/2", E: "e4/3",
})).s("gm_synth_strings_1").gain(0.11).pan(0.3)

// chords · recorder
const recorder = note("<~@11 A@3 B@2 C@2 D@2 ~@2 E@2 F@2 ~@6>".pickRestart({
  A: "[f#5 ~ b4@4, ~ e5@5]/3", B: "[e5 [d5,f#5], a5]/2", C: "[g5 e5 ~@2, b5]/2", D: "[e4,b4]/2", E: "d5/2", F: "b4/2",
})).s("gm_recorder").gain(0.1)

// other · whistle
const whistle = note("<~@10 A@4 B@2 C D E@2 ~@12>".pickRestart({
  A: "e6/4", B: "[~ f#6, a6]/2", C: "b6 d7 g6@2", D: "b6", E: "b6/2",
})).s("gm_whistle").gain(0.16)

// chords · acoustic guitar nylon
const acoustic_guitar_nylon = note("<~@3 A B C D E F G ~ H I ~ J K ~ L M ~@5 N B C D E O P ~>".pickRestart({
  A: "~ g3 e3 g3 e3 g3 ~ g3, e3 ~@2 e3", B: "~ g3 e3 g3 ~ g3 ~ g3, e3 ~ e3 d3", C: "~ e3 c3 e3 c3 e3 ~ e3, c3 ~@2 c3",
  D: "~ f#3 d3 f#3 d3 f#3 ~ f#3, d3 ~@2 d3", E: "~ d3 g3 d3 ~ d3 f#3 d3, g3 ~ f#3 ~",
  F: "~ e3 c3 e3 c3 e3 c3 e3, c3 ~@3", G: "e3@3 ~@13", H: "~@2 e3 f#3 ~@2 e3!2 ~@2 e3 d3 ~@2 g3!2, ~ g3 f#3 e3",
  I: "a3@2 ~ b3 ~@2 a3!2 b3@4 ~@4, ~ a3 c4@2 ~@4", J: "~ a3@4 ~@11, [a2,d3,f#3] ~@3",
  K: "~ f#3@4 ~@11, [f#2,a2,d3] ~@3", L: "~@2 g3 e3 f#3 e3 b2 d3", M: "e3 ~@3",
  N: "d3 ~ g3@2 e3@2 g3@2 e3@2 g3@2 ~@2 g3@2, f#2, [b2,e3] ~@2 e3, ~ f#3@15", O: "~ e3 c3 e3 c3 e3 b2 d3, c3 ~@3",
  P: "e3",
})).s("gm_acoustic_guitar_nylon").gain(0.26).pan(0.4)

// other · electric guitar jazz · G F# E
const electric_guitar_jazz = note(`<
  ~@10
  [e3 ~ d3@3 ~ b2@3 ~ a2@3 ~ g2 ~]
  [e2@11 ~@5]
  ~@16
  [[g2,g3] [f#2,f#3]]
  [[e2,e3]@4 ~@2 b1 d2]
  e2
  ~
>`).s("gm_electric_guitar_jazz").gain(0.26).pan(0.6)

// other · pizzicato strings
const pizzicato_strings = note("<~ A B ~@4 C ~@12 A ~ D ~@9>".pickRestart({
  A: "[g2,g3]", B: "[d2,d3]", C: "[g2,g3] ~", D: "[d3,d4]",
})).s("gm_pizzicato_strings").gain(0.41).pan(0.8)

// bass · electric bass finger
const bass = note("<~ A B ~@4 C ~ D ~@3 D E F G@2 D ~ A ~ H ~@6 I J@2>".pickRestart({
  A: "[g1,g2]", B: "[d1,d2]", C: "g2 f#2", D: "[e1,e2]", E: "[a1,a2]", F: "~@6 e1 f#1", G: "[g1 d1 [c1,c2]@4 ~@2]/2",
  H: "[d2,d3]", I: "~@6 b1 d2", J: "e2/2",
})).s("gm_electric_bass_finger").gain(0.31).pan(0.2)

stack(
  violin, synth_strings_2, synth_strings_1, recorder, whistle, acoustic_guitar_nylon, electric_guitar_jazz,
  pizzicato_strings, bass
)

More by Pink Floyd