Patching

Patching modules control how data flows through your patches: pass, stop, freeze, resample, detect changes, manage collections (queue, stack, list), handle polyphony, and configure patch behavior. They are the control logic layer of Usine.

Categories

Category Modules Description
Flow Gating 8 Pass, stop, freeze, and swap flows (single and multi-channel variants)
Flow Timing 6 Resample, wait (block delay), and rate conversion (audio/data rate)
Flow Detection 7 Detect changes, rising/falling edges, null flows, pass-if-changed, sample & hold, track & hold, toggle
Flow Collections 4 List, queue (FIFO), stack (LIFO), and circular buffer data structures
Patch Management 11 Bypass, on/off, comments, info editor, initialization/activation events, patch/rack numbers, password, internal messages
Polyphony 4 MIDI voice dispatcher, current voice number, poly array value, and sub-patch polyphony count

Flow Gating

Control whether flows pass through, are blocked, or are frozen at their current value.

Module Description
Flow Pass Let flow pass when enabled, block when disabled
Flow Pass Multi Multi-channel version of Flow Pass
Flow Stop Block flow when enabled (inverse of Flow Pass)
Flow Stop Multi Multi-channel version of Flow Stop
Flow Freeze Freeze flow at its current value when enabled
Flow Freeze Multi Multi-channel version of Flow Freeze
Flow Thru Pure pass-through (no processing)
Flow Thru Multi Multi-channel version of Flow Thru
Flow Swap Swap two flows: A becomes B and B becomes A

Flow Timing

Control when and how often flows are evaluated, and convert between audio and data rates.

Module Description
Flow Resample Resample flow at a configurable period
Flow Resample Multi Multi-channel version of Flow Resample
Flow Wait Delay flow by N calculation blocks
Flow Wait Multi Multi-channel version of Flow Wait
Flow to Audio Rate Convert data flow to audio block size
Flow to Data Rate Convert audio flow to single data value

Flow Detection

Detect changes, edges, null states, and conditionally pass or hold values.

Module Description
Flow Has Changed Output 1 when input value has changed, 0 otherwise
Flow Pass if Changed Only pass flow when value has changed
Flow Pass if Changed Multi Multi-channel version of Flow Pass if Changed
Flow From 0 to 1 Trigger on rising edge (0 to 1 transition)
Flow From 1 to 0 Trigger on falling edge (1 to 0 transition)
Flow Is NULL Detect if flow is null or zero-length
Flow Toggle Toggle output between on/off values on each trigger
Flow Sample Hold Capture and hold input value on trigger
Flow Track Hold Follow input when gate is on, hold when off

Flow Collections

Data structure containers for organizing and buffering flow values.

Module Description
Flow Collection List Ordered collection with insert, delete, and access by index
Flow Collection Queue FIFO buffer: push at back, pop from front
Flow Collection Stack LIFO buffer: push and pop from top
Flow Collection Circular Buffer Fixed-size ring buffer: oldest values overwritten when full

Patch Management

Configure patch behavior, add documentation, detect lifecycle events, and access patch/rack info.

Module Description
Patch Bypass Bypass patch calculation (audio and MIDI pass through)
Patch ON-OFF Enable or disable patch calculation to save CPU
Patch Comment Display a comment inside the patch editor (invisible in control panel)
Patch Info Editor Add help documentation to a patch (Markdown format)
Patch On Initialization Trigger when patch is calculated for the first time
Patch On Activation Trigger when patch is activated (engine start, rack activation)
Patch On DeActivation Trigger when patch is about to be deactivated
Patch Current Patch Number Get the patch's position number within its rack
Patch Current Rack Number Get the rack's position number within the workspace
Patch Password Protect Protect patch editor with a password
Patch Send Internal Message Send internal messages to Usine for dynamic patch creation

Polyphony

Manage polyphonic voices in sub-patches.

Module Description
Poly Voice Dispatcher MIDI Dispatch MIDI events to polyphonic voices (oldest-voice stealing, monophonic mode)
Poly Current Voice Number Get the current voice number in a polyphonic sub-patch
Poly Array Value Get the nth element of an array based on current voice number
Poly Sub-Patch Polyphony Get the polyphony count of the current sub-patch

See also

version 7.0.250121

Edit All Pages