Strudelify
Smooth cover art

1999 · Supernatural

Smooth

Santana

KeyA minorTempo115 bpm
0:00/0:00
// Smooth — Santana
// 115 bpm, 4/4, key A minor. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: pitch bends are ignored
// note: Full arrangement: all 141 bars on a 16-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(115/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 · piano
const piano = note(`<
  ~ A B C D C B C ~ E B E F G@2 H@2 I B E F J@2 K@2 L@2 M@2 N@2 O@2 P@2 Q R S T S T U ~ C D C V E B E F G@2 W X E B E F
  G@2 W X L@2 M@2 N@2 O@2 P@2 Q R S T S T U ~@2 E B E F E B E F L@2 M@2 N@2 O@2 P@2 Q R S T S T U ~ A B C D A B C D E B
  E F E B E F E B E F E B E F E B E F E B E F ~
>`.pickRestart({
  A: "~@2 a3@2 c4@2 e4 ~ f4 ~ e4 ~ f4 ~ e4 ~", B: "~ [g#3,b3,d4] ~ [g#3,b3,d4] ~ [g#3,b3,d4] ~ [g#3,b3,d4]",
  C: "~@2 a3@2 c4@2 e4 ~ f4@2 e4@2 f4@2 e4@2", D: "~@2 [g#3,b3,d4]@3 ~ [g#3,b3,d4]@3 ~ [g#3,b3,d4]@3 ~ [g#3,b3,d4]@2",
  E: "~ a3 c4 e4 a3 c4 f4 g#3", F: "~@2 [g#3,b3,d4]@2 ~@2 [g#3,b3,d4]@2 ~@2 [g#3,b3,d4]@2 ~@2 [g#3,b3,d4] ~",
  G: "[f3 ~@2 c4@2 [f3,d4] ~ f3@2 f3 b3 e3@2 ~ g#3 e3, d4@9 ~ c4@4 [b3,d4]@7 ~ d4@9 ~, a3@4 a3@5 ~@13 g#3@6 ~@4, ~@2 f3@7 ~@17 e3@4 ~@2]/2", // Dm Bm
  H: "[[e3,a3,c4,e4]@9 ~ [f3,a3,c4]@2 ~@2 [e3,g#3,b3,d4]@18]/2", I: "~ a3 c4 e4 ~ c4 f4 g#3, ~@2 a3 ~",
  J: "[f3 ~@2 c4@2 [f3,d4] ~ f3@2 f3 b3 e3@2 ~ g#3 e3, d4@9 ~ c4@4 [b3,d4]@7 ~ d4@8 ~@2, a3@4 a3@5 ~@13 g#3@6 ~@4, ~@2 f3@7 ~@17 e3@4 ~@2]/2", // Dm Bm
  K: "[[e3,a3,c4,e4]@8 g3 ~ [f3,a3,c4]@2 ~@2 [e3,g#3,b3,d4]@17 ~]/2", // Am F E7
  L: "[~@4 [a3,c4,e4]@3 ~ a2@2 c3@2 f3 ~ [g#3,b3,d4]@3 ~ [g#3,b3,d4]@2 ~@2 [g#3,b3,d4]@2 ~@2 [g#3,b3,d4]@2 ~@2 [g#3,b3,d4]@2, a2@7 ~ [a3,c4,e4]@5 ~ e3@18]/2", // Am G#dim Am
  M: "[b2 ~@3 [a3,c4,e4]@3 ~ a2@2 c3@2 f3 ~ [g#3,b3,d4]@2 ~@2 [g#3,b3,d4]@2 ~@2 [g#3,b3,d4]@2 ~@2 [g#3,b3,d4]@2 ~@2 [g#3,b3,d4]@2, a2@6 ~@2 [a3,c4,e4]@5 ~ e3@18]/2", // Am G#dim Am
  N: "[~@4 [a3,c4,e4]@3 ~ a2@2 c3@2 f3 ~ [g#3,b3,d4]@2 ~@2 [g#3,b3,d4]@2 ~@2 [g#3,b3,d4]@2 ~@2 [g#3,b3,d4]@2 ~@2 [g#3,b3,d4]@2, a2@7 ~ [a3,c4,e4]@5 ~ e3@18]/2", // Am G#dim Am
  O: "[[f3,a3,d4]@10 f3@2 [a3,d4] ~ [b3,d4]@16 f3 ~, ~@14 f3@15 ~@3]/2", // Dm D5 Bm
  P: "[f#3 ~@3 f#3@3 ~ [b3,e4]@2 f#3 ~ [f#3,b3,e4] ~ [c4,e4]@16 g#3 ~, [b3,e4]@7 ~ f#3 ~@5 g#3@14 ~@4]/2", // E5 Esus2 C E5
  Q: "[a3,c4,e4]@9 ~ [a3,c4,e4]@2 ~@2 [g#3,b3,d4]@2", // Am G#dim
  R: "~@2 [g#3,b3,d4]@3 ~ [g#3,b3,d4]@2 ~@2 [g#3,b3,d4]@2 ~@2 [g#3,b3,d4] ~", // G#dim
  S: "[a3,c4,e4]@9 ~ [a3,c4,e4]@3 ~ [g#3,b3,d4]@2", // Am G#dim
  T: "~@2 [g#3,b3,d4]@3 ~ [g#3,b3,d4]@3 ~ [g#3,b3,d4]@3 ~ [g#3,b3,d4] ~", // G#dim
  U: "[a3,c4,e4]@2 ~@8 [a3,c4,e4] ~@3 [g#3,d4,f4]@2", V: "~@2 [g#3,b3,d4]@2 ~@2 [g#3,b3,d4]@5 ~ [g#3,b3,d4]@4",
  W: "[e3,a3,c4,e4]@9 ~ [f3,a3,c4]@2 ~@2 [g#3,b3,d4]@2", X: "~@2 [g#3,b3,d4]@3 ~ [g#3,b3,d4]@3 ~ [g#3,b3,d4]@4 ~@2",
})).s("gm_piano").gain(0.46)

