Strudelify

Die Gummibärenbande

Michael Alan Silversher

KeyF majorTempo130 bpm
0:00/0:00
// Die Gummibärenbande — Michael Alan Silversher
// 130 bpm, 4/4, key F major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Transcription provider: pdmx. https://musescore.com/score/5602330; license: https://creativecommons.org/publicdomain/zero/1.0/
// note: Full arrangement: all 42 bars on a 24-step grid, each part at one level. Source detail keeps the original performance.
setcpm(130/4)

// Notation: c3@3 lasts 3 steps · ~ is a rest · [...]/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 · trumpet · "Trompete in B"
const trumpet = note(`<
  A@2 B C D E B C D F G H I H I J@2 K B C D E L M N O P Q R Q R S@2 P Q R Q R T@2 U@2
>`.pickRestart({
  A: "bb3!4", B: "bb3 d4", C: "eb4 bb3", D: "eb4 d4", E: "c4 f3", F: "f3 c5", G: "d4@2 eb4 f4@5",
  H: "~ f4@2 f4!2 eb4 d4 c4", I: "d4@2 f4 bb3@4 ~", J: "[f4 eb4 d4 c4 ~ d4 ~ bb3@3 ~@6]/2",
  K: "~@12 bb5 a5 ~ g5 f5 ~ eb5 d5 ~ c5 bb4 ~", L: "c4 e4", M: "f4 c4", N: "f4 e4", O: "g3 d5", P: "e4@2 f4 g4@5",
  Q: "~ g4@2 g4!2 f4 e4 d4", R: "e4@2 g4 c4@4 ~", S: "[g4 f4 e4 d4 ~ e4 ~ c4@9]/2",
  T: "[g4 f4 e4 d4 ~ e4 ~ c5@7 ~ c5]/2", U: "[g4 f4 e4 d4 ~ e4 ~ c5@3 ~@6]/2",
})).s("gm_trumpet").gain(0.45)

// other · trumpet · "Trompete in B"
const trumpet_2 = note(`<
  A ~ B C B D B C B E F G H I F G J K B C B D L M L N O P Q R O P Q S P Q R O P T U@2
>`.pickRestart({
  A: "f4 a4 bb4 ~@21", B: "bb3", C: "g3 d4", D: "f3", E: "f3 a4", F: "~@16 f4 ~ bb4@2 ~@2 f4 ~", G: "bb4 ~@3",
  H: "~@15 eb4 d4 ~ eb4 f4 ~ g4 a4 ~", I: "bb4 ~@23", J: "~@4 bb4 ~ f5@4 bb4 ~ f5@10 bb4 ~",
  K: "g5@2 f5@2 eb5@2 f5@4 f5 ~ bb5@12", L: "c4", M: "a3 e4", N: "g3 b4", O: "~@16 g4 ~ c5@2 ~@2 g4 ~", P: "c5 ~@3",
  Q: "~@15 f4 e4 ~ f4 g4 ~ a4 b4 ~", R: "c5 ~@23", S: "c5 ~@15 g4 ~ c5@2 ~@2 g4 ~",
  T: "~@4 g4 ~ c5@2 ~@2 g4 ~ c5@6 ~@3 e4@3", U: "[g4 f4 e4 d4 ~ e4 ~ c5@3 ~@6]/2",
})).s("gm_trumpet").gain(0.45)

// other · trumpet · "Trompete in B"
const trumpet_3 = note(`<
  ~ A B C@2 D B C@2 E F G H I F G J K B C@2 D L M@2 N O P Q R O P Q S P Q R O P T U@2
>`.pickRestart({
  A: "~@12 bb5 a5 ~ g5 f5 ~ eb5 d5 ~ c5 bb4 ~", B: "bb3!3 d4 bb3 d4", C: "eb4!3 d4!3", D: "c4@4 c4@4 c4@4 c4@9 ~@3",
  E: "c4@4 d4@4 eb4@4 f4@6 f4 eb4 ~ d4 c4 ~", F: "~@16 f5 ~ bb5@2 ~@2 f5 ~", G: "bb5 ~@3",
  H: "~@15 eb5 d5 ~ eb5 f5 ~ g5 a5 ~", I: "bb5 ~@23", J: "~@4 bb3 ~ f4@4 bb3 ~ f4@10 bb3 ~",
  K: "g4@2 f4@2 eb4@2 f4@4 f4 ~ bb4@12", L: "c4!3 e4 c4 e4", M: "f4!3 e4!3", N: "d4@4 e4@4 f4@4 g4@6 g4 f4 ~ e4 d4 ~",
  O: "~@16 g5 ~ c6@2 ~@2 g5 ~", P: "c6 ~@3", Q: "~@15 f5 e5 ~ f5 g5 ~ a5 b5 ~", R: "c6 ~@23",
  S: "c6 ~@15 g5 ~ c6@2 ~@2 g5 ~", T: "~@4 g5 ~ c6@2 ~@2 g5 ~ c6@6 ~@3 g5@3", U: "[g5 f5 e5 d5 ~ e5 ~ c6@3 ~@6]/2",
})).s("gm_trumpet").gain(0.4)

