Strudelify

code lyoko - un monde sans danger

Misc Cartoons

KeyF majorTempo120 bpm
0:00/0:00
// code lyoko - un monde sans danger — Misc Cartoons
// 120 bpm, 4/4, key F major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: ch 8 "Violin" named as a string part, played on violin (its electric bass finger patch is not one)
// note: duplicate parts dropped: ch 1 "Violin" contrabass (copy of ch 4 "Oboe" english horn); ch 6 "Tenor Saxophone" tenor sax (copy of ch 5 "Baritone Saxophone" baritone sax)
// note: Transcription provider: pdmx. https://musescore.com/score/1163066; license: https://creativecommons.org/publicdomain/zero/1.0/
// note: Full arrangement: all 106 bars on a 16-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(120/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 · baritone sax · "Baritone Saxophone"
const baritone_sax = note(`<
  A B C D A B C E F G H I F G H I A B C D A B C D J ~@3 A B C D A B C D A B C D A B C D A B C D A B C D J ~@3 A B C D A
  B C D A B C D A B C D ~@9 A B C D A B C D A B C D A B C D A B C D A B C J ~
>`.pickRestart({
  A: "f3 ~@7", B: "c3 ~@7", C: "d3 ~@7", D: "bb2 ~@3 eb3 ~@3", E: "bb2", F: "f3 ~@2 f3 ~ a2!2 bb2",
  G: "c3 ~@2 c3@2 ~@3", H: "d3 ~@2 d3@2 ~@3", I: "bb2 ~@3 eb3!2 ~ eb3", J: "bb2 ~@7",
})).s("gm_baritone_sax").gain(0.3).pan(1)

// other · oboe
const oboe = note(`<
  ~@4
  [f4 ~@2 f4 ~@2 f4 ~@2 f4 ~@2 f4 ~ f4 ~]!3
  [f4 ~@2 f4 ~@2 f4 ~@2 f4 ~@2 f4 ~ g4 ~]
  [f4 ~@2 f4 ~@2 f4 ~@2 f4 ~@2 f4 ~ f4 ~]!3
  [f4 ~@2 f4 ~@2 f4 ~@2 f4 ~@2 f4 ~ g4 ~]
  [f4 ~@2 f4 ~@2 f4 ~@2 f4 ~@2 f4 ~ f4 ~]!3
  [f4 ~@2 f4 ~@2 f4 ~@2 f4 ~@2 f4 ~ g4 ~]
  ~@90
>`).s("gm_oboe").gain(0.48)

// other · oboe · soft notes
const oboe_soft = note("<~@24 A B C D ~@24 A B C D ~@50>".pickRestart({
  A: "bb3", B: "c4", C: "d4", D: "e4",
})).s("gm_oboe").gain(0.24)

// other · violin
const violin = note(`<
  ~@8 A B A C A B A C A B A C A B A C D@2 E@2 F@3 G F@3 G F@3 G F@3 G A B A C A B A C D@2 E@2 F@3 G F@3 G F@3 G F@3 G
  ~@9 F@3 G F@3 G F@3 G F@3 G F@3 G F@3 G ~
>`.pickRestart({
  A: "a4!8", B: "g4!8", C: "bb4!8", D: "[d4!7 e4@2 e4!7]/2", E: "[f4!7 g4@2 g4!7]/2",
  F: "f4 ~@2 f4 ~@2 f4 ~@2 f4 ~@2 f4 ~ f4 ~", G: "f4 ~@2 f4 ~@2 f4 ~@2 f4 ~@2 f4 ~ g4 ~",
})).s("gm_violin").gain(0.48)

