Strudelify

Le bourgeois gentilhomme LWV 43

Jean-Baptiste Lully

KeyF majorTempo200 bpm
0:00/0:00
// Le bourgeois gentilhomme LWV 43 — Jean-Baptiste Lully
// 200 bpm, 2/2, key F major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Tempo changes preserved in elapsed time; displayed bars use the dominant tempo.
// note: metre changes (2/2 at bar 1, 3/4 at bar 16, 2/2 at bar 29, 6/4 at bar 39) are rendered on a constant 2/2 grid of one bar per cycle
// note: ch 1 "Violin" named as a string part, played on violin (its bassoon patch is not one); ch 4 "Violin" named as a string part, played on violin (its bassoon patch is not one); ch 7 "Violin" named as a string part, played on violin (its bassoon patch is not one); ch 11 "Viola" named as a string part, played on viola (its bassoon patch is not one); ch 14 "Violoncello" named as a string part, played on cello (its bassoon patch is not one)
// note: Transcription provider: pdmx. https://musescore.com/score/2335821; license: https://creativecommons.org/publicdomain/zero/1.0/
// note: Full arrangement: all 59 bars on a 24-step grid, each part at one level. Source detail keeps the original performance.
setcpm(200/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@2 B C@2 D@3 E F@4 G@6 H@7 I@2 J@2 K L M N O P Q R S T U V W X@2 Y Z@2 AA AB AC AD AE AF AG AH AI AJ@2
>`.pickRestart({
  A: "[~@21 d4@26 ~]/2", B: "~@5 d4@3 d4@8 g4@8", C: "[~ f4@6 ~@8 f4@3 g4@26 ~@4]/2",
  D: "[~@2 g4@2 g4@6 ~@9 a4@2 bb4@9 a4@9 g4@14 g4@3 a4@14 a4@2]/3",
  E: "~ g4 gb4 g4 gb4 g4 gb4 g4 gb4 g4 gb4 ~ g4 gb4 g4 gb4 g4 gb4 g4 gb4 g4 gb4 g4 gb4",
  F: "[g4 gb4 ~ g4 gb4 g4 gb4 g4 gb4 g4 gb4 d5@17 a4@15 a4@2 b4@15 b4@3 c5@14 c5@3 c5@8 d5@8]/4",
  G: "[~ g4@8 g4@9 f4@17 f4@9 f4@8 f4@26 f4@24 f4@12 f4@12 g4@12 g4@6]/6",
  H: "[~ a4@2 bb4@12 bb4@6 a4@12 bb4@6 d5@12 d5@6 d5@12 d5@6 g4@9]/7", I: "[~ a4@2 bb4@6 c5@6 d5@9]/2",
  J: "[c5@3 bb4@3 a4@36 ~@4 bb4@2]/2", K: "bb4@6 a4@4 g4@2 g4 [gb4,g4] gb4 g4 [gb4,g4] gb4 g4 [gb4,g4] gb4 e4 gb4 ~",
  L: "g4@3 bb4", M: "bb4@6 bb4@3 c5@2 bb4", N: "a4 a4@2 a4",
  O: "g4@10 a4@2 bb4 [a4,bb4] a4 bb4 [a4,bb4] a4 bb4 [a4,bb4] a4 ~ g4@2", // Bbmaj7
  P: "g4 [gb4,g4] gb4 g4 [gb4,g4] gb4 g4 [gb4,g4] gb4 g4 [gb4,g4] gb4 g4 [gb4,g4] gb4 g4 [gb4,g4] gb4 d5@4 d5@2", // Gmaj7
  Q: "a4@3 a4", R: "a4 bb4", S: "a4@3 a4@3 a4@5 g4",
  T: "g4 [gb4,g4] gb4 g4 [gb4,g4] gb4 g4 [gb4,g4] gb4 g4 [gb4,g4] gb4 g4 [gb4,g4] gb4 g4 [gb4,g4] gb4 g4 [gb4,g4] gb4 g4 [gb4,g4] gb4", // Gmaj7
  U: "g4 [gb4,g4] gb4 g4 [gb4,g4] gb4 g4 [gb4,g4] gb4 g4 [gb4,g4] gb4 g4@10 g4@2", V: "g4@9 ~@2 g4", W: "g4 c5",
  X: "[c5@10 c5@2 c5@18 d5@4 c5@2 c5 [b4,c5] b4 c5 [b4,c5] b4 c5 [b4,c5] b4 a4 b4 ~]/2", Y: "c5@9 ~@2 c5",
  Z: "[c5@2 c5@3 d5 c5@2]/2", AA: "c5@10 bb4@2 bb4 [a4,bb4] a4 bb4 [a4,bb4] a4 bb4 [a4,bb4] a4 ~ bb4@2",
  AB: "c5@2 g4 bb4", AC: "g4 c5 a4@2", AD: "a4@3 bb4@2 c5 d5@3 c5@2 bb4", AE: "a4@5 g4 g4@5 a4", AF: "bb4 c5",
  AG: "g4 bb4 g4 c5", AH: "a4@6 a4@3 bb4@2 c5",
  AI: "d5@6 c5@4 bb4@2 bb4 [a4,bb4] a4 bb4 [a4,bb4] a4 bb4 [a4,bb4] a4 ~ g4@2", AJ: "[g4@3 ~]/2",
})).s("gm_violin").gain(0.22)

// other · violin
const violin_2 = note(`<
  A@2 B C@2 D@3 E@5 F G H@7 I@5 J@3 K L M N O P Q R S T@2 U V W X Y Z AA AB AC AD K AE AF AG AH AI AJ AK
>`.pickRestart({
  A: "[~@7 bb3@2 ~@3 c4 d4@3]/2", B: "~@8 d4@9 ~@7", C: "[~ d4@6 ~@8 c4@3 bb3@9 ~@8 d4@6 ~@7]/2",
  D: "[~@2 d4@2 c4@17 d4@17 ~ eb4@8 bb3@9 c4@6 ~@8 c4@2]/3",
  E: "[~ a3@34 gb4@6 ~ gb4@2 g4@8 a4@6 ~ g4@2 gb4@8 g4@15 g4@3 g4@14 g4@3 f4@8 f4@8]/5",
  F: "~ g4@6 f4@2 eb4@6 ~ d4@2 c4@6", G: "bb3@2 ~ a3@8 c4@6 bb3@3 bb3@4",
  H: "[~ a3 a3@13 c4@6 f4@12 d4@6 bb3@6 c4@6 d4@6 eb4@6 c4@6 c4@12 d4@3]/7",
  I: "[~@6 d4@12 g4@24 g4@24 g4@12 g4@24 g4@12 g4 gb4 ~ g4 gb4 ~]/5",
  J: "[g4 gb4 ~ g4 gb4 ~ g4@12 d4@12 d4@36 ~@4 d4@2]/3", K: "d4!2", L: "d4@3 bb3@6 bb3@2 c4", M: "d4@2 d4 c4",
  N: "c4@3 f4@3 d4@5 d4", O: "d4 eb4", P: "d4@18 f4@3 ~ f4@2", Q: "e4 a4", R: "a4@6 g4@3 g4@2 f4",
  S: "e4@6 d4@6 d4 [db4,d4] db4 d4 [db4,d4] db4 d4 [db4,d4] db4 ~ d4@2", T: "[d4@18 d4@5 d4]/2", U: "eb4@6 d4@5 d4",
  V: "d4 [c4,d4] c4 d4 [c4,d4] c4 d4 [c4,d4] c4 d4 [c4,d4] c4 d4 [c4,d4] c4 d4 [c4,d4] c4 g4@6", W: "g4!2 f4@2",
  X: "f4@2 g4 ab4@3 g4@6", Y: "g4@9 ~@2 g4", Z: "g4@3 g4@3 f4@5 e4", AA: "f4@3 g4@3 e4@5 f4", AB: "f4",
  AC: "f4@2 f4 g4", AD: "g4 a4 a4@2", AE: "d4@5 c4 b3@6", AF: "g4 f4", AG: "f4 g4!2 a4", AH: "a4 d4",
  AI: "d4@6 d4@5 c4",
  AJ: "c4 [b3,c4] b3 c4 [b3,c4] b3 c4 [b3,c4] b3 c4 [b3,c4] b3 c4 [b3,c4] b3 c4 [b3,c4] b3 c4 [b3,c4] b3 c4 [b3,c4] b3", // Cmaj7
  AK: "c4 [b3,c4] b3 c4 [b3,c4] b3 c4 [b3,c4] b3 c4 [b3,c4] b3 ~@12", // Cmaj7
})).s("gm_violin").gain(0.21)

// other · viola
const viola = note(`<
  A@3 B@2 C@2 D E@5 F@4 G@8 H@5 I J K L M N O P Q R@2 S T U@2 V@2 W X Y Z AA AB@2 AC AD AE AF@2
>`.pickRestart({
  A: "[~@21 g3@17 ~ a3@17 g3@16]/3", B: "[~ bb3@17 bb3@17 g3@6 ~@7]/2", C: "[~@2 g3@2 g3@9 ~@8 g3@9 a3@9 bb3@9]/2",
  D: "~@4 a3@7 a3", E: "[~ a3@34 a3@9 g3@8 d4@17 d4@15 d4@3 c4@14 c4@3 c4@8 bb3@8]/5",
  F: "[~ bb3@8 c4@9 c4@17 f3@9 f3@8 f3@26 a3@18]/4",
  G: "[~ a3@2 bb3@6 bb3@12 g4@6 g4@12 g4@6 f4@12 f4@6 bb3@4 c4@2 d4@12 d4@12 d4@3]/8",
  H: "[~@3 c4@12 d4@6 c4@6 bb3@6 d4@6 d4@18 ~@2 bb3]/5", I: "g3@6 a3@5 a3", J: "g3@3 d4@6 d4@2 c4", K: "bb3@2 f3 g3",
  L: "f3 a3@2 d4", M: "d4@2 c4 bb3@3 a3@6", N: "a3@9 d4@2 d4", O: "e4@3 db4", P: "d4@2 d4 e4", Q: "e4@3 f4@2 g4 a4@6",
  R: "[a4@18 g3@5 g3]/2", S: "c4 g3", T: "g3@9 ~@2 g3", U: "[g3@3 c4@3 c4@3 f4@6 c4@3 c4@5 c4]/2",
  V: "[e4@6 c4@9 ~@2 c4 c4@6]/2", W: "f4@6 c4@5 bb3", X: "a3@5 bb3 c4@6", Y: "c4@2 d4!2", Z: "c4!2 d4@2",
  AA: "d4@2 c4 bb3@2 a3 g3@3 d4@3", AB: "[d4@6 d4@9 ~@2 d4 c4@6]/2", AC: "d4!2 c4!2", AD: "d4@6 d4@2 c4 bb3@2 a3",
  AE: "g3 d4 d4@2", AF: "[d4@3 ~]/2",
})).s("gm_viola").gain(0.21)

// other · cello · "Violoncello"
const cello = note(`<
  A@2 B C@5 D@5 E@2 F@7 G@3 H@5 I J@2 K L M N O P Q@2 R S T U V W X Y@2 Z AA AB@2 AC AD AE AF@2
>`.pickRestart({
  A: "[~@21 g3@9 ~@9 g3 gb3 g3 gb3 g3 gb3 g3 gb3 g3]/2", B: "gb3 g3 gb3 g3 gb3 ~ g3 gb3 g3@9 ~@7",
  C: "[~ d3@9 ~@8 eb3@9 ~@8 b2@17 c3@17 g2@9 f2@9 eb2@33]/5",
  D: "[~ d2@34 d3@17 d4@15 d4@2 b3@9 g3@9 c4@14 c4@3 a3@8 bb3@8]/5", E: "[~ eb3@17 f3@17 a2@9 bb2@4]/2",
  F: "[~@2 f2@13 f2@12 bb2@4 c3@2 d3@6 eb3@6 c3@6 g3@6 eb3@12 f3@12 bb2@3]/7",
  G: "[~@2 a2@4 g2@24 g3@8 a3@4 bb3@12 c4 b3 ~ c4 b3 ~ c4 b3 ~ c4 b3 ~ c4 b3 ~ c4 b3 ~]/3",
  H: "[c4 b3 ~ c4 b3 ~ c4@12 c3@12 bb2@12 a2@12 g2@24 d3@36 ~@4 g3@2]/5", I: "g3 d3", J: "[g2@5 g3 d3 eb3]/2",
  K: "f3@12 g3 [gb3,g3] gb3 g3 [gb3,g3] gb3 g3 [gb3,g3] gb3 g3 [gb3,g3] gb3", L: "g3 c3", M: "d3@3 d4",
  N: "d4 [db4,d4] db4 d4 [db4,d4] db4 d4 [db4,d4] db4 d4 [db4,d4] db4 d4 [db4,d4] db4 d4 [db4,d4] db4 a3@6", O: "d4 g3",
  P: "a3 d3 a2@2", Q: "[d3@18 g3@5 f3]/2", R: "eb3@12 c3 [b2,c3] b2 c3 [b2,c3] b2 c3 [b2,c3] b2 c3 [b2,c3] b2", S: "c3",
  T: "e2@6 f2@5 g2", U: "ab2 f2 g2@2", V: "c3 c4", W: "bb3@6 a3@5 g3", X: "f3 bb2 c3@2",
  Y: "[f2@5 g2 a2@12 bb2@3 g2@3]/2", Z: "c3 a2 d3@2", AA: "gb2@3 g2@2 a2 bb2@3 a2@2 g2", AB: "[d3 d2 g2@4 a2@2]/2",
  AC: "bb2 g2 c3 a2", AD: "d3@6 gb2@3 g2@2 a2", AE: "bb2@3 a2@2 g2 d3@3 d2@3", AF: "[g2@3 ~]/2",
})).s("gm_cello").gain(0.32)

stack(violin, violin_2, viola, cello)

More by Jean-Baptiste Lully