3.5
Table Of Contents
- Contents
- Effects overview
- Amps and pedals
- MainStage Amps and Pedals overview
- Amp Designer
- MainStage Amp Designer overview
- MainStage Amp Designer models
- MainStage Amp Designer cabinets
- Build a custom MainStage Amp Designer combo
- MainStage Amp Designer amplifier controls
- MainStage Amp Designer EQ overview
- MainStage Amp Designer effects overview
- MainStage Amp Designer reverb effect
- MainStage Amp Designer tremolo and vibrato
- MainStage Amp Designer microphone parameters
- Bass Amp Designer
- MainStage Bass Amp Designer overview
- MainStage Bass Amp Designer amplifier models
- MainStage Bass Amp Designer cabinet models
- Build a MainStage Bass Amp Designer combo
- MainStage Bass Amp Designer signal flow
- MainStage Bass Amp Designer Pre-amp flow
- Use the MainStage Bass Amp Designer D.I. box
- MainStage Bass Amp Designer amplifier controls
- MainStage Bass Amp Designer effects overview
- MainStage Bass Amp Designer EQ
- MainStage Bass Amp Designer compressor
- MainStage Bass Amp Designer Graphic EQ
- MainStage Bass Amp Designer Parametric EQ
- MainStage Bass Amp Designer mic parameters
- Pedalboard
- MainStage Pedalboard overview
- Use the MainStage Pedalboard Browser
- Use MainStage Pedalboard import mode
- Use the MainStage Pedalboard Pedal area
- Use the MainStage Pedalboard Router
- Notes on Splitter utility and Mixer utility use
- Create a second bus routing
- Remove the second bus routing
- Remove an effect from the second bus
- Determine the split point between busses
- Switch between a Splitter utility and a bus split point
- Change a Mixer utility position in the Pedal area
- Change a Splitter utility position in the Pedal area
- Use MainStage Pedalboard Macro Controls
- MainStage Pedalboard distortion pedals
- MainStage Pedalboard pitch pedals
- MainStage Pedalboard modulation pedals
- MainStage Pedalboard delay pedals
- MainStage Pedalboard filter pedals
- MainStage Pedalboard dynamics pedals
- MainStage Pedalboard utility pedals
- Delay effects
- MainStage Delay effects overview
- Delay Designer
- MainStage Delay Designer overview
- MainStage Delay Designer main display
- Use the MainStage Delay Designer Tap display
- Create MainStage Delay Designer taps
- Edit MainStage Delay Designer taps
- Edit in the MainStage Delay Designer Tap display
- MainStage Delay Designer Tap parameter bar
- Use MainStage Delay Designer sync mode
- MainStage Delay Designer master parameters
- MainStage Echo
- Loopback
- MainStage Loopback overview
- Add a Loopback instance in MainStage
- MainStage Loopback interface
- MainStage Loopback waveform display
- MainStage Loopback transport and function controls
- MainStage Loopback information display
- MainStage Loopback Sync, Snap To, and Play From parameters
- Use the MainStage Loopback group functions
- MainStage Loopback Action menu
- MainStage Sample Delay
- MainStage Stereo Delay
- MainStage Tape Delay
- Distortion effects
- Dynamics processors
- MainStage Dynamics processors overview
- MainStage Adaptive Limiter
- Compressor
- MainStage DeEsser 2
- MainStage Enveloper
- MainStage Expander
- MainStage Limiter
- Multipressor
- Noise Gate
- Equalizers
- MainStage Equalizers overview
- Channel EQ
- Linear Phase EQ
- Match EQ
- MainStage Single-Band EQ
- Vintage EQ Collection
- Filter effects
- MainStage Filter effects overview
- AutoFilter
- EVOC 20 Filterbank
- EVOC 20 TrackOscillator
- MainStage EVOC 20 TrackOscillator overview
- Vocoder overview
- MainStage EVOC 20 TrackOscillator interface
- MainStage EVOC 20 TrackOscillator analysis in controls
- MainStage EVOC 20 TrackOscillator U/V detection controls
- MainStage EVOC 20 TrackOscillator Synthesis in controls
- MainStage EVOC 20 TrackOscillator oscillator controls
- MainStage EVOC 20 TrackOscillator oscillator pitch controls
- MainStage EVOC 20 TrackOscillator formant filter
- MainStage EVOC 20 TrackOscillator modulation
- MainStage EVOC 20 TrackOscillator output controls
- Fuzz-Wah
- Spectral Gate
- Imaging processors
- Metering tools
- MainStage Metering tools overview
- MainStage BPM Counter
- MainStage Correlation Meter
- MainStage Level Meter
- MainStage Loudness Meter
- MultiMeter
- MainStage Tuner utility and plug-in
- MIDI plug-ins
- Use MIDI plug-ins in MainStage
- Arpeggiator MIDI plug-in
- MainStage Arpeggiator MIDI plug-in overview
- MainStage Arpeggiator MIDI plug-in control parameters
- MainStage Arpeggiator MIDI plug-in note order parameters
- MainStage Arpeggiator MIDI plug-in note order variations
- MainStage Arpeggiator MIDI plug-in note order inversions
- MainStage Arpeggiator MIDI plug-in pattern parameters
- MainStage Arpeggiator MIDI plug-in Live mode
- MainStage Arpeggiator MIDI plug-in Grid mode
- MainStage Arpeggiator MIDI plug-in options parameters
- MainStage Arpeggiator MIDI plug-in keyboard parameters
- Use MainStage Arpeggiator MIDI plug-in keyboard parameters
- Resize the Arpeggiator MIDI plug-in keyboard display
- Set up a keyboard split in the Arpeggiator MIDI plug-in
- Resize the Arpeggio or Remote zone in the Arpeggiator MIDI plug-in
- Move the Arpeggio or Remote zone in the Arpeggiator MIDI plug-in
- Remote control the Arpeggiator MIDI plug-in with a MIDI keyboard
- Assign MainStage Arpeggiator controllers
- Chord Trigger MIDI plug-in
- MainStage Modifier MIDI plug-in
- Modulator MIDI plug-in
- MainStage Note Repeater MIDI plug-in
- MainStage Randomizer MIDI plug-in
- Scripter MIDI plug-in
- Use the MainStage Scripter MIDI plug-in
- Use the MainStage Scripter MIDI plug-in Script Editor
- MainStage Scripter MIDI plug-in API overview
- MainStage Scripter MIDI plug-in MIDI processing functions
- MainStage Scripter MIDI plug-in HandleMIDI function
- MainStage Scripter MIDI plug-in ProcessMIDI function
- MainStage Scripter MIDI plug-in GetParameter function
- MainStage Scripter MIDI plug-in SetParameter function
- MainStage Scripter MIDI plug-in ParameterChanged function
- MainStage Scripter MIDI plug-in Reset function
- JavaScript objects overview
- Use the JavaScript Event object
- Use the JavaScript TimingInfo object
- Use the Trace object
- Use the MIDI event beatPos property
- Use the JavaScript MIDI object
- Create MainStage Scripter MIDI plug-in controls
- MainStage Transposer MIDI plug-in
- Velocity Processor MIDI plug-in
- Modulation effects
- MainStage Modulation effects overview
- MainStage Chorus effect
- MainStage Ensemble effect
- MainStage Flanger effect
- MainStage Microphaser
- MainStage Modulation Delay
- MainStage Phaser effect
- Ringshifter
- Rotor Cabinet effect
- MainStage Scanner Vibrato effect
- MainStage Spreader
- MainStage Tremolo effect
- Multi Effects
- MainStage Multi Effects overview
- Phat FX
- Step FX
- Remix FX
- Pitch effects
- Reverb effects
- MainStage Reverb effects overview
- ChromaVerb
- MainStage EnVerb
- MainStage SilverVerb
- Space Designer convolution reverb
- MainStage Space Designer overview
- MainStage Space Designer interface
- Use impulse responses in MainStage
- Space Designer envelopes and EQ
- Space Designer global parameters
- Specialized effects
- Utilities and tools
- Legacy effects
- MainStage Legacy effects overview
- MainStage Legacy AVerb
- MainStage Legacy Bass Amp
- MainStage Legacy DeEsser
- Denoiser
- MainStage Legacy Ducker
- EQ
- GoldVerb
- MainStage Legacy Grooveshifter
- Guitar Amp Pro
- MainStage Legacy Guitar Amp Pro overview
- MainStage Legacy Guitar Amp Pro amplifier models
- MainStage Legacy Guitar Amp Pro cabinet models
- MainStage Legacy Guitar Amp Pro EQ
- MainStage Legacy Guitar Amp Pro amplifier controls
- MainStage Legacy Guitar Amp Pro effects
- MainStage Legacy Guitar Amp Pro mic parameters
- PlatinumVerb
- MainStage Legacy Silver Compressor
- MainStage Legacy Silver Gate
- MainStage Legacy Speech Enhancer
201MainStage Effects
Create and store a Scripter plug-in
1. In MainStage, open the Scripter plug-in.
2. Click the Open Script In Editor button.
3. Type (or copy and paste existing) JavaScript code in the Code Editor.
4. Click the Run Script button.
5. Test your plug-in to verify it behaves as intended.
6. Assuming no errors are shown in the Interactive Console, save the host document,
setting, or patch containing the script.
MainStage Scripter MIDI plug-in API overview
You can create your own MIDI processing plug-ins using the JavaScript API described in
these sections.
• MainStage Scripter MIDI plug-in MIDI processing functions
• JavaScript objects overview
• Create MainStage Scripter MIDI plug-in controls
View the supplied Tutorial scripts in the Script Editor to see how they are constructed. You
can modify and re-use the code to change functions or to create new processors. See Use
the MainStage Scripter MIDI plug-in Script Editor.
Note: The supplied Tutorial scripts may vary slightly from the code examples shown in
this documentation, due to post-publication changes in the JavaScriptCore framework or
the Scripter plug-in. Please always use and refer to comments shown in the most recent
Tutorial scripts and JavaScriptCore framework.
MainStage Scripter MIDI plug-in MIDI processing functions
The Scripter plug-in exposes a set of JavaScript functions that you can implement in your
script to communicate with MainStage. See these sections for details about different
JavaScript function types and how to use them to create MIDI plug-ins.
• MainStage Scripter MIDI plug-in HandleMIDI function
• MainStage Scripter MIDI plug-in ProcessMIDI function
• MainStage Scripter MIDI plug-in GetParameter function
• MainStage Scripter MIDI plug-in SetParameter function
• MainStage Scripter MIDI plug-in ParameterChanged function
• MainStage Scripter MIDI plug-in Reset function
MainStage Scripter MIDI plug-in HandleMIDI function
The HandleMIDI() function lets you process MIDI events that the plug-in receives.
HandleMIDI is called each time a MIDI event is received by the plug-in and is required in
order to process incoming MIDI events. If you don’t implement the HandleMIDI function,
events pass through the plug-in unaffected.