Strudelify

scales and modes

Lessons - Guitar

KeyG majorTempo120 bpm
0:00/0:00
// scales and modes — Lessons - Guitar
// 120 bpm, 4/4, key G major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Tempo changes preserved in elapsed time; displayed bars use the dominant tempo.
// note: Transcription provider: pdmx. https://musescore.com/score/1929741; license: https://creativecommons.org/publicdomain/zero/1.0/
// note: Full arrangement: all 275 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 · [...]/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 · acoustic guitar steel · "Acoustic Guitar [Tablature]"
const acoustic_guitar_steel = note(`<
  A B C D E F G H G F E D C B A ~ I@8 J@8 ~ B C K E F G L M L G F E K C B ~ N@8 O@8 ~ P Q R B C K S F G L M T U V W ~
  X@8 Y@8 ~ Z P Q A B C K E F G H M T U AA ~ N@8 AB@8 ~ P Q R B C K E F G L M T U AA W ~ AC@8 AD@8 ~ AE AF Z P Q A B C K
  E F G H M T ~ AG@8 AH@6 ~ Z P Q A B C K E F G H M T U AA ~ AI@8 AJ@8 ~ Z P Q A B C K E F G H M T U AA ~ AK@8 AL@8 ~ Z
  AM A R B D E AN H L M AO AA
>`.pickRestart({
  A: "c3", B: "d3", C: "e3", D: "f3", E: "g3", F: "a3", G: "b3", H: "c4",
  I: "[~ g3@2 a3@2 b3@2 c4@2 d4@2 e4@2 f#4@2 g4]/8", J: "[~ f#4@2 e4@2 d4@2 c4@2 b3@2 a3@2 g3@2 ~]/8", K: "f#3",
  L: "c#4", M: "d4", N: "[~ a2@2 b2@2 c3@2 d3@2 e3@2 f3@2 g3@2 a3]/8", O: "[~ g3@2 f3@2 e3@2 d3@2 c3@2 b2@2 a2@2 ~]/8",
  P: "a2", Q: "b2", R: "c#3", S: "g#3", T: "e4", U: "f#4", V: "g#4", W: "a4",
  X: "[~ a2@2 b2@2 c3@2 d3@2 e3@2 f#3@2 g3@2 a3]/8", Y: "[~ b3@2 c4@2 d4@2 e4@2 f#4@2 g4@2 a4@2 ~]/8", Z: "g2",
  AA: "g4", AB: "[~ b3@2 c4@2 d4@2 e4@2 f4@2 g4@2 a4@2 ~]/8", AC: "[~ e2@2 f#2@2 g#2@2 a2@2 b2@2 c#3@2 d#3@2 e3]/8",
  AD: "[~ f#3@2 g#3@2 a3@2 b3@2 c#4@2 d#4@2 e4@2 ~]/8", AE: "e2", AF: "f#2",
  AG: "[~ e2@2 g2@2 a2@2 a#2@2 b2@2 d3@2 e3@2 g3]/8", AH: "[~ a3@2 a#3@2 b3@2 d4@2 e4@2 ~]/6",
  AI: "[~ a2@2 b2@2 c#3@2 d3@2 e3@2 f#3@2 g#3@2 a3]/8", AJ: "[~ b3@2 c#4@2 d4@2 e4@2 f#4@2 g#4@2 a4@2 ~]/8",
  AK: "[~ g2@2 a2@2 a#2@2 c3@2 d3@2 d#3@2 f3@2 g3]/8", AL: "[~ a3@2 a#3@2 c4@2 d4@2 d#4@2 f4@2 g4@2 ~]/8", AM: "a#2",
  AN: "a#3", AO: "f4",
})).s("gm_acoustic_guitar_steel").gain(0.3)

stack(acoustic_guitar_steel)