Class MidiEditor.ChannelModification

Namespace
SpessaSharp.MIDI.Utils
Assembly
SpessaSharp.dll
public sealed class MidiEditor.ChannelModification
Inheritance
MidiEditor.ChannelModification
Inherited Members

Fields

Controllers

All controllers that should be modified for this channel.

  • Key: the MIDI controller number.
  • Value:
    • Clear - all controller changes for this controller are removed.
    • Int - clear + sets the new controller at the start of the song, effectively locking them to the set value.
public Dictionary<Midi.CC, MidiEditor.Parameter<int>>? Controllers

Field Value

Dictionary<Midi.CC, MidiEditor.Parameter<int>>

FineTune

The channel tuning in cents. Tuned using RPN Fine Tune. Range is [-100; 99.986] cents. This differs from the fineTune MIDI Parameter in that it is relative to the tuning applied in the MIDI file, and it does not overwrite it.

public float? FineTune

Field Value

float?

KeyShift

The channel key shift in semitones. Note on/off numbers are shifted. This differs from the keyShift MIDI Parameter in that it shifts the actual note numbers, and doesn't delete or overwrite existing shifts.

public int? KeyShift

Field Value

int?

MidiParameters

The new MIDI parameters of this channel.

  • Key: the MIDI parameter name.
  • Value:
    • Clear - all changes for this parameter are removed.
    • Specific Value - clear + sets the new parameter at the start of the song, effectively locking them to the set value.
public Dictionary<ChannelMidiParameter.Type, MidiEditor.Parameter<ChannelMidiParameter>>? MidiParameters

Field Value

Dictionary<ChannelMidiParameter.Type, MidiEditor.Parameter<ChannelMidiParameter>>

Patch

The new program of this channel.

  • Clear - all program changes for this channel are removed.
  • MidiPatch - clear + sets the new patch according to the MIDI system at the start of the sequence.
public MidiEditor.Parameter<MidiPatch>? Patch

Field Value

MidiEditor.Parameter<MidiPatch>