jdxi_editor.midi.data.parameter.drum.partial

Module for defining drum kit parameters in the Roland JD-Xi editor.

This module provides the DrumPartialParameter class, which extends SynthParameter to define the addresses, value ranges, and characteristics of drum partial parameters. It includes various attributes representing different drum-related parameters, such as tuning, level, panning, and effects settings.

Classes:
DrumPartialParameter – Represents a drum partial parameter with its address,

value range, and optional digital range.

DRUM_GROUP_MAP -- Mapping of drum groups.
DRUM_ADDRESS_MAP -- Mapping of parameter names to MIDI addresses.
Example usage:

drum_param = DrumPartialParameter(0x0F, 0, 127) print(drum_param.address) # Output: 0x0F print(drum_param.min_val) # Output: 0 print(drum_param.max_val) # Output: 127

Classes

DrumPartialParam

Drum kit parameters with their addresses and value ranges

Module Contents

class jdxi_editor.midi.data.parameter.drum.partial.DrumPartialParam(address: int, min_val: int, max_val: int, display_min: int | None = None, display_max: int | None = None, tooltip: str | None = '', display_name: str | None = None, options: list | None = None, values: list | None = None)[source]

Bases: picomidi.sysex.parameter.address.AddressParameter

Drum kit parameters with their addresses and value ranges