// other · trumpet · "Trompete in B"
const trumpet_4 = note(`<
  A@2 B C D E B C F G H@2 I H I J@2 ~ B C D E K L M N O@2 P O P Q@2 O@2 P O P R@2 S@2
>`.pickRestart({
  A: "bb3!4", B: "d4 bb3 d4 f4 d4 f4", C: "g4 a4 bb4 f4 d4 ~", D: "g4 f4 eb4 f4 eb4 f4", E: "eb4@4 d4@4 bb3@4 c4@9 ~@3",
  F: "g4 f4 eb4 f4 d4 f4", G: "f3", H: "f4 ~@2 f4@5", I: "f4 ~@2 f4 d4@4", J: "[f4@2 f4@2 ~ a3 ~ f4@3 ~@6]/2",
  K: "e4 c4 e4 g4 e4 g4", L: "a4 b4 c5 g4 e4 ~", M: "a4 g4 f4 g4 e4 g4", N: "g3", O: "g4 ~@2 g4@5", P: "g4 ~@2 g4 e4@4",
  Q: "[g4@2 g4@2 ~ b3 ~ g4@9]/2", R: "[g4@2 g4@2 ~ b3 ~ g4@7 ~ g4]/2", S: "[g4@2 g4@2 ~ b3 ~ g4@3 ~@6]/2",
})).s("gm_trumpet").gain(0.4)

// other · trumpet · "Trompete in B"
const trumpet_5 = note(`<
  A@2 B C D E B C F G H I J K J L@2 A B C D E M N O P Q R S T S U@2 Q R S T S V@2 W@2
>`.pickRestart({
  A: "bb3!4", B: "d4 bb3 d4 f4 d4 f4", C: "g4 a4 bb4 f4 d4 ~", D: "g4 f4 eb4 f4 eb4 f4", E: "eb4@4 d4@4 bb3@4 c4@9 ~@3",
  F: "g4 f4 eb4 f4 d4 f4", G: "~ a3", H: "bb3 ~@2 bb3@5", I: "bb3 ~@2 bb3 a3@4", J: "bb3 ~@2 bb3 d4@2 f4@2",
  K: "bb3 ~@2 bb3 c4@2 a3@2", L: "[bb3@2 bb3@2 ~ f4 ~ d4@3 bb3@2 bb3@2 bb3@2]/2", M: "e4 c4 e4 g4 e4 g4",
  N: "a4 b4 c5 g4 e4 ~", O: "a4 g4 f4 g4 e4 g4", P: "~ b3", Q: "c4 ~@2 c4@5", R: "c4 ~@2 c4 b3@4",
  S: "c4 ~@2 c4 e4@2 g4@2", T: "c4 ~@2 c4 d4@2 b3@2", U: "[c4@2 c4@2 ~ g4 ~ e4@9]/2",
  V: "[c4@2 c4@2 ~ g4 ~ e4@7 ~ c4]/2", W: "[c4@2 c4@2 ~ g4 ~ e4@3 ~@6]/2",
})).s("gm_trumpet").gain(0.4)

// other · trumpet · "Trompete in B"
const trumpet_6 = note(`<
  A B C D@2 E C D@2 F G H I H I J@2 K C D@2 E L M@2 N O P Q P Q R@2 O P Q P Q S@2 T@2
>`.pickRestart({
  A: "~@4 bb3 ~ f4@4 bb3 ~ f4@10 bb3 ~", B: "g4@2 f4@2 eb4@2 f4@4 f4 ~ bb4@12", C: "f3!2", D: "g3 f3", E: "a3!2",
  F: "a3@18 g4 a4 ~ bb4 c5 ~", G: "d5@2 eb5 f5@5", H: "~ f5@2 f5!2 eb5 d5 c5", I: "d5@2 f5 bb4@4 ~",
  J: "[f5 eb5 d5 c5 ~ d5 ~ bb4@3 bb3@2 bb3@2 bb3@2]/2", K: "bb3!4", L: "g3!2", M: "a3 g3", N: "b3@18 a4 b4 ~ c5 d5 ~",
  O: "e5@2 f5 g5@5", P: "~ g5@2 g5!2 f5 e5 d5", Q: "e5@2 g5 c5@4 ~", R: "[g5 f5 e5 d5 ~ e5 ~ c5@9]/2",
  S: "[g5 f5 e5 d5 ~ e5 ~ c5@7 ~ c5]/2", T: "[g5 f5 e5 d5 ~ e5 ~ c6@3 ~@6]/2",
})).s("gm_trumpet").gain(0.4)

stack(trumpet, trumpet_2, trumpet_3, trumpet_4, trumpet_5, trumpet_6)