PLUG'N SCRIPT
rapid plugin development
Tutorial
DSP
KUIML
How-to
Scripts
  • Overview
  • Tutorial
  • Reference
  • Built-in variables
  • Runtime model
  • Parameters mapping
  • Script converter
  • LetiMix
KUIMLRuntime model
October 29, 2025

Runtime model

Plug'n Script exposes runtime objects that let the skin (GUI) to interact with the audio plug-in (DSP). These model objects created for you by the plug-in are described below. You should use the identifier (id) of these objects to reference them from the KUIML code.

Examples of use

  1. <PARAM_TEXT param_id="dsp.connected_inputs_count" />
  2. <SYSTEM_ACTION_BUTTON action_id="DisplayAbout" />
  3. <TEXT string_id="current_preset.name" />
  4. <PARAM_TEXT_CONTROL param_id="window.opacity" />

DSP related

Identifier Description
dsp.inputX (Read/Write param) Input parameters let the end user change the configuration of the plug-in in real time. They are available for automation and MIDI control. Exposed as dsp.input0, dsp.input1, etc.

In Plug'n Script we use aliases custom_param0, custom_param1 etc. Read why and more on parameters mapping.
dsp.outputX (Read-only param) Output parameters let the plug-in show information to the end user, and are available for recording automation or sending MIDI data. Exposed as dsp.output0, dsp.output1, etc.

In Plug'n Script we use aliases custom_out_param0, custom_out_param1 etc. Read why and more on parameters mapping.
dsp.private_outputX (Read-only param) Private output parameters are the same as output parameters, but not exposed to the host application for automation or MIDI. Exposed as dsp.private_output0, dsp.private_output1, etc.
dsp.input_stringX (Read/Write string) Input strings are editable string model objects. Exposed as dsp.input_string0, dsp.input_string1, etc.
dsp.output_stringX (Read-only string) Output strings are string model objects for displaying text information. Exposed as dsp.output_string0, dsp.output_string1, etc.
dsp.sample_rate (Read-only param) Sample rate of audio data. 
dsp.max_block_size (Read-only param) Max block size of audio data.
dsp.connected_inputs_count (Read-only param) Number of connected audio inputs. 
dsp.connected_outputs_count (Read-only param) Number of connected audio outputs. 
dsp.input_busses_count  
dsp.output_busses_count  
dsp.latency (Read-only param) Reported latency
dsp.load (Read-only param) CPU load (info for the PnS meter)
dsp.max_load (Read-only param) CPU max load (info for the PnS meter)

Built-in actions

Name Description
OpenMenu Opens the main plug-in menu.
OpenPresetsMenu Opens the plug-in presets menu.
DisplayAbout Displays the "About Box" window.
OpenManual Opens the plug-in manual.
Undo Triggers Undo.
Redo Triggers Redo.
LoadPreset Opens the "Load Preset" window.
SavePreset Opens the "Save Preset" window.
SaveAsDefaultPreset Saves the current state as the default preset.
SaveCurrentPreset Saves the state of the current preset into the preset file (if not a factory preset and file path available).
RevertCurrentPreset Reloads the state of the current preset from file (if available).
NextPreset Loads the next preset in the list.
PreviousPreset Loads the previous preset in the list.
Show_dsp.inputX_ControlSetup Opens the "Control Setup" menu for input parameter X. Provides access to automation and MIDI control settings.
Show_dsp.outputX_ControlSetup Opens the "Control Setup" menu for output parameter X. Provides access to automation and MIDI control settings.
OpenPresetSettings Opens the presets settings window.
OpenGlobalSettings Opens the global settings window.
ResetPresetMIDISettings Reset Preset MIDI Settings
SavePresetMIDISettingsAsGlobal Save Preset MIDI settings as Global
Show_AllControls_Setup Show all controls MIDI setup
Show_NextPreset_ControlSetup Show next preset control setup
Show_PreviousPreset_ControlSetup Show previous preset control setup

See more info on built-in action types.

Preset related

Identifier Description
current_preset.name (Read-only string) The name of the current preset.
current_preset.absolute_path (Read/Write string) The absolute file path for the current preset. Changing the path does not trigger preset reload - use the RevertCurrentPreset action to reload it.
current_preset.path (Read/Write string) The relative file path for the current preset (relative to either factory or user presets root directory). Changing the path does not trigger preset reload - use the RevertCurrentPreset action to reload it.
current_preset.modified (Read-only param) The modification status of the current preset. Parameter set to true if the last loaded preset has been modified.

GUI related, various

Identifier Description
gui.zoom (Read/Write param) Gui zoom factor (70-200%). Changing triggers gui reloading
gui.skin_file (Read/Write string) Path to skin file used
gui.Reload (Action) Triggers reloading the GUI
gui.BeginCapture (Action)
gui.EndCapture (Action)
gui.capturing (Read-only param)
window.opacity (Read/Write param) Opacity of the GUI window
window.loaded (Read only param) Is set to true (1) when GUI is loaded
alive (Read only param) is set to true (1) when the model is "alive"

It's the status of the (data) model. Which can change several times upon loading. It can be set to 'false' anytime some deserialization occurs or for other reasons. When alive is 'false' it simply means that the model is not running (links and action trigers are not active anymore).

See it live

You can use Letimix Debug skin (included in LM Skin) to see many of these parameters and values "live".


Comments

Please, authorize to view and post comments.

2020 - 2026 © Site by LetiMix · Donate  |  Plug'n Script and KUIML by Blue Cat Audio