pitch.envelope
ADSR Widget for Roland JD-Xi
This widget provides address visual interface for editing ADSR (Attack, Decay, Sustain, Release) envelope parameters. It includes: - Interactive sliders for each ADSR parameter - Visual envelope plot - Real-time parameter updates - MIDI parameter integration via SynthParameter objects
The widget supports both analog and digital synth parameters and provides visual feedback through an animated envelope curve.
Classes
Pitch Envelope Class |
Module Contents
- class pitch.envelope.PitchEnvelopeWidget(attack_param: picomidi.sysex.parameter.address.AddressParameter, decay_param: picomidi.sysex.parameter.address.AddressParameter, depth_param: picomidi.sysex.parameter.address.AddressParameter, midi_helper: jdxi_editor.midi.io.helper.MidiIOHelper | None = None, create_parameter_slider: Callable = None, controls: dict[picomidi.sysex.parameter.address.AddressParameter, PySide6.QtWidgets.QWidget] = None, address: jdxi_editor.midi.data.address.address.RolandSysExAddress | None = None, parent: PySide6.QtWidgets.QWidget | None = None)[source]
Bases:
jdxi_editor.ui.widgets.envelope.base.EnvelopeWidgetBasePitch Envelope Class
- on_control_changed(change: dict) None[source]
Control Change callback
- Parameters:
change – dict envelope
- Returns:
None
- Emits:
dict pitch envelope parameters
- update_envelope_from_spinboxes()[source]
Update envelope values from spinboxes :emits: dict pitch envelope parameters
- update_spinboxes_from_envelope()[source]
Update spinboxes from envelope values :emits: dict pitch envelope parameters