Documentation
¶
Overview ¶
Primitive and high level music theory concepts to manipulate notes, chords, rhythms, etc.
Index ¶
Constants ¶
View Source
const ( C1 = 24 C2 = 36 C3 = 48 C4 = 60 Db4 = 61 D4 = 62 E4 = 64 F4 = 65 G4 = 67 A4 = 69 B4 = 71 C5 = 72 C6 = 84 C7 = 96 A7 = 105 )
Variables ¶
View Source
var Aeolian = NewScale( MustNotesFromString("A B C D E F G"), MustNotesFromString("G F E D C B A"), )
View Source
var Chords = map[string][]int{ "m": []int{3, 4, 5}, "M": []int{4, 3, 5}, "m7": []int{3, 4, 3, 2}, "m67": []int{3, 4, 1, 2, 2}, "M7": []int{4, 3, 4, 1}, "7": []int{4, 3, 3, 2}, }
View Source
var Diatonic = Ionian
View Source
var Dorian = NewScale( MustNotesFromString("D E F G A B C"), MustNotesFromString("C B A G F E D"), )
View Source
var HarmonicMajor = NewScale( MustNotesFromString("C D E F G Ab B"), MustNotesFromString("B Ab G F E D C"), )
View Source
var Ionian = NewScale( MustNotesFromString("C D E F G A B"), MustNotesFromString("B A G F E D C"), )
View Source
var Locrian = NewScale( MustNotesFromString("B C D E F G A"), MustNotesFromString("A G F E D C B"), )
View Source
var Lydian = NewScale( MustNotesFromString("F G A B C D E"), MustNotesFromString("C B A G F E D"), )
View Source
var MajorScale = Ionian
View Source
var Mixolydian = NewScale( MustNotesFromString("G A B C D E F"), MustNotesFromString("B A G F E D C"), )
View Source
var NoteToPitch = make([]float64, 128)
View Source
var Phrygian = NewScale( MustNotesFromString("E F G A B C D"), MustNotesFromString("D C B A G F E"), )
View Source
var Scales = map[string]*Scale{ "diatonic": Diatonic, "ionian": Ionian, "dorian": Dorian, "phrygian": Phrygian, "lydian": Lydian, "mixolydian": Mixolydian, "aeolian": Aeolian, "locrian": Locrian, "harmonic major": HarmonicMajor, }
Functions ¶
func ChordOnNoteInt ¶
func EuclidianRhythm ¶
func InvertChord ¶
func NoteNameToString ¶
func ScaleOnNoteInt ¶
Types ¶
type Notes ¶
type Notes []*Note
func ChordOnNote ¶
func MustNotesFromString ¶
func NotesFromString ¶
Click to show internal directories.
Click to hide internal directories.