Logic
Control flow and conditional behaviour in Oscilla scores.
Overview
The Logic system enables scores to make decisions based on real-time signal values, creating responsive and adaptive notation that reacts to performer input, audio analysis, or external control data.
Features
Conditional Triggering
Use the if: parameter to gate any cue based on signal conditions:
audio(src:hit.wav, if:fader1.t>0.7)
nav(target:B, if:mic.amp>=0.5)
Audio Analysis
Analyze live microphone input and use audio features as control signals:
scale(dur:0.5, if:mic.onset>0.8)
fade(target:glow, to:1, if:mic.amp>0.6)
nav(target:bright, if:mic.centroid>0.7)
Signals: mic.amp, mic.peak, mic.centroid, mic.onset, mic.low, mic.mid, mic.high, mic.pitch, mic.note, mic.pitchConf
Future Directions
- State machines - Named states with transition conditions
- Branching cues -
conditional(if:..., then:..., else:...)
Tip: use ← → or ↑ ↓ to navigate the docs