Arabic Maqām Network - TypeScript Library Documentation - v0.1.0
    Preparing search index...
    • Generates a complete array of PitchClass objects for a tuning system starting from a specific note.

      Parameters

      • tuningSystem: default

        The tuning system to generate pitch classes for

      • startingNote: string

        The note to start the tuning system from

      • tuningSystemPitchClasses: string[] = []

        Optional custom pitch classes (default: from tuning system)

      • inputStringLength: number = 0

        Optional length parameter for custom input

      • inputReferenceFrequencies: { [noteName: string]: number } = {}

        Optional custom reference frequencies

      Returns default[]

      Complete array of PitchClass objects spanning multiple octaves

      This is the most important function in the system because it is a generative function that creates the pitch classes that we work with throughout the application (view, select, play, highlight).

      This is a core function that creates the fundamental pitch collection for analysis. It takes a tuning system and starting note, then generates all pitch classes across multiple octaves with their frequencies, MIDI numbers, cents deviations, and other properties needed for maqam analysis.

      The function handles various pitch class formats (ratios, frequencies, cents) and automatically detects the input type. It also manages reference frequencies and octave relationships to create a comprehensive pitch space.