// chords · rock organ · "Organ"
const rock_organ = note(`<
  ~@25 A B A B A B C@2 D@2 E@2 F@2 G@2 H ~@21 A B A B A B C@2 D@2 E@2 F@2 G@2 H ~@10 A B A B A B C@2 D@2 I@2 F@2 G@2 H ~
  A B A B A B A B A B A B A B A B A B A B A B A B A B A B A B A B ~
>`.pickRestart({
  A: "[a4,e5,a5,c6]@15 ~", B: "[g#4,b4,d5,b5,d6]@15 ~", C: "[[f4,a4,d5,f5,a5,d6]@13 ~ [f4,b4,d5,f5,b5,d6]@17 ~]/2",
  D: "[[f#4,b4,e5,f#5,b5,e6]@13 ~ [g#4,c5,e5,g#5,c6,e6]@17 ~]/2", // Esus2 G#aug
  E: "[[a4,c5,e5,a5,c6,e6]@10 [a4,c5,e5,a5,c6,e6]@3 ~ [g#4,b4,d5,g#5,b5,d6]@17 ~, ~@14 [c6,c#6] ~@17]/2", // Am G#dim C#maj7
  F: "[[a4,c5,e5,a5,c6,e6]@10 [a4,c5,e5,a5,c6,e6]@3 ~ [g#4,b4,d5,g#5,b5,d6]@17 ~, ~@14 c#5 ~@17]/2", // Am G#dim
  G: "[[a4,c5,e5,a5,c6,e6]@10 [a4,c5,e5,a5,c6,e6]@2 ~@2 [g#4,b4,d5,g#5,b5,d6]@17 ~]/2", // Am G#dim
  H: "[a4,c5,e5,a5,c6,e6]@3 ~@7 [a4,c5,e5,a5,c6,e6]@2 ~@2 [g#4,d5,f5,g#5,d6,f6]@2", // Am Ddim
  I: "[[a4,c5,e5]@9 ~ [a4,c5,e5,a5,c6,e6]@3 ~ [g#4,b4,d5,g#5,b5,d6]@17 ~, ~@14 [c6,c#6] ~@17]/2", // Am G#dim C#maj7
})).s("gm_rock_organ").gain(0.15)

// chords · rock organ · "Organ" · soft notes
const rock_organ_soft = note(`<
  ~@25 A B A B A B ~@8 C ~@23 A B A B A B ~@8 C ~@12 A B A B A B ~@8 C ~@3 A B A B A B A B A B A B A B A B A B A B A B A
  B A B A B A B A B ~
>`.pickRestart({
  A: "[c5,e6]@15 ~", B: "g#5@15 ~", C: "~@11 b4 ~@4",
})).s("gm_rock_organ").gain(0.07)

