Pitches, scales and chords by note name, such as :a4, :fs3 or :eb5.
Notes.scale(:a3, :minor_pentatonic)
Summary
Functions
A chord from root, as note names. name must be one of chords/0.
The frequency of a note name in Hz; :a4 is 440.0.
The name of a MIDI number, using sharps: name_of(semitone(:eb5)) is :ds5.
A scale from root, as note names, ascending.
The MIDI number of a note name, with :a4 being 69.
The frequency interval semitones from name. A negative interval goes down.
Functions
A chord from root, as note names. name must be one of chords/0.
@spec chords() :: [atom()]
The names chord/2 accepts.
The frequency of a note name in Hz; :a4 is 440.0.
A note name is a letter a to g, an optional s for sharp or b for flat, then an
octave, which may be negative. A number is returned as a float unchanged. An atom that is
not a note name raises ArgumentError.
The name of a MIDI number, using sharps: name_of(semitone(:eb5)) is :ds5.
A scale from root, as note names, ascending.
name must be one of scales/0. :octaves gives that many octaves, each continuing
upwards from the last rather than starting again; default 1.
@spec scales() :: [atom()]
The names scale/3 accepts.
The MIDI number of a note name, with :a4 being 69.
Takes the name as an atom or a string; the string need not exist as an atom. Raises ArgumentError on anything that is not a note name.
The frequency interval semitones from name. A negative interval goes down.