MainStage User Guide
- Welcome
-
- Overview of Edit mode
-
- Select patches and sets in the Patch List
- Copy, paste, and delete patches
- Reorder and move patches in the Patch List
- Add and rename patches
- Create a patch from several patches
-
- Overview of the Patch Settings Inspector
- Select patch settings in the Patch Library
- Set the time signature for patches
- Change the tempo when you select a patch
- Set program change and bank numbers
- Defer patch changes
- Instantly silence the previous patch
- Change patch icons
- Transpose the pitch of incoming notes for a patch
- Change the tuning for a patch
- Add text notes to a patch
-
- Overview of channel strips
- Add a channel strip
- Change a channel strip setting
- Configure channel strip components
- Show signal flow channel strips
- Hide the metronome channel strip
- Create an alias of a channel strip
- Add a patch bus
- Set channel strip pan or balance positions
- Set channel strip volume levels
- Mute and solo channel strips
- Use multiple instrument outputs
- Use external MIDI instruments
- Reorganize channel strips
- Delete channel strips
-
- Overview of the Channel Strip Inspector
- Choose channel strip settings
- Rename channel strips
- Change channel strip colors
- Change channel strip icons
- Use feedback protection with channel strips
- Set keyboard input for a software instrument channel strip
- Transpose individual software instruments
- Filter MIDI messages
- Scale channel strip velocity
- Set channel strips to ignore Hermode tuning
- Override concert- and set-level key ranges
- Add text notes to a channel strip in the Channel Strip Inspector
- Route audio via send effects
-
- Screen Control Inspector overview
- Replace parameter labels
- Choose custom colors for screen controls
- Change background or grouped screen control appearance
- Set screen controls to show the hardware value
- Set parameter change behavior for screen controls
- Set hardware matching behavior for screen controls
- Reset and compare changes to a patch
- Override concert- and set-level mappings
-
- Overview of mapping screen controls
- Map to channel strip and plug-in parameters
- Map screen controls to actions
- Map a screen control to multiple parameters
- Use screen controls to display PDF document pages
- Edit the saved value for a mapped parameter
- Set drum pads or buttons to use note velocity
- Map screen controls to all channel strips in a patch
- Undo screen control parameter mappings
- Remove screen control mappings
- Work with graphs
- Create controller transforms
- Share patches and sets between concerts
- Record the audio output of a concert
-
- Overview of concerts
- Create a concert
- Open and close concerts
- Save concerts
- How saving affects parameter values
- Clean up concerts
- Consolidate assets in a concert
- Rename the current concert
-
- Overview of the Concert Settings Inspector
- Set MIDI Routing to channel strips
- Transpose incoming note pitch for a concert
- Define the program change message source
- Send unused program changes to channel strips
- Set the time signature for a concert
- Change the tuning for a concert
- Set the pan law for a concert
- Add text notes to a concert
- Control the metronome
- Silence MIDI notes
- Mute audio output
-
- Layout mode overview
-
- Screen control parameter editing overview
- Lift and stamp screen control parameters
- Reset screen control parameters
- Common screen control parameters
- Keyboard screen control parameters
- MIDI activity screen control parameters
- Drum pad screen control parameters
- Waveform screen control parameters
- Selector screen control parameters
- Text screen control parameters
- Background screen control parameters
- How MainStage passes through MIDI messages
- Export and import layouts
- Change the aspect ratio of a layout
-
- Before performing live
- Use Perform mode
- Screen controls in performance
- Tempo changes during performance
- Tips for performing with keyboard controllers
- Tips for performing with guitars and other instruments
- Tune guitars and other instruments with the Tuner
- The Playback plug-in in performance
- Record your performances
- After the performance
- Tips for complex hardware setups
-
- Overview of keyboard shortcuts and command sets
-
- Concerts and layouts keyboard shortcuts
- Patches and sets (Edit mode) keyboard shortcuts
- Editing keyboard shortcuts
- Actions keyboard shortcuts
- Parameter mapping (Edit mode) keyboard shortcuts
- Channel strips (Edit mode) keyboard shortcuts
- Screen controls (Layout mode) keyboard shortcuts
- Perform in Full Screen keyboard shortcuts
- Window and view keyboard shortcuts
- Help and support keyboard shortcuts
-
-
- Use MIDI plug-ins
-
- Arpeggiator overview
- Arpeggiator control parameters
- Note order parameters overview
- Note order variations
- Note order inversions
- Arpeggiator pattern parameters overview
- Use Live mode
- Use Grid mode
- Arpeggiator options parameters
- Arpeggiator keyboard parameters
- Use keyboard parameters
- Assign controllers
- Modifier controls
- Note Repeater controls
- Randomizer controls
-
- Use Scripter
- Use the Script Editor
- Scripter API overview
- MIDI processing functions overview
- HandleMIDI function
- ProcessMIDI function
- GetParameter function
- SetParameter function
- ParameterChanged function
- 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 Scripter controls
- Transposer controls
-
-
- Alchemy overview
- Alchemy interface overview
- Alchemy Name bar
- Alchemy file locations
-
- Alchemy source overview
- Source master controls
- Import browser
- Source subpage controls
- Source filter controls
- Source filter use tips
- Source elements overview
- Additive element controls
- Additive element effects
- Spectral element controls
- Spectral element effects
- Pitch correction controls
- Formant filter controls
- Granular element controls
- Sampler element controls
- VA element controls
- Source modulations
- Morph controls
- Alchemy master voice section
- Alchemy Extended parameters
-
- Playback plug-in overview
- Add a Playback plug-in
- Playback interface
- Use the Playback waveform display
- Playback transport and function buttons
- Playback information display
- Playback Sync, Snap To, and Play From parameters
- Use the Playback group functions
- Use the Playback Action menu and File field
- Use markers with the Playback plug-in
-
- Sample Alchemy overview
- Interface overview
- Add source material
- Edit mode
- Play modes
- Source overview
- Synthesis modes
- Granular controls
- Additive effects
- Additive effect controls
- Spectral effect
- Spectral effect controls
- Filter module
- Low and highpass filter
- Comb PM filter
- Downsampler filter
- FM filter
- Envelope generators
- Mod Matrix
- Modulation routing
- Motion mode
- Trim mode
- More menu
-
- Sculpture overview
- Sculpture interface
- Global parameters
- Amplitude envelope parameters
- Use the Waveshaper
- Filter parameters
- Output parameters
- Define MIDI controllers
- Extended parameters
-
- Copyright
Alchemy sequencer in MainStage
Modulation components are shown only in advanced view. Click the Advanced button to switch to advanced view.
The sequencer module is a programmable step-based modulator that can play patterns of up to 128 steps that are synchronized with the project tempo. The level of each step, groove/swing, and envelope can be controlled globally for the pattern and per step.
Alchemy sequencer controls
Current sequencer pop-up menu and field: Access each Sequencer control panel by choosing a number from the pop-up menu or with the Previous and Next arrows. Alchemy provides up to 16 sequencers—one by default, but more if you create them when assigning modulators.
Trigger pop-up menu: Choose On to play the sequencer pattern from the beginning with each MIDI note-on. Off makes the sequencer run continuously. Voice On/FX Off modulates voice parameters only, not effects. The sequencer module is always synchronized with the MainStage tempo, regardless of the Trigger setting.
Note: Settings from earlier application versions may not behave as expected because of the additional trigger option. Change to VoiceOn/FX Off to match the former version behavior, then resave the setting.
Rate pop-up menu and field: Set the duration of every step in the sequencer pattern, expressed as a fraction of a beat. For example, assuming a quarter-note beat, a value of 1/2 produces eighth note steps and a value of 1/4 produces sixteenth note steps. You can also step through Rate values with the Previous and Next buttons (the arrows).
Value Snap pop-up menu and field: Quantize sequencer step values, limiting them to exact fractions of the available range. For example, a setting of 1/2 aligns bars to the values 0%, 50%, and 100% when dragged vertically. Off disables quantization, which lets you set step values freely. You can also step through available values with the Previous and Next buttons (the arrows).
Note: Value Snap doesn’t move existing step values into alignment with quantized positions; it only affects the response of step values when you move or create them in the step editor.
Edit Mode pop-up menu: Choose one of three edit modes. Your choice affects the appearance and behavior of the step editor to the right.
Value: View and edit the value of each step in the pattern.
Length: View and edit the length of each step in the pattern. Technically, you create a pattern of longer and shorter envelope shapes so that the attack, sustain (gate), and release stages fill a larger or smaller portion of the fixed step duration. These lengths are combined with the overall sequencer Attack/Gate/Release settings to determine the envelope shape of each step.
Swing: Create variations in the timing of steps. Each swing value ranges from 0 to 2; the middle value of 1 represents standard timing, while smaller values play earlier and larger values play later. These swing values are combined with the overall sequencer timing pattern set with the Swing knob.
File button: Open a pop-up menu with sequencer-related commands.
Preset submenu: Choose a preset sequencer configuration. This can be used as is, or as a starting point for your own sequences.
Save: Store the current sequencer configuration (step values, lengths, and swing settings plus the sequencer control settings) in a new disk file (*.seq). The new sequence name appears at the bottom of the Preset submenu.
Copy/Paste: Store the current sequencer configuration in the Clipboard. Paste applies the configuration currently found on the Clipboard.
Clear: Reset the sequencer controls and pattern to default settings.
Randomize: Apply random offsets to the Swing, Attack, Gate, and Release parameter values.
Import: See the Import data from a MIDI file task in this section.
Swing knob: Adjust timing to create swing effects. Values over 0% increase the duration of odd-numbered steps (1, 3, 5, and so on) while decreasing even-numbered step lengths.
Attack knob: Set the time required for each step to reach its peak level.
Hold knob: Set the amount of time each step is held at its peak level.
Release knob: Set the time required for each step to fall from its peak level to zero.
Step editor: Shows steps numbered from left to right across the top of the display. Steps are represented by vertical bars that you can edit directly. The appearance and behavior of the step editor is determined by the active Edit Mode menu choice.
Scroll bar: Drag the middle of the scroll bar to view steps that are not visible in the display area.
Use the Alchemy sequencer step editor
In Alchemy in MainStage, the step editor shows steps numbered from left to right across the top of the display. The appearance and behavior of the step editor is determined by the active Edit Mode menu choice. In the default Value mode, for example, the value of each step is represented by a vertical bar. A blank column is shown when the value is zero.
Drag a bar vertically to adjust its value, or click directly at the required height.
Set the values of multiple bars by dragging horizontally across them.
Option-click a bar to set it to zero.
Tie one step to the next by clicking below it. A small chain-link symbol appears below each tied step. When two or more steps are tied together, they behave like one longer step.
Import data from a MIDI file into the Alchemy sequencer
Alchemy can extract information from a short MIDI file and can apply this information to patterns in the step editor.
You can extract velocity data and set step values to match. If the MIDI file consists of notes of equal duration, such as a succession of eighth or sixteenth notes, every step in the resulting pattern will have an associated non-zero value. If the MIDI file consists mainly of notes of equal duration with occasional gaps, such as a succession of eighth notes with occasional eighth rests, the gaps are represented by step values of zero. If the MIDI file has irregular timing, or if it consists of chords rather than single notes, the results of this process are less predictable and usually less useful.
You can extract groove data (timing inflections) and set step swing values to match. If the MIDI file consists of nearly equal durations, such as eighth notes or sixteenth notes with timing inflections, this process yields useful results.
You can also extract note pitch data and set step values to match. The MIDI file should consist of equal durations with no gaps and should be limited to single pitches between a low C and a C two octaves higher. For example, a MIDI file could consist of notes C1 through C3, with the low C corresponding to a step value of zero. Because the pitch range is always two octaves, you should use the sequencer to modulate pitch with a depth of 24 semitones in order to reproduce the pattern of notes in the original MIDI file.
In Alchemy in MainStage, choose one of the following Import commands from the Sequencer File pop-up menu.
Import Velocity: Set step values based on extracted velocity data and swing values based on extracted groove data.
Import Note: Set step values based on extracted note data and swing values based on extracted groove data.
Import Groove: Set swing values based on extracted groove data.