// chords · brass section · "Big Brass"
const brass_section = note("<~@37 A B ~@3 C@2 ~@58 A B ~@3 D@2 ~@4 E ~ F ~ F ~ G ~ G ~ H ~@17>".pickRestart({
  A: "~@14 b4 c5", B: "d5 ~ c5 ~@3 b4 ~@3 [e4,e5]@6",
  C: "[~@8 [b3,e5]!2 ~ [b3,e5] [b3,e5]@2 c4@10 ~@8, ~@14 a5@7 ~@11]/2", // E5
  D: "[~@8 [b3,b4,e5]!2 ~ [b3,b4,e5] [b3,b4,e5]@2 [c4,c5,a5]@7 ~@11]/2", // E5 F
  E: "~@2 [g#4,b4,d5] ~@3 [g#4,b4,d5]@3 ~ [g#4,b4,d5]@3 ~ [g#4,b4,d5]@2", // G#dim
  F: "~@2 [g#4,b4,d5] ~@3 [g#4,b4,d5]@5 ~ [g#4,b4,d5] ~ [g#4,b4,d5]@2", // G#dim
  G: "~@2 [g#4,b4,d5]@2 ~@2 [g#4,b4,d5]@3 ~ [g#4,b4,d5]@3 ~ [g#4,b4,d5]@2", // G#dim
  H: "~@2 [g#4,b4,d5] ~ [g#4,b4,d5]@3 ~ [g#4,b4,d5] ~ [g#4,b4,d5]@6", // G#dim
})).s("gm_brass_section").gain(0.41)

// chords · trumpet · "Horns"
const trumpet = note(`<
  ~ A B A C D B A E ~@26 F@2 G@2 H@2 I ~ J K L ~@27 F@2 G@2 H@2 I ~ M N ~@17 F@2 G@2 H@2 I ~@15 O ~ P ~ P ~ P ~ P ~@10
>`.pickRestart({
  A: "~@2 [a3,a4]@2 [c4,c5]@2 [e4,e5]@2 [a3,f4,f5]@2 [e4,e5] ~ [a3,f4,f5]@2 [g#3,e4,e5] ~", // A C E Dm E Dm C#m
  B: "~ [g#3,b3,d4] ~ [g#3,b3,d4]@5", C: "~ [g#3,b3,d4] ~ [d4,f4]@3 e4@2, ~@3 [g#3,b3]@5",
  D: "~@2 [a3,a4]@2 c4@2 [e4,e5]@2 [a3,f4,f5]@2 [e4,e5] ~ [a3,f4,f5]@2 [g#3,e4,e5] ~, ~@4 c5 ~@11", // A E Dm E Dm C#m
  E: "~@2 [g#3,b3,d4,g#5]@2 [g#3,b3,d4,g#5] ~@3 [g#3,b3,d4,g#5]@2 [g#3,b3,d4,g#5] ~@5", // G#dim
  F: "[[a4,c5,e5]@10 [a4,c5,e5]@2 ~@4 f5@14 g#4 ~, ~@14 [g#4,b4,d5]@17 ~]/2", // Am G#dim
  G: "[[a4,c5,e5]@9 ~ [c5,e5]@2 ~@2 [b4,d5]@16 g#4 ~, ~@10 a4 ~@3 g#4@15 ~@3]/2", // Am C Bm
  H: "[[a4,c5,e5]@9 ~ [a4,c5,e5]@2 ~@2 [g#4,b4,d5,f5]@16 ~@2]/2", I: "[a4,c5,e5] ~@4 [a4,c5,e5] ~ [g#4,d5,f5]",
  J: "~@2 a4@2 c5@2 e5 ~ f5@2 e5 ~ f5@2 e5 ~", K: "~@2 [g#3,b3,d4] ~@3 [g#3,b3,d4]@6 c4@4",
  L: "~@2 a4@2 c5@2 e5 ~ f5@2 g#3@2 [a3,f5]@2 [g#3,e5] ~, a3@10 e5 ~@5", // Dm C#m
  M: "~@8 [g4,b4,e5] [g#4,c5,f5] ~ [a4,c#5,f#5] [a#4,d5,g5] ~ [b4,d#5,g#5] ~", N: "[c5,e5] ~, a5@5 ~@3",
  O: "~@2 a4@2 c5@2 e5 ~ f5@2 e5@2 f5@2 e5@2", P: "~@2 c5 d5 e5 ~@3 d5 e5 f5 ~@5",
})).s("gm_trumpet").gain(0.41)

