spessasynth_core documentation
    Preparing search index...

    Class BasicPreset

    Represents a single preset. This is what is used for MIDI playback.

    Implements

    Index
    bankLSB: number = 0

    Bank LSB (CC#32) of this patch.

    This is mostly used in XG and GM2 for selecting variations of instruments, much like MSB in GS.

    bankMSB: number = 0

    Bank MSB (CC#0) of this patch.

    It is used for sound variation in GS, and for channel type in XG and GM2. This means that with bank MSB of 127 for example, a channel in XG mode will turn into a drum channel.

    genre: number = 0

    Unused preset metadata, preserved.

    globalZone: BasicZone

    Preset's global zone. Its parameters are overridden by the local zone parameters.

    isGMGSDrum: boolean = false

    If the preset is marked as GM/GS drum preset.

    This flag is exclusive to GM and GS systems. These don't use bank MSB as a drum flag. GM has channel 9 hardcoded as drums, and GS has a system exclusive for setting them. This allows XG and GS drums to coexist in a single sound bank and can be thought of as bank 128 in SF2.

    library: number = 0

    Unused preset metadata, preserved.

    morphology: number = 0

    Unused preset metadata, preserved.

    name: string = ""

    The preset's name.

    parentSoundBank: BasicSoundBank

    The parent soundbank instance Currently used for determining default modulators and XG status

    program: number = 0

    The MIDI program number.

    zones: BasicPresetZone[] = []

    The preset's zones. These are limited to specific key/velocity ranges and contain associated instruments.

    • Returns the voice synthesis data for this preset.

      Parameters

      • midiNote: number

        The MIDI note number.

      • velocity: number

        The MIDI velocity.

      Returns VoiceParameters[]

      The returned sound data.

    • Preloads (loads and caches synthesis data) for a given key range.

      Parameters

      • keyMin: number

        The lowest allowed MIDI note number.

      • keyMax: number

        The highest allowed MIDI note number.

      Returns void