jdxi_editor.midi.data.parameter.vocal_fx

This module defines the VocalFXParameter class, which represents various vocal effects parameters in a synthesizer. These parameters control different aspects of vocal processing, including level, pan, delay/reverb send levels, auto pitch settings, vocoder effects, and more.

The class provides methods to:

  • Initialize vocal FX parameters with a given address, range, and optional display range.

  • Validate and convert parameter values to the MIDI range (0-127).

  • Define a variety of vocal effects parameters with specific ranges, including: - Level, pan, delay/reverb send levels, and output assignment - Auto pitch settings such as switch, type, scale, key, note, gender, octave, and balance - Vocoder parameters such as switch, envelope type, level, mic sensitivity, and mix level

The class also offers conversion utilities: - Convert between MIDI values and display values. - Handle special bipolar cases (e.g., pan, auto pitch gender). - Retrieve the display value range or MIDI value range for parameters.

Parameters include: - Level, pan, delay and reverb send levels, output assignment, and auto pitch settings - Vocoder settings for on/off, envelope, level, mic sensitivity, synth level, and mic mix - Auto pitch gender, octave, balance, and key/note configurations

The class also includes utility functions to get a parameter’s address, range, display range, and to convert between MIDI values and display values.

Usage example:

# Initialize a VocalFXParameter object for the LEVEL parameter param = VocalFXParameter(address=0x00, min_val=0, max_val=127)

# Access display range values print(param.display_min) # Output: 0 print(param.display_max) # Output: 127

# Validate a MIDI value midi_value = param.convert_to_midi(64)

Classes

VocalFXParam

Vocal FX parameters

Module Contents

class jdxi_editor.midi.data.parameter.vocal_fx.VocalFXParam(address: int, min_val: int, max_val: int, display_min: int | None = None, display_max: int | None = None, tooltip: str | None = None)[source]

Bases: picomidi.sysex.parameter.address.AddressParameter

Vocal FX parameters

display_min = None[source]
display_max = None[source]
tooltip = None[source]
LEVEL = (0, 0, 127, 0, 127, 'Sets the level of the vocal FX.')[source]
PAN[source]
DELAY_SEND_LEVEL = (2, 0, 127, 0, 127, 'Sets the level of the delay send.')[source]
REVERB_SEND_LEVEL = (3, 0, 127, 0, 127, 'Sets the level of the reverb send.')[source]
OUTPUT_ASSIGN = (4, 0, 4, 0, 4, 'Sets the output assignment.')[source]
AUTO_PITCH_SWITCH = (5, 0, 1, 0, 1, 'Sets the auto note on/off.')[source]
AUTO_PITCH_TYPE = (6, 0, 3, 0, 3, 'Sets the auto pitch preset_type.')[source]
AUTO_PITCH_SCALE = (7, 0, 1, 0, 1, 'Sets the auto pitch scale.')[source]
AUTO_PITCH_KEY = (8, 0, 23, 0, 23, 'Sets the auto pitch key.')[source]
AUTO_PITCH_NOTE = (9, 0, 11, 0, 11, 'Sets the auto pitch note.')[source]
AUTO_PITCH_GENDER[source]
AUTO_PITCH_OCTAVE[source]
AUTO_PITCH_BALANCE = (12, 0, 100, 0, 100, 'Sets the auto pitch balance.')[source]
VOCODER_SWITCH = (13, 0, 1, 0, 1, 'Sets the vocoder on/off.')[source]
VOCODER_ENVELOPE = (14, 0, 2, 0, 2, 'Sets the vocoder envelope preset_type.')[source]
VOCODER_LEVEL = (15, 0, 127, 0, 127, 'Sets the vocoder level.')[source]
VOCODER_MIC_SENS = (16, 0, 127, 0, 127, 'Sets the vocoder mic sensitivity.')[source]
VOCODER_SYNTH_LEVEL = (17, 0, 127, 0, 127, 'Sets the vocoder synth level.')[source]
VOCODER_MIC_MIX = (18, 0, 127, 0, 127, 'Sets the vocoder mic mix level.')[source]
VOCODER_MIC_HPF = (19, 0, 13, 0, 13, 'Sets the vocoder mic HPF freq.')[source]
validate_value(value: int) int[source]

Validate and convert parameter value to MIDI range (0-127)

static get_name_by_address(address: int) str | None[source]

Return the parameter name for address given address. :param address: int The address :return: Optional[str] The parameter name

property display_name: str[source]

Get display name for the parameter

property is_switch: bool[source]

Returns True if parameter is address binary/enum switch

static get_address(param_name: str) int | None[source]

Get the address of address parameter by name.

Parameters:

param_name – str The parameter name

Returns:

Optional[int] The address

static get_range(param_name: str) Tuple[int, int][source]

Get the value range (min, max) of address parameter by name.

Parameters:

param_name – str The parameter name

Returns:

Tuple[int, int] The value range

static get_display_range(param_name: str) Tuple[int, int][source]

Get the display value range (min, max) of address parameter by name.

Parameters:

param_name – str The parameter name

Returns:

Tuple[int, int] The display value range

get_display_value() Tuple[int, int][source]

Get the display value range (min, max) for the parameter

Returns:

Tuple[int, int] The display value range

convert_from_display(display_value: int) int[source]

Convert from display value to MIDI value (0-127)

Parameters:

display_value – int The display value

Returns:

int The MIDI value

static convert_to_display(value: int, min_val: int, max_val: int, display_min: int, display_max: int) int[source]

Convert address value to address display value within address range.

Parameters:
  • value – int The address value

  • min_val – int The address minimum value

  • max_val – int The address maximum value

  • display_min – int The display minimum value

  • display_max – int The display maximum value

Returns:

int The display value

convert_to_midi(display_value: int) int[source]

Convert from display value to MIDI value

Parameters:

display_value – int The display value

Returns:

int The MIDI value

convert_from_midi(midi_value: int) int[source]

Convert from MIDI value to display value

Parameters:

midi_value – int The MIDI value

Returns:

int The display value

static get_display_value_by_name(param_name: str, value: int) int[source]

Get the display value for address parameter by name and value.

Parameters:
  • param_name – str The parameter name

  • value – int The value

Returns:

int The display value

static get_midi_range(param_name: str) Tuple[int, int][source]

Get the MIDI value range (min, max) of address parameter by name.

Parameters:

param_name – str The parameter name

Returns:

Tuple[int, int] The MIDI value range

static get_midi_value(param_name: str, value: int) int | None[source]

Get the MIDI value for address parameter by name and value.

Parameters:
  • param_name – str The parameter name

  • value – int The value

Returns:

Optional[int] The MIDI value