// chords · brass section · "Horns2"
const brass_section_2 = note(`<
  ~ A ~ B ~ C ~ B D E ~@7 F@2 G@2 H@2 I@2 ~@6 J@2 K@2 L@2 M@2 N@2 O P@2 ~ Q R ~@6 S T@2 ~ G@2 H@2 I@2 ~@6 J@2 K@2 L@2
  M@2 N@2 O ~ U V ~@13 J@2 K@2 L@2 M@2 N@2 O W@2 ~@6 X ~ Y ~ Z ~@2 AA ~ AB AC AD AC AD AE AF AE ~@9
>`.pickRestart({
  A: "~@2 [a3,a4]@2 c4@2 [e4,e5] ~ [f4,f5] ~ [e4,e5] ~ [f4,f5]@2 e4@2, ~@4 c5 ~@9 e5 ~", // A E F E F
  B: "~@2 [a3,a4]@2 [c4,c5]@2 [e4,e5] ~ [f4,f5] ~ [e4,e5] ~ [f4,f5]@2 [e4,e5]@2", // A C E F E F E
  C: "~@2 [a3,a4]@2 c4@2 [e4,e5] ~ [f4,f5] ~ e5 ~ f5@2 [e4,e5] ~, ~@4 c5 ~@4 e4@2 f4@2 ~@3", // A E F E
  D: "~ [g#5,b5] [g#4,b4,d5,e5,b5] ~ [g#4,b4,d5,e5]!2 ~ [c5,e5,a5,c6], ~ [g#4,b4,d5,e5]@2 ~ g#5 ~@3 [g#5,b5] ~ [g#5,b5] ~@5", // G#m E7 Am E7 G#m
  E: "~ [d#5,g#5,b5] [c5,c#5,e5,f#5,a5] [f#4,g4,a#4,c5,d5,d#5,e5,f5] [e4,a#4,c5] ~@11", // G#m F#m7 C7
  F: "[c4@8 ~@2 c4 ~@3 d4@17 ~]/2", G: "[c4@8 ~@2 c4 ~@3 d4@16 ~@2]/2", H: "[~@4 c4@2 ~@4 c4 ~@3 [b3,d4]@17 ~]/2",
  I: "[a3@9 ~ a3 ~@3 g#3@17 ~]/2", J: "[f3@4 a3@4 c4@6 b3@17 ~]/2",
  K: "[[b4,e5]@9 ~ [b4,e5]@2 ~@2 [c5,e5]@3 ~ [c5,e5] ~ [c5,e5]@11 ~, [b3,f#4]@13 ~ [c4,g#4]@16 ~@2]/2", // E5 C B5 Fm
  L: "[[a3,c4,e4]@9 ~ [a3,c4,e4] ~@3 [b3,d4]@16 ~@2]/2", // Am Bm
  M: "[[a3,c4,e4]@9 ~ [a3,c4,e4]@2 ~@2 b4 c5 d5 ~ c5@2 ~@2 b4@2 ~@2 e4@6, ~@7 [b3,d4]@8 ~]/2", // Am Bm
  N: "[[a3,c4,e4]@13 ~ [b3,d4]@16 ~@2]/2", O: "[c4,e4] ~@4 [c4,e4] ~ [d4,f4]",
  P: "[~@8 [b3,b4]!2 ~ [b3,b4] [b3,b4]@2 ~@4 a4@2 c5 ~ e5 ~ [a3,f5]@2 g#3@2 [a3,f5]@2 [g#3,e5]@2, ~@14 c4@9 ~@9, ~@14 c5@6 ~@6 e5 ~@5]/2", // B Dm C#m
  Q: "~@2 a4@2 c5 ~ e5 ~ f5@2 e5 ~ f5@2 e5@2", R: "~@2 [g#3,b3,d4] ~@3 [g#3,b3,f4]@6 [g#3,b3,e4]@4",
  S: "~@7 [g#3,b3,d4]", // G#dim
  T: "[~@2 [g#3,b3,d4]@3 ~ [g#3,b3,d4]@3 ~ [g#3,b3,d4,c5]@2 f5@2 [g#3,b3,d4] ~ c4@7 f5 b3 [a4,c5,d5] [f3,g3,f4,g4,a4,b4] [e3,d4,e4,f4,g4,a4] [d3,b3,c4,e4,f4] [g3,a3,d4] f3 ~, ~@14 [c5,e5,a5]@9 c4@4 ~@5, ~@14 e4@2 e4@11 ~@5, ~@8 a3@4 e5 ~@3, ~@25 a3@3 ~@4]/2", // G#dim D7 G7 Dm Bdim Gsus2 Am
  U: "~@8 [g4,b4,e5] [g#4,c5,f5] ~ [a4,c#5,f#5] [a#4,d5,g5] ~ [b4,d#5,g#5] ~", // Em Fm F#m Gm G#m
  V: "[c5,e5,a5]@8 ~ [a4,d5,e5,f5] [f4,g4,c5] [c4,d4,e4,a4,b4] [b3,e4,f4,g4] ~@3", // Am Dm Fsus2 Am Em
  W: "[~@8 [b3,b4,e5]!2 ~ [b3,b4,e5] [b3,b4,e5]@2 [c4,c5,a5]@6 ~@12]/2", // E5 F
  X: "~ b4 ~ [g#4,b4,f5]@3 [b4,e5]@2, ~@2 d5 ~@13", Y: "~@2 [g#4,b4,d5] ~@3 [g#4,d5]@10",
  Z: "~@2 [g#4,b4,d5] ~@3 [g#4,b4,f5]@6 [b4,e5]@4", AA: "~@2 a4@2 ~@2 e5 ~ f5@2 e5@2 f5@2 e5@2",
  AB: "~@2 [a4,c5,e5]!3 ~@3 [a4,c5,f5]!3 ~@5", AC: "~@2 [g#4,b4,d5] ~@3 [g#4,d5,f5]@6 [g#4,b4,e5]@4",
  AD: "~@2 [a4,c5,e5] a4 [a4,c5,e5] ~@3 [a4,c5,f5]!3 ~@5", AE: "~@2 [g#4,b4,d5] ~@3 [g#4,d5,f5]@6 [g#4,b4,e5]@3 ~",
  AF: "~@2 [a4,c5,e5]!3 ~@3 [a4,c5,f5] [c5,f5] [a4,c5,f5] ~@5", // Am F F5 F
})).s("gm_brass_section").gain(0.36)

