spessasynth_core documentation
    Preparing search index...

    Type Alias EffectChangeEvent

    EffectChangeEvent:
        | {
            effect: "gsReverb";
            parameter: FXType<GSReverbProcessor>;
            value: number;
        }
        | {
            effect: "gsChorus";
            parameter: FXType<GSChorusProcessor>;
            value: number;
        }
        | { effect: "gsDelay"; parameter: FXType<GSDelayProcessor>; value: number }
        | {
            effect: "gsInsertion";
            parameter: "type" | keyof GSInsertionParameter | number;
            value: number;
        }
        | {
            effect: "xgReverb";
            parameter: "type"
            | "return"
            | "pan"
            | number;
            value: number;
        }
        | {
            effect: "xgChorus";
            parameter: "type"
            | "return"
            | "pan"
            | "sendToReverb"
            | number;
            value: number;
        }
        | {
            effect: "xgVariation";
            parameter: | "type"
            | "return"
            | "pan"
            | "sendToReverb"
            | "sendToChorus"
            | "partNumber"
            | number;
            value: number;
        }
        | {
            effect: "xgVariation";
            parameter: "connection";
            value: XGVariationConnection;
        }
        | {
            effect: "xgInsertion";
            insertionNumber: number;
            parameter: "type"
            | "partNumber"
            | number;
            value: number;
        }

    This event is triggered when an effect processor has one of its parameters changed.

    The effects and their parameters can be found here:

    Type Declaration

    • { effect: "gsReverb"; parameter: FXType<GSReverbProcessor>; value: number }
    • { effect: "gsChorus"; parameter: FXType<GSChorusProcessor>; value: number }
    • { effect: "gsDelay"; parameter: FXType<GSDelayProcessor>; value: number }
    • {
          effect: "gsInsertion";
          parameter: "type" | keyof GSInsertionParameter | number;
          value: number;
      }
      • effect: "gsInsertion"

        The effect that was changed: Roland GS insertion.

      • parameter: "type" | keyof GSInsertionParameter | number

        The parameter that was changed:

        • "type" - 16-bit effect type (MSB << 8 | LSB). Note that this resets the parameters and the send levels!
        • "sendLevelToReverb" | "sendLevelToChorus" | "sendLevelToDelay" - send levels (7-bit), see GSInsertionParameter.
        • number - 0-based type-specific EFX parameter index (0-19). EFX parameter 1 is 0. Value is 7-bit.
      • value: number

        The new value for the parameter.

    • {
          effect: "xgReverb";
          parameter: "type" | "return" | "pan" | number;
          value: number;
      }
      • effect: "xgReverb"

        The effect that was changed: Yamaha XG reverb block.

      • parameter: "type" | "return" | "pan" | number

        The parameter that was changed:

        • "type" - 16-bit effect type (MSB << 8 | LSB). Note that this resets the parameters!
        • "return" | "pan" - common parameters (7-bit).
        • number - 0-based type-specific parameter index (0-15). Value is 14-bit/7-bit. 7-bit values use the lower 7 bits.
      • value: number

        The new value for this parameter.

    • {
          effect: "xgChorus";
          parameter: "type" | "return" | "pan" | "sendToReverb" | number;
          value: number;
      }
      • effect: "xgChorus"

        The effect that was changed: Yamaha XG chorus block.

      • parameter: "type" | "return" | "pan" | "sendToReverb" | number

        The parameter that was changed:

        • "type" - 16-bit effect type (MSB << 8 | LSB). Note that this resets the parameters!
        • "return" | "pan" | "sendToReverb" - common parameters (7-bit).
        • number - 0-based type-specific parameter index (0-15). Value is 14-bit/7-bit. 7-bit values use the lower 7 bits.
      • value: number

        The new value for this parameter.

    • {
          effect: "xgVariation";
          parameter:
              | "type"
              | "return"
              | "pan"
              | "sendToReverb"
              | "sendToChorus"
              | "partNumber"
              | number;
          value: number;
      }
      • effect: "xgVariation"

        The effect that was changed: Yamaha XG variation block.

      • parameter:
            | "type"
            | "return"
            | "pan"
            | "sendToReverb"
            | "sendToChorus"
            | "partNumber"
            | number

        The parameter that was changed:

        • "type" - 16-bit effect type (MSB << 8 | LSB). Note that this resets the parameters!
        • "return" | "pan" | "sendToReverb" | "sendToChorus" - common parameters (7-bit).
        • "partNumber" - the channel routed through the effect in insertion mode (127 = OFF).
        • number - 0-based type-specific parameter index (0-15). Value is 14-bit/7-bit. 7-bit values use the lower 7 bits.
      • value: number

        The new value for this parameter.

    • { effect: "xgVariation"; parameter: "connection"; value: XGVariationConnection }
      • effect: "xgVariation"

        The effect that was changed: Yamaha XG variation block.

      • parameter: "connection"

        Switches the variation block between system and insertion mode.

        Corresponds to XGVariationBlock.insertionMode.

      • value: XGVariationConnection

        The new connection mode.

    • {
          effect: "xgInsertion";
          insertionNumber: number;
          parameter: "type" | "partNumber" | number;
          value: number;
      }
      • effect: "xgInsertion"

        The effect that was changed: Yamaha XG insertion block (EFFECT 2).

      • insertionNumber: number

        The 0-based insertion effect number.

      • parameter: "type" | "partNumber" | number

        The parameter that was changed:

        • "type" - 16-bit effect type (MSB << 8 | LSB). Note that this resets the parameters!
        • "partNumber" - the channel routed through the insertion effect (127 = OFF).
        • number - 0-based type-specific parameter index (0-15). Value is 14-bit/7-bit. 7-bit values use the lower 7 bits.
      • value: number

        The new value for this parameter.