jdxi_editor.ui.editors.effects.vocal
VocalFXEditor Module
This module defines the VocalFXEditor class, a PySide6-based editor for controlling the Vocal FX section of the Roland JD-Xi synthesizer. It provides a graphical interface for adjusting various vocal effects such as vocoder settings, auto-pitch parameters, and mixer controls.
Features: - Scrollable UI with multiple tabs for organizing vocal effect settings. - Support for vocoder controls, including envelope, mic sensitivity, and synthesis levels. - Auto-pitch settings with selectable pitch type, scale, key, and gender adjustment. - Mixer section for controlling levels, panning, reverb, and delay send levels. - MIDI integration for real-time parameter control using MIDIHelper. - Dynamic instrument image loading to visually represent the effect in use.
Dependencies: - PySide6 for UI components. - MIDIHelper for sending MIDI messages to the JD-Xi. - VocalFXParameter for managing effect-specific MIDI parameters.
Classes
Vocal Effects Window Class |
Module Contents
- class jdxi_editor.ui.editors.effects.vocal.VocalFXEditor(midi_helper: jdxi_editor.midi.io.helper.MidiIOHelper | None = None, preset_helper: jdxi_editor.ui.preset.helper.JDXiPresetHelper = None, parent: jdxi_editor.ui.common.QWidget | None = None)[source]
Bases:
jdxi_editor.ui.editors.synth.simple.BasicEditorVocal Effects Window Class
- controls: Dict[picomidi.sysex.parameter.address.AddressParameter, jdxi_editor.ui.common.QWidget][source]
- showEvent(event: PySide6.QtGui.QShowEvent) None[source]
Request current settings from the instrument when the editor is shown.
- dispatch_sysex_to_area(json_sysex_data: str) None[source]
Parse SysEx JSON and update Vocal FX controls.
- _apply_vocal_effect_tooltips() None[source]
Set tooltips for vocal effect controls from VocalEffectsData.
- _build_widgets_from_spec(spec: jdxi_editor.ui.widgets.layout.WidgetLayoutSpec) jdxi_editor.ui.widgets.group.WidgetGroups[source]
Build WidgetGroups from a layout spec (same paradigm as Arpeggiator/Effects).
- _build_common_layout_spec() jdxi_editor.ui.widgets.layout.WidgetLayoutSpec[source]
Build layout spec for Common tab.
- _update_vocal_effect_stack(index: int) None[source]
Switch Vocoder & Auto Pitch stack to the page for the selected effect type.
- _create_vocal_effect_stack_section() jdxi_editor.ui.common.QWidget[source]
Create Vocoder & Auto Pitch tab with QStackedWidget (OFF/VOCODER/AUTO-PITCH).
- _build_vocal_effect_layout_spec() jdxi_editor.ui.widgets.layout.WidgetLayoutSpec[source]
Build layout spec for Vocal FX tab (Vocoder settings).
- _create_vocal_effect_section() jdxi_editor.ui.common.QWidget[source]
Create Vocal FX tab (spec-driven).
- _build_mixer_layout_spec() jdxi_editor.ui.widgets.layout.WidgetLayoutSpec[source]
Build layout spec for Mixer tab.
- _build_auto_pitch_layout_spec() jdxi_editor.ui.widgets.layout.WidgetLayoutSpec[source]
Build layout spec for Auto Pitch tab.