// chords · brass section · "Horns2" · soft notes
const brass_section_soft = note(`<
  ~@21 A ~@11 B ~ C@2 ~@18 D ~@3 A ~@11 B ~ C@2 ~@7 E ~@15 B ~ C@2 ~@13 F ~ G ~ H ~@2 I ~@3 J ~ J ~ K ~@10
>`.pickRestart({
  A: "~@3 d4@2 ~@3", B: "b5 ~@15", C: "[~@7 g#3@8 ~]/2", D: "~@6 d4 g5 b4 ~ c5 ~ [c3,d4] [b2,b3] e3 ~",
  E: "~@8 [b4,g5] ~@3 a3 ~@3", F: "~@2 g#4 ~@9 g#4@4", G: "~@3 b4@5", H: "~@3 g#4", I: "~@2 c5 ~@5",
  J: "~@3 [c5,e5] ~@12", K: "~@9 a4 ~@6",
})).s("gm_brass_section").gain(0.2)

// other · trombone · "Trombones"
const trombone = note("<~@17 A@2 B@2 C@2 D@2 ~@6 E@2 F@2 ~@22 B@2 C@2 D@2 ~@6 G@2 F@2 ~@23 E@2 H@2 ~@41>".pickRestart({
  A: "[~@2 c4@2 a3 c4 ~ g#3@9]/2", B: "[~@4 c4@4 a3@2 c4@2 ~@2 g#3@17 ~]/2", C: "[a3@8 c4@7 b3@16 ~]/2",
  D: "[a3@6 ~ g#3@9]/2", E: "[f3@4 a3@4 c4@5 ~ b3@17 ~]/2", F: "[b3@14 c4@15 ~@3]/2",
  G: "[~ f3@3 a3@4 c4@5 ~ b3@17 ~]/2", H: "[b3@7 c4@9]/2",
})).s("gm_trombone").gain(0.41)