// other · lead 8 bass lead · "Keyboard Synthesizer"
const lead_8_bass_lead = note("<~@24 A B C D ~@24 A B C D ~@16 E F G H E F G I@2 ~@8 J@8 ~@9>".pickRestart({
  A: "f4 g4 c5 f4 g4 c5 f4 g4 c5 f4 g4 c5 f4 g4 e4 f4", B: "g4 c5 f4 g4 c5 f4 g4 c5 f4 g4 c5 f4 g4 c5 f4 g4",
  C: "f4!2 g4 c5 f4 g4 c5 f4 g4 c5 f4 g4 c5 f4 g4 c5", D: "f4 g4 c5 f4 g4 c5 f4 g4 c5 f4 g4 c5 f4 g4 c5 f4",
  E: "[f3,bb3,d4]", F: "[g3,c4,e4]", G: "[a3,d4,f4]", H: "[g3,c4,g4]", I: "[g3,c4,g4]/2",
  J: "[f4@2 c5@2 bb4 a4@2 g4@3 e4 f4@2 g4@2 d4@3 c5@2 bb4 a4@2 f4@3 f4 g4@2 a4@2 f4@3 c5@2 bb4 a4@2 g4@3 e4 f4@2 g4@2 d4@3 c5@2 bb4 a4@2 f4@3 f4 g4@2 a4@2 f4]/8",
})).s("gm_lead_8_bass_lead").gain(0.13).pan(0)

// other · overdriven guitar · "Electric Guitar"
const overdriven_guitar = note(`<
  ~@27 A B C D E B C D E B C D E B C D E ~@11 A B C D E B C D E B C D E B C D E ~@8 A B C D E B C D E B C D E B C D E
  ~@9
>`.pickRestart({
  A: "~@14 g3!2", B: "[f2,f3]", C: "[c3,c4]@2 ~ [c3,c4]", D: "[d3,d4]@2 ~ [d3,d4]", E: "[bb2,bb3]",
})).s("gm_overdriven_guitar").gain(0.12)

// chords · acoustic guitar nylon · "Alto Guitar"
const acoustic_guitar_nylon = note(`<
  ~@4 A B C@2 D E C F D E C F G H I J G H I ~@21 G H I J G H I ~@21 K L M N O P Q R@2 ~@8 D E C F D E C F D E C F D E C
  S T
>`.pickRestart({
  A: "[f2,c3,f3,a3,c4,f4]", B: "[c3,e3,g3,c4,e4]", C: "[d3,a3,c4,f4]", D: "[f3,a3,c4,f4]", E: "[c3,e3,g3,c4]",
  F: "[bb2,d3,f3] [eb3,g3,bb3]", G: "[a3,c4,f4]", H: "[g3,c4,g4]", I: "[a3,d4,a4]", J: "bb3 c4 f4 c4@2 bb3@2 ~",
  K: "[bb2,bb3,c4]@4 ~ g4@2 a4", L: "[c3,e3,c4]", M: "[d3,f3,c4]", N: "[e3,g3,c4]@4 ~@3 f4@3 c4@3 c4@2 ~",
  O: "[bb3,c4,d4]@3 [bb3,c4,d4]@3 [bb3,c4,d4]@4 [bb3,d4]@2 [bb3,d4]@2 ~@2", // Bb
  P: "[c4,e4]@3 [c4,e4]@3 [c4,e4]@4 [c4,e4]@2 [c4,e4]@2 ~@2", Q: "f4@3 f4@3 f4@4 f4@2 f4@2 ~@2",
  R: "[g4@3 g4@3 g4@4 g4@2 g4@20]/2", S: "[bb2,d3,f3]", T: "~ f4@7, f3, ~ [a3,c4]@15",
})).s("gm_acoustic_guitar_nylon").gain(0.46)

// drums · kick
const kick = s("bd").struct("<~@8 [x ~@4 x ~@2]!64 ~@4 x!4 ~ [x ~@4 x ~@2]!16 ~@9>").gain(0.41)

// drums · rim
const rim = s("rim").struct("<~@8 A@19 B A@27 B A@16 ~@4 C@5 A@16 ~@9>".pickRestart({
  A: "~ x ~ x", B: "~@2 x ~@3 x!2", C: "~@3 x",
})).gain(0.41)

// drums · hihat
const hihat = s("hh").struct(`<
  ~@8
  [~ x ~ x!2 ~@2 x]!64
  ~@4
  [x ~@2 x ~@2 x ~@3 x ~@5]!5
  [~ x ~ x!2 ~@2 x]!16
  [x!4]!4
  ~@5
>`).gain(0.41)

stack(
  baritone_sax, oboe, oboe_soft, violin, lead_8_bass_lead, overdriven_guitar, acoustic_guitar_nylon, kick, rim, hihat
)

More by Misc Cartoons