Strudelify

Air 'on the G string' Orchestral Suite No. 3 in D major BWV 1068

Johann S. Bach

KeyD majorTempo72 bpm
0:00/0:00
// Air 'on the G string' Orchestral Suite No. 3 in D major BWV 1068 — Johann S. Bach
// 72 bpm, 4/4, key D major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Transcription provider: pdmx. https://musescore.com/score/24313; license: https://creativecommons.org/publicdomain/mark/1.0/
// note: Full arrangement: all 36 bars on a 16-step grid, each part at one level. Source detail keeps the original performance.
setcpm(72/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.

// chords · church organ · "Organ"
const church_organ = note("<A@3 B C@2 A@3 B C@2 D E@2 F G@4 H@3 I D E@2 F G@4 H@3 I>".pickRestart({
  A: "[d3@2 d4@2 c#4@2 c#3@2 b2@2 b3@2 a3@2 a2@2 g2@2 g3@2 g#3@2 g#2@2 a2@2 a3@2 g3@2 g2@2 f#2@2 c5 b4 [e3,c5]@2 [c5,a5] c5 [d#2,f#4,b4]@2 d#3@2 b2@2 b3@2, [f#4,a4,d5]@4 [f#4,b4,d5]@6 [e4,b4]@2 [c#4,e4,a4]@5 d4@2 ~@5, ~@17 f#3 ~ [e2,e4] ~@4]/3", // C F B D Bm E5 A E
  B: "[e2,e4,g4,b4]@2 e5 d5 e5 f#5 [e5,g5] e5 [c#2,e4,a4]@2 c#3@2 a2@2 a3@2, ~ b4@2 ~@5, ~ e3 d3 d2 ~@4", // Em A
  C: "[[d3,d4]@2 ~@2 c#4@2 [c#3,e4]@2 [b2,f#4]@2 g#4 a4 [g#3,b3,b4]@2 [e3,g#4]@2 [a3,a4]@2 [d3,f#4]@2 [e3,b3]@2 [e2,e4,g#4]@2 a2 b2 c#3 d3 e3 g3 f#3 e3, a4@5 ~@4 a4@2 ~@5, f#4@3 ~@4 e4@2 ~@7, ~ d4@2 ~@2 [b3,d4] ~@6 [c#4,e4,a4]@4]/2", // D C#m B5 G#m E A D E5 …
  D: "a2@2 a3@2 g3@2 g2@2 f#4 b4 d#4 e4 ~ b4 a4 g4, [c#4,e4,a4]@4 f#2 [f#3,c5] f#4@2, ~@6 e3 e2", // A F#dim
  E: "[~ g4 a4 ~ [f#3,d#4]@2 [b2,b4,d#5]@2 e3@2 e4@2 d4@2 d3@2 c#4 d4 e4 f#4 g4 f#4 g4 e4 ~ d5 [e4,c#5] [d4,b4] a#4 b4 [a#2,f#4,c#5]@2, [d#2,f#4] d#3 ~@2 g4@4 ~ c#4 b3 ~@5, ~@3 f#4@3 ~@2 e5@17 ~@7, ~@4 b4@2 b3@2 c#3 ~@2 b2 [a#2,f#4] b2 [c#3,c#4] ~]/2", // D#m B C#m G F# D#m C#
  F: "[b2,f#4,b4]@2 e4 d4 [e3,g4,b4]@2 f#4 e4 b2@2 b3@2 a3@2 a2@2, ~ [g3,b4] ~ [f#3,a#4] [d4,f#4,b4]@4", // B5 Em G F# Bm
  G: "[[g#2,b3]@2 [g#3,b4]@2 a4 g#4 [f#2,a4]@2 [e2,b3,g#4]@2 e4 f#4 g#4 a4 d2@2 c#2@2 [c#3,e4]@2 [d3,f#4]@2 [e3,e4,g#4]@2 [a2,e4]@2 ~ d4 c#4 d4 e4 c#4 [f#2,a3]@2 b4 c5 b4 c#5 g2@2 g#2@2 c#5 b4 c#5 d#5 a2@2 a#2@2 d#5 c#5 d#5 e5 [b2,d#5,f#5]@2 ~ d#5 e5 ~@2 b4 ~ e4, e4@4 f#4@4 ~@4 e4@6 ~@8 a3@2 g3@2 g2@2 ~@2 f#3@2 g3@2 ~@4 g#3@2 a3@2 ~@4 a#3@2 b3@2 ~@2 [e3,b4]@3 b4@2 ~@3, ~@2 f#3 ~@2 e3 d3 b4@2 a4@2 ~ a4@5 d4@2 [b4,d5]@2 e4@2 [c#5,e5]@2 f#4@2 ~@2 e4 [d4,g4] [d3,g4]]/4", // G#m F#m E C#m D E A5 F#m …
  H: "[~ c#4 e4 a4 [a3,f#4,c#5]@2 [c#4,e4]@2 ~@2 c#5 d5 c3@2 c4@2 b3@2 [b2,e4,g4]@2 a2@2 a3@2 g3@2 g2@2 f#2@2 f#3@2 e4 b3 e4 g4 b4 a4 g4 f#4 ~ d5 c#5 b4 [d3,a4]@2 [g3,g4,b4]@2, [c#3,a4] [c#4,g4] ~ a4@2 d3 ~@6 d4@4 e3 [e2,b4] d2 d3 [c#3,e4] [a2,a4] ~@2, ~@8 d4@4 [d4,a4]@6 ~@2 [f#4,a4]@4 [g4,b4]@10 ~@2 e5@5 ~@7]/3", // F#m C#m Em D5 G F#m C#dim E5 …
  I: "a3@2 g3@2 [g4,a4] [f#4,a4] [a2,g4]@2 [d2,a3,d4,f#4]@8, [f#4,a4] e4 ~@2, ~@2 a3 ~@5", // Gsus2 F#m A7 D F#m
})).s("gm_church_organ").gain(0.48)

stack(church_organ)

More by Johann S. Bach