// chords · brass section · "Brass Swell"
const brass_section_3 = note(`<
  ~@2 A ~ A ~ A ~@6 B@2 C@2 D@4 E@2 F@2 ~@8 G@2 ~@8 H I J K ~@4 B@2 C@2 ~@2 L@2 E@2 F@2 ~@8 G@2 ~@8 M N ~@29 O@2 P@2 Q@2
  P@2 R@2 S@3 ~@5 T@2 U@2 P@2 V@2 P@2 ~
>`.pickRestart({
  A: "~ [g#3,b3,d4,b4,d5]@7", B: "[[a3,d4]@5 c4 ~ [e3,b3,d4]@9]/2", C: "[~@10 [f3,a3] ~@3 [e3,b3]@16 ~@2]/2",
  D: "[~@4 c4@4 a3@2 c4 ~@3 [b3,d4]@19 ~@3 c4@3 ~ a3@2 c4 ~@3 [b3,d4]@18]/4", // Bm
  E: "[[f3,a3,d4]@9 ~ [f3,c4] ~@3 [e3,b3]@17 ~]/2", F: "[c4@9 ~@5 [g#3,b3,d4]@18]/2",
  G: "[[f#3,b3,e4]@13 ~ [g#3,c4,e4]@18]/2", H: "~@2 a4@2 c5@2 e5 ~ f5@2 e5 ~ f5@2 e5 ~",
  I: "~@2 [g#3,b3,d4] ~@3 [g#3,b3,d4]@6 c4@4", J: "~@2 a4@2 c5@2 e5 ~ f5@2 g#3@2 [a3,f5]@2 [g#3,e5] ~, a3@10 e5 ~@5",
  K: "~@2 [g#3,b3,c4] ~@3 [b3,f4]@6 [b3,e4]@4, ~@3 g#3@5", L: "[~@4 c4@3 ~ a3@2 c4 ~@3 [b3,d4]@18]/2",
  M: "~@8 [g4,b4] [g#4,c5] ~ [a4,c#5] [a#4,d5] ~ [b4,d#5] ~", N: "[c5,e5] ~",
  O: "[[a3,a4,c5,e5]@13 ~@2 g#4@16 ~, ~@14 [g#3,b4,d5]@17 ~]/2", // Am G#dim
  P: "[[a4,c5,e5]@10 [a4,c5,e5] ~@3 [g#3,g#4,b4,d5]@18, a3@13 ~@19]/2", // Am G#dim
  Q: "[[a4,c5,e5]@10 [a4,c5,e5] ~@3 [g#3,b4,d5]@18, a3@7 ~@9]/2", // Am G#dim
  R: "[[a4,c5,e5]@9 ~ [a4,c5,e5] ~@3 [g#3,g#4,b4,d5]@18, a3@13 ~@19]/2", // Am G#dim
  S: "[[a4,c5,e5]@9 ~ [a4,c5,e5] ~@3 [g#3,g#4,b4,d5]@17 a3@14 ~@3, a3@7 ~@17]/3", // Am G#dim
  T: "[[a4,c5,e5]@9 ~ [a4,c5,e5] ~@3 [g#3,g#4,b4,d5]@17 ~, a3@13 ~@19]/2", // Am G#dim
  U: "[[a4,c5,e5]@9 ~ [a4,c5] ~@3 [g#3,g#4,b4,d5]@17 ~, a3@13 ~@19, ~@5 e5 ~@10]/2", // Am G#dim
  V: "[[a4,c5,e5]@10 [a4,c5,e5] ~@3 [g#3,g#4,b4,d5]@18, a3@3 ~@5]/2", // Am G#dim
})).s("gm_brass_section").gain(0.36)

