Description
Advanced snapshot management plugin for Q-SYS. Save and recall control states across multiple components with flexible scene organization, per-control value overrides, and smooth ramped transitions.
Unlike standard snapshot banks where all controls are recalled for every snapshot, Super Snapshot lets you choose exactly which controls are included in each scene. Scene 1 can recall TV input and lights, while Scene 2 recalls only the TV input — no need for separate snapshot banks.
Configuration happens while the design is running. Add or remove components and controls without going offline.
This plugin requires components to have Script Access enabled in order to read and write their control values.
Key Features
Online Configuration — Modify scene content while the design is running
Multi-Scene Management — Create up to 64 scenes with custom names and independent control configurations
Component-Based Organization — Add any Q-SYS component and selectively include specific controls per scene
Per-Control Values — Override saved values with custom entries for precise scene configuration
Ramped Transitions — Smooth crossfades between scenes with configurable ramp time
Write Protect — Three levels of write protect, scenes, components and controls
Configuration Export/Import — Backup and restore complete scene configurations via JSON
Properties
Snapshot Count
Type: integer
Min: 1
Max: 64
Default Value: 8
Description: Number of scenes available in the plugin.
Live Match
Type: enum
Choices: Yes, No
Default Value: No
Description: Keeps the Match indicators (per-scene and global) accurate even when a control's value is changed from outside the plugin, instead of only re-checking on Save, Load, or a configuration edit.
Enabling this subscribes an event handler to every control configured across every scene. On designs with many scenes and controls, this uses more Core resources. Leave this set to No unless live matching is required.
Matching is debounced: control changes set an internal flag, and a timer checks it every 0.5 seconds before recalculating. Match indicators may lag up to 0.5 seconds behind an external value change.
Subscriptions are automatically cleared and reconnected whenever scenes, components, or controls are added, removed, or the configuration is imported.
Debug Print
Type: enum
Choices: None, Editor Only, Scenes Only, Function Calls, All
Default Value: None
Description: Level of debug information printed to console. Editor Only prints configuration changes, Scenes Onlyprints scene save/load activity, Function Calls prints function entry calls, and All prints all debug categories.
Show Debug
Type: enum
Choices: Yes, No
Default Value: No
Description: Show/Hide the debug window.
Controls
Status
Controls name: Status
Type: Indicator-Status
Pin Style: Output
Pin Name: Status
Description: Displays the plugin's operational status. Reports Compromised when a scene references a missing component or control.
OK
Compromised - Scenes #3-4 require attention
Controls Page
Global Controls
Ramp Time
Controls name: ramp.time
Type: Knob-Seconds
Min: 0
Max: 60
Pin Style: Input / Output
Pin Name: Controls~Ramp Time
Description: Transition duration in seconds when loading scenes. Set to 0 for instant recall.
Load Prev
Controls name: load.prev
Type: Button-Trigger
Pin Style: Input / Output
Pin Name: Controls~Load Prev
Description: Load the previous scene in sequence. Wraps to last scene when at scene 1. If no scene has been loaded yet, it also loads the last scene.
Load Next
Controls name: load.next
Type: Button-Trigger
Pin Style: Input / Output
Pin Name: Controls~Load Next
Description: Load the next scene in sequence. Wraps to scene 1 when at the last scene. If no scene has been loaded yet, it loads scene 1.
Match
Controls name: match
Type: Indicator-Text
Pin Style: Output
Pin Name: Controls~Match
Description: Displays the scene numbers that currently match the live design. When more than one scene matches, the values are shown as a comma-separated list.
Match Name
Controls name: match.name
Type: Indicator-Text
Pin Style: Output
Pin Name: Controls~Match Name
Description: Displays the names of the matching scene(s), in the same order as match.
Last
Controls name: last
Type: Indicator-Text
Pin Style: Output
Pin Name: Controls~Last
Description: Displays the number of the last loaded scene.
Last Name
Controls name: last.name
Type: Indicator-Text
Pin Style: Output
Pin Name: Controls~Last Name
Description: Displays the name of the last loaded scene.
Scene Controls
Repeated for each scene (based on the Snapshot Count property). Scenes that have not been created via the Editor pageare disabled.
Scene Name
Controls name: name.n
Type: Indicator-Text
Pin Style: Output
Pin Name: Controls~n~Name
Description: Displays the name of the scene at this position. Edit the name from the Name field on the Scene Editor page.
Press and Hold
Controls name: presshold.n
Type: Button-Momentary
Pin Style: Input / Output
Pin Name: Controls~n~Press Hold
Description: Recall scene on short press, Save scene on long press.
Save when the timer reaches the settings.presshold value.
Recall on button release if the press duration did not reach the configured value.
Load
Controls name: load.n
Type: Button-StateTrigger
Pin Style: Input / Output
Pin Name: Controls~n~Load
Description: Recall all saved control values for this scene with the configured ramp time.
This button's state (Value = 1) reflects whether the scene is currently active, per the settings.loadbehavior (Load Active Behavior) setting: either the last loaded scene, or a scene whose values currently match the live design.
Save
Controls name: save.n
Type: Button-Trigger
Pin Style: Input / Output
Pin Name: Controls~n~Save
Description: Capture current control values from all configured components into this scene. The button is disabled when the scene is write-protected.
This button is disabled when Write Protect is enabled for the associated scene.
If Write Protect is enabled on specific components or controls within the scene, the scene can still be saved, but protected values will be preserved.
Last
Controls name: last.n
Type: Indicator-Led
Pin Style: Output
Pin Name: Controls~n~Last
Description: Illuminates when this scene was the most recently loaded.
Match
Controls name: match.n
Type: Indicator-Led
Pin Style: Output
Pin Name: Controls~n~Match
Description: Illuminates when current control values match the saved values for this scene.
Scene Editor Page
Scenes
Scenes List
Controls name: setup.scenes.list
Type: Text-ListBox
Pin Style: None
Pin Name: None
Description: Displays all scenes with their number and name. Select a scene to configure its components and controls below. Columns show:
Scene Index
Scene Name
Scene Count
Controls name: setup.scenes.count
Type: Indicator-Text
Pin Style: None
Pin Name: None
Description: Shows current scene count and total count (e.g., 4/8).
Up
Controls name: setup.scenes.up
Type: Button-Trigger
Pin Style: None
Pin Name: None
Description: Reorder selected scene in the list.
Down
Controls name: setup.scenes.down
Type: Button-Trigger
Pin Style: None
Pin Name: None
Description: Reorder selected scene in the list.
Duplicate
Controls name: setup.scenes.duplicate
Type: Button-Trigger
Pin Style: None
Pin Name: None
Description: Create a copy of the selected scene with all its components and control configurations.
New
Controls name: setup.scenes.new
Type: Button-Trigger
Pin Style: None
Pin Name: None
Description: Create a new empty scene at the end of the list.
Delete
Controls name: setup.scenes.delete
Type: Button-Trigger
Pin Style: None
Pin Name: None
Description: Remove the selected scene. Cannot delete locked scenes.
Selected Scene
Scene Status
Controls name: setup.selected.status
Type: Indicator-Status
Pin Style: None
Pin Name: None
Description: Displays the status of the currently selected scene.
Shows OK when all required components are present and configured correctly.
Shows Compromised if any elements are missing or invalid, displays the name of the missing control or component.
Scene Number
Controls name: setup.selected.number
Type: Indicator-Text
Pin Style: None
Pin Name: None
Description: Read-only display of the selected scene's index number.
Name
Controls name: setup.selected.name
Type: Text-Textbox
Pin Style: None
Pin Name: None
Description: Editable name for the selected scene.
Protect
Controls name: setup.selected.protect
Type: Button-Toggle
Pin Style: None
Pin Name: None
Description: Toggle save protection for the selected scene — prevents the scene from being overwritten until unlocked.
Named Components
Component Selector
Controls name: setup.components.selector
Type: Text-ComboBox
Pin Style: None
Pin Name: None
Description: Dropdown list of all available components in the design.
Add
Controls name: setup.components.add
Type: Button-Trigger
Pin Style: None
Pin Name: None
Description: Add the selected component to the scene's component list.
Component List
Controls name: setup.components.list
Type: Text-ListBox
Pin Style: None
Pin Name: None
Description: Displays all components added to the selected scene. Columns show:
Component Name
Controls Count
Long displayed values are shortened in the list: component names show the first 23 characters before ..., and controls counts show the first 13 characters before .... A space separates the name and count columns.
Protect
Controls name: setup.components.protect
Type: Button-Toggle
Pin Style: None
Pin Name: None
Description: Toggle save protection for the selected component — prevents the component from being overwritten until unlocked.
This control is disabled when Scene Protect is enabled.
Import All
Controls name: setup.components.importall
Type: Button-Trigger
Pin Style: None
Pin Name: None
Description: Automatically add all controls from the selected component to the Controls Configuration list.
All imported controls are added using their current values.
Delete
Controls name: setup.components.delete
Type: Button-Trigger
Pin Style: None
Pin Name: None
Description: Remove the selected component from the scene.
This button is disabled when Write Protect is enabled on the scene or on the selected component.
Controls Configuration
Control Selector
Controls name: setup.controls.selector
Type: Text-ComboBox
Pin Style: None
Pin Name: None
Description: Dropdown list of available controls on the selected component. Read-only controls are excluded.
The selected control is added with its current value.
Add
Controls name: setup.controls.add
Type: Button-Trigger
Pin Style: None
Pin Name: None
Description: Add the selected control to the configuration list.
Controls List
Controls name: setup.controls.list
Type: Text-ListBox
Pin Style: None
Pin Name: None
Description: Displays all controls configured for the selected component. Columns show:
Controls Name
Controls Value
Long displayed values are shortened in the list: control names show the first 23 characters before ..., and control values show the first 13 characters before .... A space separates the name and value columns.
Trigger controls display a blank value in this list.
Delete
Controls name: setup.controls.delete
Type: Button-Trigger
Pin Style: None
Pin Name: None
Description: Remove the selected control from the configuration.
This button is disabled when Write Protect is enabled on the scene, the selected component, or the selected control.
Protect
Controls name: setup.controls.protect
Type: Button-Toggle
Pin Style: None
Pin Name: None
Description: Toggle save protection for the selected control — prevents the control from being overwritten until unlocked.
This control is disabled when Component Protect or Scene Protect is enabled.
Value
Controls name: setup.controls.value
Type: Text-Textbox
Pin Style: None
Pin Name: None
Description: Edit value for the selected control.
Available for knob controls and text controls without choices; hidden otherwise.
This control reverts to the previous value if the user input is invalid.
For knobs, this control uses min/max validation.
Choices
Controls name: setup.controls.choices
Type: Text-ComboBox
Pin Style: None
Pin Name: None
Description: Dropdown populated with available choices from the selected control.
Available on text controls with choices and on Boolean controls; disabled otherwise.
Settings Page
Global Settings
Auto-load scene on startup
Controls name: settings.autoload
Type: Text-ComboBox
Pin Style: Input / Output
Pin Name: Settings~Auto Load
Description: Select a scene to be automatically recalled when the plugin initializes. Choose None to disable automatic scene recall.
Press Hold Save Duration (Seconds)
Controls name: settings.presshold
Type: Knob-Integer
Min: 1
Max: 10
Pin Style: Input / Output
Pin Name: Settings~Press Hold
Description: Defines how long a scene button must be pressed and held before the current scene is saved.
Load Active Behavior
Controls name: settings.loadbehavior
Type: Text-ComboBox
Choices: Last, Match, Disabled
Default Value: Match
Pin Style: Input / Output
Pin Name: Settings~Load Active Behavior
Description: Controls when a scene's load.n button reports itself as active (Value = 1).
Last — The scene that was most recently loaded is reported as active.
Match — Any scene whose configured control values currently match the live design is reported as active. With Live Match disabled, this only updates after a Save, Load, or configuration change.
Disabled — No scene is ever reported as active; load.n always reports Value = 0.
Log
Create log entry on scene load
Controls name: settings.log.load
Type: Button-Toggle
Pin Style: Input / Output
Pin Name: Settings~Log Load
Description: When enabled, a log entry is created each time a scene is successfully loaded. The log entry includes the scene number, scene name, and the time the load operation occurred.
Create log entry on scene save
Controls name: settings.log.save
Type: Button-Toggle
Pin Style: Input / Output
Pin Name: Settings~Log Save
Description: When enabled, a log entry is created each time a scene is successfully saved. The log entry includes the scene number, scene name, and the time the save operation occurred.
Configuration Import & Export
JSON Configuration
Controls name: config.json
Type: Text-Textbox
Pin Style: Input / Output
Pin Name: Settings~Configuration
Description: Complete plugin configuration in JSON format. Copy to backup all scenes, components, and control settings. Paste a valid JSON string to restore configuration.
User can use Search and Replace to match new component’s name via their preferred IDE.
