jdxi_editor.midi.data.parameter.digital.partial
This class defines digital synthesizer parameters for the Roland JD-Xi, mapping various synthesis parameters to their corresponding memory addresses and valid value ranges.
The parameters include: - Oscillator settings (waveform, pitch, detune, envelope, etc.) - Filter settings (cutoff, resonance, envelope, key follow, etc.) - Amplitude settings (level, velocity, envelope, pan, etc.) - LFO (Low-Frequency Oscillator) settings (waveform, rate, depth, sync, etc.) - Modulation LFO settings (waveform, rate, depth, sync, etc.) - Additional synthesis controls (aftertouch, wave gain, super saw detune, etc.) - PCM wave settings (wave number, gain, high-pass filter cutoff, etc.)
- Each parameter is stored as address tuple containing:
(memory_address, min_value, max_value)
- - OSC_WAVE
Defines the oscillator waveform preset_type.
- - FILTER_CUTOFF
Controls the filter cutoff frequency.
- - AMP_LEVEL
Sets the overall amplitude level.
- - LFO_RATE
Adjusts the rate of the low-frequency oscillator.
- - MOD_LFO_PITCH_DEPTH
Modulates pitch using the secondary LFO.
- -
- Type:
Other parameters follow address similar structure.
- __init__(self, address
int, min_val: int, max_val: int): Initializes address DigitalParameter instance with an address and value range.
- Usage Example:
filter_cutoff = DigitalParameter(0x0C, 0, 127) # Filter Cutoff Frequency print(filter_cutoff.address) # Output: 0x0C
This class helps structure and manage parameter mappings for JD-Xi SysEx processing.
Classes
Digital synth parameters with their addresses and value ranges |
Module Contents
- class jdxi_editor.midi.data.parameter.digital.partial.DigitalPartialParam(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.AddressParameterDigital synth parameters with their addresses and value ranges
- bipolar_parameters = ['OSC_PITCH', 'OSC_DETUNE', 'OSC_PITCH_ENV_DEPTH', 'FILTER_CUTOFF_KEYFOLLOW',...[source]
- OSC_WAVE_VARIATION = (1, 0, 2, 0, 2, 'You can select variations of the currently selected WAVE')[source]
- FILTER_SLOPE = (11, 0, 1, 0, 1, 'Selects the slope (steepness) of the filter. -12, -24 [dB]')[source]
- FILTER_RESONANCE = (15, 0, 127, 0, 127, 'Emphasizes the sound in the region of the filter cutoff frequency')[source]
- LFO_TEMPO_SYNC_SWITCH = (30, 0, 1, 0, 1, 'If this is ON, the LFO rate can be specified as a note value relative to the tempo')[source]
- LFO_FADE_TIME = (32, 0, 127, 0, 127, 'Specifies the time from when the partial sounds until the LFO reaches its...[source]
- LFO_KEY_TRIGGER = (33, 0, 1, 0, 1, 'If this is on, the LFO cycle will be restarted when you press a key')[source]
- MOD_LFO_RATE = (39, 0, 127, 0, 127, 'Specifies the LFO rate when ModLFO TempoSyncSw is OFF.')[source]
- MOD_LFO_TEMPO_SYNC_SWITCH = (40, 0, 1, 0, 1, 'If this is ON, the LFO rate can be specified as a note value relative to the tempo')[source]
- MOD_LFO_TEMPO_SYNC_NOTE = (41, 0, 19, 0, 19, 'Specifies the LFO rate when ModLFO TempoSyncSw is ON')[source]
- HPF_CUTOFF = (57, 0, 127, 0, 127, 'Specifies the cutoff frequency of an independent -6 dB high-pass filter')[source]
- PCM_WAVE_GAIN = (52, 0, 3, 0, 3, 'Sets the gain for PCM waveforms; 0dB, -6dB, +6dB, +12dB')[source]
- PCM_WAVE_NUMBER = (53, 0, 16384, 0, 16384, 'Selects the PCM waveform; 0-16383 * This is valid only if PCM is...[source]
- get_address_for_partial(partial_number: int) Tuple[int, int][source]
Get parameter area and address adjusted for partial number.
- Parameters:
partial_number – int The partial number
- Returns:
Tuple[int, int] The (group, address) tuple
- static get_by_name(param_name: str) object | None[source]
Get the DigitalParameter by name.
- Parameters:
param_name – str The parameter name
- Returns:
Optional[AddressParameterDigitalPartial] The parameter
Return the parameter member by name, or None if not found
- convert_value(value: int, reverse: bool = False) int[source]
Converts value in both directions based on CONVERSION_OFFSETS
- Parameters:
value – int The value
reverse – bool The reverse flag
- Returns:
int The converted value
- convert_to_midi(slider_value: int) int[source]
Convert from display value to MIDI value
- Parameters:
slider_value – int The display value
- Returns:
int The MIDI value