display_min[source]
display_max[source]
tooltip[source]
_display_name = None[source]
options = None[source]
values = None[source]
bipolar_parameters = ['PARTIAL_FINE_TUNE', 'PITCH_ENV_DEPTH', 'PARTIAL_PAN', 'PARTIAL_ALTERNATE_PAN_DEPTH',...[source]
CONVERSION_OFFSETS[source]
PARTIAL_NAME_1[source]
PARTIAL_NAME_2[source]
PARTIAL_NAME_3[source]
PARTIAL_NAME_4[source]
PARTIAL_NAME_5[source]
PARTIAL_NAME_6[source]
PARTIAL_NAME_7[source]
PARTIAL_NAME_8[source]
PARTIAL_NAME_9[source]
PARTIAL_NAME_10[source]
PARTIAL_NAME_11[source]
PARTIAL_NAME_12[source]
ASSIGN_TYPE[source]
MUTE_GROUP[source]
PARTIAL_LEVEL[source]
PARTIAL_COARSE_TUNE[source]
PARTIAL_FINE_TUNE[source]
PARTIAL_RANDOM_PITCH_DEPTH[source]
PARTIAL_PAN[source]
PARTIAL_RANDOM_PAN_DEPTH[source]
PARTIAL_ALTERNATE_PAN_DEPTH[source]
PARTIAL_ENV_MODE[source]
PARTIAL_OUTPUT_LEVEL[source]
PARTIAL_CHORUS_SEND_LEVEL[source]
PARTIAL_REVERB_SEND_LEVEL[source]
PARTIAL_OUTPUT_ASSIGN[source]
PARTIAL_PITCH_BEND_RANGE[source]
PARTIAL_RECEIVE_EXPRESSION[source]
PARTIAL_RECEIVE_HOLD_1[source]
WMT_VELOCITY_CONTROL[source]
WMT1_WAVE_SWITCH[source]
WMT1_WAVE_GROUP_TYPE[source]
WMT1_WAVE_GROUP_ID[source]
WMT1_WAVE_NUMBER_L[source]
WMT1_WAVE_NUMBER_R[source]
WMT1_WAVE_GAIN[source]
WMT1_WAVE_FXM_SWITCH[source]
WMT1_WAVE_FXM_COLOR[source]
WMT1_WAVE_FXM_DEPTH[source]
WMT1_WAVE_TEMPO_SYNC[source]
WMT1_WAVE_COARSE_TUNE[source]
WMT1_WAVE_FINE_TUNE[source]
WMT1_WAVE_PAN[source]
WMT1_WAVE_RANDOM_PAN_SWITCH[source]
WMT1_WAVE_ALTERNATE_PAN_SWITCH[source]
WMT1_WAVE_LEVEL[source]
WMT1_VELOCITY_RANGE_LOWER[source]
WMT1_VELOCITY_RANGE_UPPER[source]
WMT1_VELOCITY_FADE_WIDTH_LOWER[source]
WMT1_VELOCITY_FADE_WIDTH_UPPER[source]
WMT2_WAVE_SWITCH[source]
WMT2_WAVE_GROUP_TYPE[source]
WMT2_WAVE_GROUP_ID[source]
WMT2_WAVE_NUMBER_L[source]
WMT2_WAVE_NUMBER_R[source]
WMT2_WAVE_GAIN[source]
WMT2_WAVE_FXM_SWITCH[source]
WMT2_WAVE_FXM_COLOR[source]
WMT2_WAVE_FXM_DEPTH[source]
WMT2_WAVE_TEMPO_SYNC[source]
WMT2_WAVE_COARSE_TUNE[source]
WMT2_WAVE_FINE_TUNE[source]
WMT2_WAVE_PAN[source]
WMT2_WAVE_RANDOM_PAN_SWITCH[source]
WMT2_WAVE_ALTERNATE_PAN_SWITCH[source]
WMT2_WAVE_LEVEL[source]
WMT2_VELOCITY_RANGE_LOWER[source]
WMT2_VELOCITY_RANGE_UPPER[source]
WMT2_VELOCITY_FADE_WIDTH_LOWER[source]
WMT2_VELOCITY_FADE_WIDTH_UPPER[source]
WMT3_WAVE_SWITCH[source]
WMT3_WAVE_GROUP_TYPE[source]
WMT3_WAVE_GROUP_ID[source]
WMT3_WAVE_NUMBER_L[source]
WMT3_WAVE_NUMBER_R[source]
WMT3_WAVE_GAIN[source]
WMT3_WAVE_FXM_SWITCH[source]
WMT3_WAVE_FXM_COLOR[source]
WMT3_WAVE_FXM_DEPTH[source]
WMT3_WAVE_TEMPO_SYNC[source]
WMT3_WAVE_COARSE_TUNE[source]
WMT3_WAVE_FINE_TUNE[source]
WMT3_WAVE_PAN[source]
WMT3_WAVE_RANDOM_PAN_SWITCH[source]
WMT3_WAVE_ALTERNATE_PAN_SWITCH[source]
WMT3_WAVE_LEVEL[source]
WMT3_VELOCITY_RANGE_LOWER[source]
WMT3_VELOCITY_RANGE_UPPER[source]
WMT3_VELOCITY_FADE_WIDTH_LOWER[source]
WMT3_VELOCITY_FADE_WIDTH_UPPER[source]
WMT4_WAVE_SWITCH[source]
WMT4_WAVE_GROUP_TYPE[source]
WMT4_WAVE_GROUP_ID[source]
WMT4_WAVE_NUMBER_L[source]
WMT4_WAVE_NUMBER_R[source]
WMT4_WAVE_GAIN[source]
WMT4_WAVE_FXM_SWITCH[source]
WMT4_WAVE_FXM_COLOR[source]
WMT4_WAVE_FXM_DEPTH[source]
WMT4_WAVE_TEMPO_SYNC[source]
WMT4_WAVE_COARSE_TUNE[source]
WMT4_WAVE_FINE_TUNE[source]
WMT4_WAVE_PAN[source]
WMT4_WAVE_RANDOM_PAN_SWITCH[source]
WMT4_WAVE_ALTERNATE_PAN_SWITCH[source]
WMT4_WAVE_LEVEL[source]
WMT4_VELOCITY_RANGE_LOWER[source]
WMT4_VELOCITY_RANGE_UPPER[source]
WMT4_VELOCITY_FADE_WIDTH_LOWER[source]
WMT4_VELOCITY_FADE_WIDTH_UPPER[source]
PITCH_ENV_DEPTH[source]
PITCH_ENV_VELOCITY_SENS[source]
PITCH_ENV_TIME_1_VELOCITY_SENS[source]
PITCH_ENV_TIME_4_VELOCITY_SENS[source]
PITCH_ENV_TIME_1[source]
PITCH_ENV_TIME_2[source]
PITCH_ENV_TIME_3[source]
PITCH_ENV_TIME_4[source]
PITCH_ENV_LEVEL_0[source]
PITCH_ENV_LEVEL_1[source]
PITCH_ENV_LEVEL_2[source]
PITCH_ENV_LEVEL_3[source]
PITCH_ENV_LEVEL_4[source]
TVF_FILTER_TYPE[source]
TVF_CUTOFF_FREQUENCY[source]
TVF_CUTOFF_VELOCITY_CURVE[source]
TVF_CUTOFF_VELOCITY_SENS[source]
TVF_RESONANCE[source]
TVF_RESONANCE_VELOCITY_SENS[source]
TVF_ENV_DEPTH[source]
TVF_ENV_VELOCITY_CURVE_TYPE[source]
TVF_ENV_VELOCITY_SENS[source]
TVF_ENV_TIME_1_VELOCITY_SENS[source]
TVF_ENV_TIME_4_VELOCITY_SENS[source]
TVF_ENV_TIME_1[source]
TVF_ENV_TIME_2[source]
TVF_ENV_TIME_3[source]
TVF_ENV_TIME_4[source]
TVF_ENV_LEVEL_0[source]
TVF_ENV_LEVEL_1[source]
TVF_ENV_LEVEL_2[source]
TVF_ENV_LEVEL_3[source]
TVF_ENV_LEVEL_4[source]
TVA_LEVEL_VELOCITY_CURVE[source]
TVA_LEVEL_VELOCITY_SENS[source]
TVA_ENV_TIME_1_VELOCITY_SENS[source]
TVA_ENV_TIME_4_VELOCITY_SENS[source]
TVA_ENV_TIME_1[source]
TVA_ENV_TIME_2[source]
TVA_ENV_TIME_3[source]
TVA_ENV_TIME_4[source]
TVA_ENV_LEVEL_1[source]
TVA_ENV_LEVEL_2[source]
TVA_ENV_LEVEL_3[source]
ONE_SHOT_MODE[source]
RELATIVE_LEVEL[source]
DRUM_PART[source]
DRUM_GROUP[source]
property display_name: str[source]

Get digital name for the parameter (from ParameterSpec or fallback).

validate_value(value: int) int[source]

Validate and convert parameter value to MIDI range (0-127) :param value: int The value :return: int The validated value

convert_to_midi_old(value: int) int[source]

Convert the value to MIDI range (0-127) for sending via MIDI.

Parameters:

value – int value to convert

Returns:

int MIDI value

convert_from_display(display_value: int) int[source]

Convert from digital value to MIDI value (0-127) :param display_value: int The digital value :return: int The MIDI value

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

Get the digital range for the parameter :return: Tuple[int, int] The digital range

get_address_for_partial(partial_index: int) tuple[source]

Get the address for address drum partial by index :param partial_index: int The partial index :return: tuple The address

static get_address_for_partial_name(partial_name: str) int[source]

Get parameter area and address adjusted for partial number. :param partial_name: str The partial name :return: int The address

static get_by_name(param_name: str) object | None[source]

Get the AnalogParameter by name. :param param_name: str The parameter name :return: Optional[AddressParameterDrumPartial] The parameter Return the parameter member by name, or None if not found

convert_from_midi(midi_value: int) int[source]

Convert from MIDI value to digital value :param midi_value: int The MIDI value :return: int The digital value

get_envelope_param_type()[source]

Returns a envelope_param_type, if the parameter is part of an envelope, otherwise returns None.

Returns:

Optional[str] The envelope parameter type