Strudelify

the girl from ipanema

Antônio Carlos Jobim

KeyF majorTempo120 bpm
0:00/0:00
// the girl from ipanema — Antônio Carlos Jobim
// 120 bpm, 4/4, key F major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Transcription provider: pdmx. https://musescore.com/score/3024471; license: https://creativecommons.org/publicdomain/zero/1.0/
// note: Full arrangement: all 44 bars on a 16-step grid, each part at one level. 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 · flute · "Flauta"
const flute = note("<~@7 A B@2 C@4 D ~ E@2 ~@2 F G H ~@4 I J K L ~@5 M@2 ~@2 N@4>".pickRestart({
  A: "~@4 c5 d5 e5 f5", B: "[g5@2 e5@2 e5 d5 ~ g5@3 e5 e5@2 e5 d5@2]/2",
  C: "[g5@3 e5 e5@2 d5 g5@3 e5 e5@2 e5 d5 f5@3 ~@5 g5@3 ~@6]/4", D: "~@4 c5@11 ~", E: "[f4@19 ~@13]/2", F: "ab5",
  G: "~@2 a5@3 ab5@3 g5@3 ab5@3 g5@2", H: "[e4,e5] [gb4,gb5]", I: "~@6 [e5,a5] [f5,bb5]", J: "c6 ~@3, g5 ~@7",
  K: "~@6 [bb4,f5] [a4,e5]", L: "[bb4,f5] ~@7", M: "[a5@3 f5 db5@2 c5 b4@3 ~@6]/2",
  N: "[g4@8 a4@15 ~ b5@15 ~ [e5,c6]@15 ~@9]/4", // C
})).s("gm_flute").gain(0.3)

// other · clarinet · "Clarinete en Si♭"
const clarinet = note("<~@8 A@2 B@4 C ~ D@2 E ~ F@2 G ~@5 H I ~@8 J@6>".pickRestart({
  A: "[g4@2 e4@2 e4 d4 ~ g4@3 e4 e4@2 e4 d4@2]/2", B: "[~@7 g4@3 e4 e4@2 e4 d4 a4@3 ~@5 e4@3 ~@6]/4", C: "~ g4@3",
  D: "[a4@5 ~@3]/2", E: "~@3 eb4 eb4@4", F: "[ab4@18 a4@3 ab4@3 g4@3 ab4@3 g4@2]/2", G: "e4 gb4",
  H: "~@2 c4@3 d4@3 e4@3 f4@3 g4@2", I: "ab4 ~",
  J: "[~@4 c4@2 d4@2 e4@3 f4@3 g4@4 a4@3 ~ b4@4 c5@14 d4@16 g4@16 c4@16 ~@8]/6",
})).s("gm_clarinet").gain(0.3)

// other · trumpet · "Trompeta en Si♭"
const trumpet = note("<~@11 A@3 B ~@3 C ~@5 D@2 E ~@3 F G H I J@2 ~@5 K@2 ~>".pickRestart({
  A: "[~@7 f4@3 ~@5 g4@3 ~@6]/3", B: "~ c4@3", C: "db4@3 eb4 eb4@4", D: "[a4@18 bb4@3 a4@3 g4@3 a4@3 g4@2]/2",
  E: "f4@3 g4 g4@4", F: "~@7 f4", G: "gb4 ~", H: "g4@2 e4@2 e4 d4 ~ g4", I: "~ g4 e4@2 e4 d4 ~@2",
  J: "[g4@6 e4@2 e4@4 d4@2 g4@6 e4@4 e4@2 d4@3 ~@3]/2", K: "[~ g4@2 ~]/2",
})).s("gm_trumpet").gain(0.3)

stack(flute, clarinet, trumpet)

More by Antônio Carlos Jobim