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, display_name: str | None = None, options: list | None = None, values: list | 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]
- property display_name: str[source]
Get digital name for the parameter (from ParameterSpec or fallback).
- 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 digital value to MIDI value
- Parameters:
slider_value – int The digital value
- Returns:
int The MIDI value