// chords · brass section · "Brass Swell" · soft notes
const brass_section_soft_2 = note(`<
  ~@2 A ~ A ~ A ~@6 B@2 C@2 ~@4 D@2 E ~@27 B@2 C@2 ~@4 D@2 E ~@54 F@2 ~@23
>`.pickRestart({
  A: "~ g#4@7", B: "[~@10 a3@2 ~@2 g#3@17 ~, ~ f3@2 ~@5]/2", C: "[~@10 c4 ~@4 g#3@16 ~, ~@15 e4 ~@16]/2",
  D: "[~@10 a3 ~@3 [g#3,d4]@17 ~, ~@14 a#3 ~@17]/2", E: "[a3,e4] ~", F: "[~@14 g#4@17 ~]/2",
})).s("gm_brass_section").gain(0.2)

// bass · electric bass finger · "Bass"
const bass = note(`<
  ~ A@2 B@2 C@2 D@2 E@2 C@2 F@2 G@2 H@2 C@2 I@2 J@2 K@2 L@2 M@2 N@2 O P Q R S T S U V ~ W@2 X@2 E@2 C@2 F@2 Y@2 Z@2 AA@2
  AB@2 AC@2 K@2 L@2 M@2 N@2 O P Q R S T S U V ~@2 AD@2 AE@2 AF@2 AG@2 AH@2 AI AJ AK@2 N@2 O P Q R S T S U V AL@3 AM@2
  AN@2 AO@2 AP@2 AQ@2 AR@2 AS@2 AT@2 AU@2 AV@2 AW AX AY AZ BA BB BC BD BC BE V
>`.pickRestart({
  A: "[a2@7 ~ f2 ~ f2@3 ~ e2@8 b1@6 e2@4]/2", B: "[a2@8 ~@2 f2@3 ~ e2@8 e3@6 e2@4]/2",
  C: "[a2@8 f2 ~ f2@3 ~ e2@8 e3@6 e2@4]/2", D: "[a2@7 ~ f2 ~ f2@4 e2@7 ~ e1@6 g1@3 ~]/2",
  E: "[a1@4 ~ f2 ~ e2@4 e3@3 e2@2]/2", F: "[d3@9 ~ c3@2 ~@2 b2@7 ~ g#2@8 e3@2]/2",
  G: "[a2@6 g2 ~@3 f2@2 ~@2 e2@7 ~ e1@6 g1@3 ~]/2", H: "[a1@8 f2 ~ f2@3 ~ e2@8 e3@6 e2@4]/2",
  I: "[d3@9 ~ c3@2 ~@2 b2@7 ~ g#2@4 e2@4 g#2@2]/2",
  J: "[a2@6 g2@2 ~@2 f2@2 ~@10 e1 ~ e1@2 e1@2 g1 ~ a1@2, ~@7 e2@5 ~@4]/2",
  K: "[a2@6 a1 ~ a1@2 f2@2 ~@2 e2@7 ~ b1@6 e2 ~ e2 ~]/2", L: "[a2@7 ~ a1@2 f2@2 ~@2 e2@7 ~ b1@6 e2 ~ e2 ~]/2",
  M: "[a2@8 a1@2 f2@2 ~@2 e2@7 ~ b1@6 e2 ~ b1 ~]/2", N: "[d2@6 a1@2 c2@3 ~ c2@2 b1@5 ~ a1 ~ g1@5 ~ f1@3 ~]/2",
  O: "f#1@4 f#1@2 a1 ~ b1 ~ b1@2 d2@2 e2@2", P: "~@2 e2 ~ e2 ~ e2 ~ e2 ~ e2 ~ e2 ~ e2 ~",
  Q: "a1 ~ a1 ~ g1 ~ a1@2 ~@2 f2@3 ~ c2 d2", R: "e2 ~ e2 ~ d2 ~ d2 ~ c2 ~ e1 ~ g1 ~ e1 ~",
  S: "a1 ~ a1 ~ g1 ~ a1@2 ~@2 f2@2 ~@2 c2 d2", T: "e2 ~ e2 ~ d2 ~ c2 d2 e2 ~ e1 ~ g1 ~ e1 ~",
  U: "e2 ~ e2 ~ d2 ~ e2 ~ e1@8", V: "c2 ~@4 c2 ~ f2",
  W: "[a2@5 ~ g2@2 ~@2 f2@2 ~@2 e2@7 ~ b1@2 d2 ~ d#2 ~ e2 ~ g2 ~]/2",
  X: "[a2@5 ~ g2@2 ~@2 f2@2 ~@2 e2@4 e1 ~ e1 ~ e1 ~ g1@3 ~ g#1@2 ~@2]/2",
  Y: "[a2@6 g2 ~@3 f2@2 ~@2 e2@4 e3 ~ d3 ~ b2 ~ e2@4 b1@4]/2", Z: "[a1@4 ~@6 f2@2 ~@2 e2@6 ~@2 b2 ~ b2@3 ~ e2@4]/2",
  AA: "[a2@5 ~@5 f2@2 ~@2 e2@6 ~@2 e3 ~ e3@7 ~]/2", AB: "[d3 ~ d3@2 e3@2 d3 ~ c3@5 ~ b2@7 ~ g#2@4 e2@2 g#2@2 b2 ~]/2",
  AC: "[a2@2 e2@2 a2@2 g2@2 ~@2 f2@2 ~@6 e1 ~ e1 ~ e1 ~ g1@3 ~ g#1@4, ~@14 e2@7 ~@11]/2",
  AD: "[a2@8 ~@2 f2@2 ~@2 e2@7 ~ b2@6 e2@3 ~]/2", AE: "[a2@9 ~ f2@2 ~@2 e2@7 ~ b2@6 e2 ~ e2 ~]/2",
  AF: "[a2@8 ~@2 f2@2 ~@2 e2@6 ~@2 b2 ~ b2@3 ~ e2@3 ~]/2", AG: "[a2@8 ~@2 f2@2 ~@2 e2@6 ~@2 e2 ~ e2@6 ~@2]/2",
  AH: "[a1@6 g2@2 ~@2 f2@2 ~@2 e2@6 ~@2 b1 ~ b1@4 e2 ~ e2 ~]/2", AI: "a2 e2 a2 g2 ~ f2 ~ e2",
  AJ: "~@2 b1 ~ b1@2 d2 ~ d2@2 e2@2 g2 ~ g#2@2", AK: "[a2@2 e2@2 a2@2 g2@2 ~@2 f2@2 ~@2 e2@6 ~@2 b1 ~ e2@4 e2@4]/2",
  AL: "[~@8 e2!2 e1@2 g1@2 a1@6 ~@6 f2@2 ~@2 e2@6 ~@2 b1@2 d2 ~ e2 ~ e2 ~ e2 ~]/3",
  AM: "[a1@8 ~@2 f2 ~@3 e2@7 ~ b1@2 d2 ~ e2 ~ e2 ~ e2 ~]/2",
  AN: "[a1@8 ~@2 f2@2 ~@2 e2@7 ~ b1@2 d2 ~ e2 ~ e2 ~ e2 ~]/2",
  AO: "[a1@9 ~ f2@2 ~@2 e2@8 b1@2 ~ d3 c3@2 b2@2 e2@2, ~@12 e3 ~@3]/2",
  AP: "[a1@8 ~@2 f1@2 ~@2 e1@7 ~ a1@2 d2@2 ~@2 c2@4]/2", AQ: "[a1@2 e1 a1 ~ f1 ~ e1@2 b1 d2 d#2 e2 e1 g1 g#1]/2",
  AR: "[a1@4 e1@2 a1@2 ~@2 f1@2 ~@2 e1@6 ~@2 a1@2 d2@3 ~ c2@3 ~]/2",
  AS: "[a1@4 e1 ~ a1@2 ~@2 f1@2 ~@2 e1@10 ~@2 e1@2 g1 ~ g#1@2]/2",
  AT: "[a1 ~ a1@3 ~ g1@2 ~@2 f1@2 ~@2 e1@7 ~ d2 d#2 e2 ~ e1@2 g1 ~ g#1@2]/2",
  AU: "[a1@2 e1@2 a1@2 ~ g1 ~@2 f1@2 ~@2 e1@6 e2!3 ~ c2!2 d2@2 e2@2 e1@2]/2",
  AV: "[a1 ~ e1@2 a1@2 g1@2 ~@2 f1@2 ~@2 e1@7 ~ d2 d#2 e2@2 e1@2 g1@2 g#1@2]/2",
  AW: "a1 ~ a1 ~ a1@2 g1@2 ~@2 f1@2 ~@2 e1@2", AX: "d2 d#2 e2 a2 a#2 b2 d3 d#3 e3 b2 d3 a2 g2 e2 d2 c2",
// … 143 more lines

More by Santana