Difference between revisions of "Zynthian UI User's Guide - Oram"
Line 23: | Line 23: | ||
* '''Special Chain''' => It can contains special processors, a MOD-UI pedalboard or a Pure Data patch. It can process audio and MIDI. | * '''Special Chain''' => It can contains special processors, a MOD-UI pedalboard or a Pure Data patch. It can process audio and MIDI. | ||
<br> | <br> | ||
− | |||
The chain's type can't be changed after creating the chain. Depending of the chain's type, MIDI processors can be added to the start of the chain and audio processors can be added to the end of the chain. Processors can subsequently be moved along the chain. | The chain's type can't be changed after creating the chain. Depending of the chain's type, MIDI processors can be added to the start of the chain and audio processors can be added to the end of the chain. Processors can subsequently be moved along the chain. | ||
Revision as of 09:44, 30 July 2024
1 Introduction
2 Basic concepts
2.1 Chains & Processors
The fundamental building block of Zynthian sound architecture is the processor. A processor generates or manipulates an audio or MIDI signal. Zynthian includes over 1000 processors to choose from.
Processors are grouped together and interconnected within chains. Chains are a key concept in Zynthian. The first thing you will do after powering-on your Zynthian, once you stop celebrating your success, is creating a chain and adding some processor to it. It does little without any chains!.
Processors may be positioned within the chain in series or in parallel with other processors. The quantity of series or parallel processors is only limited by available processing power. The last audio slot feed a stereo mixer (with typical mixer strip controls: pan/balance, mute, solo, fader, phase reverse, M+S). Audio processors may be positioned pre-fader or post-fader.
The audio and MIDI signals are routed (connected) between physical inputs, chain inputs, chain outputs and physical outputs. This provides a lot of flexibility whilst maintaining a simple, chain-based approach to signal routing.
2.1.1 Type of chains
When you create a chain, you must choose a type for it:
- Synth Chain => Receives MIDI note-events and generate audio output. It must have a synth processor.
- Audio Chain => Receives audio-input and generates audio-output. It only has audio-FX processors.
- MIDI Chain => Receives MIDI-input and generates MIDI-output. It only has MIDI processors.
- MIDI + Audio Chain => Receives MIDI + Audio input and generates MIDI + Audio output. It has MIDI and audio-FX processors.
- Generator Chain => Generate audio output using an algorithm. The first processor is an audio generator.
- Special Chain => It can contains special processors, a MOD-UI pedalboard or a Pure Data patch. It can process audio and MIDI.
The chain's type can't be changed after creating the chain. Depending of the chain's type, MIDI processors can be added to the start of the chain and audio processors can be added to the end of the chain. Processors can subsequently be moved along the chain.
Synth and MIDI chains must have a MIDI channel assigned. MIDI channels are not exclusive, so you can assign the same MIDI channel to several chains.
In MIDI+Audio chains, all audio processors in the chain receive all the MIDI events in the assigned channel. This is very convenient with some processors, like vocoder and auto-tune ones.
MIDI chains can be configured to receive all MIDI channels. This is specially useful when using zynthian as a MIDI router.
Note:
If Master Channel is enabled, this is excluded from the MIDI channels available for chain assignment.
2.2 Signal workflow
Zynthian workflow is based around chains of audio/MIDI generators & processors that feed an audio summing mixer and external MIDI devices.
2.3 MIDI input
Each chain receive MIDI input from selected devices (keyboards and other MIDI controllers). You can configure the MIDI input devices from the chain's option menu. Use short-push for selecting the devices and bold-push for changing the input mode. All input devices are selected by default when creating a new chain.
Each input device can work in 2 different modes:
- ACTI: the active chain receives all MIDI input from the device and all MIDI events are translated to the active chain's MIDI channel. It's the default mode for all input devices.
- MULTI: each chain receives MIDI from the input device in the configured MIDI channel. No MIDI channel translation is done.
When using ACTI mode you don't need to worry about the MIDI channel your keyboard/controller is using. You change the instrument you play by changing the active chain in your zynthian (see below).
In the other hand, MULTI mode allows receiving and managing separately every MIDI channel. Each MIDI controller will drive the chains assigned to the controller's MIDI channel. If you are using a MIDI controller that can sequence multiple tracks (Beatstep Pro, Keystep Pro, Novation Circuit etc.), you will generally want to use this mode.
Note:
Note that MIDI CC (Continuous Controllers) events are handled differently and they are not routed to chains. See section on MIDI Learning & binding.
2.3.1 Active Chain
The active chain is the chain currently selected. This is specially important when using the ACTI mode (the default mode!).
From the mixer, you can change the active chain by rotating the knob#4 or using the left/right arrowsrotating the SELECT knobtouching the chain's strip fader.
If you push the knob#4 or the SEL buttonSELECT knoblegend area under the chain's strip fader, you enter the chain control screen, what turns the chain active if it's not yet. From the control screen you can change the active chain using the left/right arrows.From the control screen you can short-push the LAYER knob to rotate the active chain.
Finally, you can also change the active chain by recalling ZS3s (subsnapshots).
2.3.2 Active MIDI channel
This global option can be toggled from the admin menu and it modifies the way ACTI mode works:
- Disabled: Only the active chain receive MIDI input from the device. It's the default.
- Enabled: All chains with the same MIDI channel that the active chain receive MIDI input from the device. This is very useful for layering sounds without any extra routing. You simply create several synth chains, assigning the same MIDI channel to all of them and they will play unison. You can also create keyboard splits with by adjusting note range and transpose for each chain from the chain options menu.
2.4 Snapshots
A snapshot is the captured state of a zynthian device at the time of saving the snapshot. Snapshots are saved in a JSON file with .zss extension and can be restored at any time, what effectively restore the state of the zynthian device when the snapshot was saved. A snapshot include chains and processor state info, patterns, mixer settings, MIDI device configuration, routing, audio levels, configuration options, etc. Each time you save a snapshot file, a backup copy is created. Of course, these backup files can be also restored at any time, what can avoid much suffering.
Note:
Many zynthian users like to see snapshots as "zynthian project" files and it's not a a bad approach.
2.5 Sub-snapshots: ZS3
ZS3 means Zynthian Sub-SnapShot. A ZS3 is a partial state that is stored in memory and can be recalled very fast. ZS3s can be easily associated (learned) to MIDI Programs (program change events). Of course, all ZS3s are saved/restored with snapshots.
For instance, if you are keyboardist that plays with several bands, you could have a snapshot for each band and one or several ZS3s for each song.
TO BE CONTINUED ...
3 The physical interface
3.1 Description
The V5 physical user interface is composed of:
- 5x4 silicone push button grid with RGB-LED feedback
- 5 inch display with capacitive touch
- 4 infinite knobs (rotary encoders) with push switches
The 20 silicone push buttons and the 4 knobs with switches are the primary user input mechanism to navigate the UI:
- access the different screens
- select options on menus and lists
- adjust parameters
Each push button is engraved with a text legend or icon and backlit with RGB LED that gives status feedback. The knobs are numbered from top to bottom, so the top one is knob#1 and the bottom one is knob#4. We will refer knobs in this way throughout this guide.
The V4 physical user interface is composed of:
- 3,5 inch display with resistive touch
- 4 infinite knobs (rotary encoders) with push switches
- 4 silicone push buttons
The four knobs with switches are the primary user input mechanism to navigate the UI:
- access the different screens
- select options on menus and lists
- adjust parameters
The barebones user interface is composed of a display with capacitive touch or mouse. A minimum display size of 5 inches is strongly advised when touch is the primary user input method.
3.2 User interaction
Users interact with the system by pushing the silicone buttons or knob-switches or rotating the knobs. Touch can be used too for most operations and some interactions are only available from the touch interface, like the X-Y control ala kaos pad. Users interact with the system by touching/clicking the display elements and performing touch/mouse gestures, like horizontal or vertical swipes, pitch-zoom, etc. User actions normally produce some feedback in the display. Also, the V5's RBG LEDs give feedback and status info.
3.3 Types of push action
There are 3 types of push actions that can be performed, depending on how long you hold down the button, knob-switch or display widget:
- short-push: Less than 0.3 seconds
- bold-push: Between 0.3 and 2 seconds
- long-push: More than 2 seconds (until the long-action is triggered!)
You can change the timings from the webconf's UI options tab. Not all buttons have actions assigned to all three push types. You can modify the assigned actions from the webconf tool, accessing the advanced options in the wiring layout section.
3.4 Using the push buttons
The V5 push buttons grid is divided in 5 groups:
Screen access buttons
Screen access buttons are outlined on green in the image. Most of these buttons have 2 different functions assigned to them, with a horizontal line separating the two function labels. The primary function is printed at the top and the secondary function is printed at the bottom. The "metronome" button is the exception to this and has a single function assigned to it. Well, not exactly, as it's the Tap-Tempo button too (try it!).
LED color depends on current selection:
- when the primary function is selected, the button lights green.
- when the secondary function is selected, the button lights orange.
- when none of the button's functions are selected, the button lights blue.
A short-push on the button will:
- select primary function, when none of the button's functions is selected
- select secondary function, when button's primary function is selected
A bold-push on the button will always access the secondary function, not matter what is currently selected.
For instance, if you are in the mixer screen and short-push the OPT/ADMIN button, the Chain menu will be opened. If you short-push it again, the Admin menu will be opened. Then, if you bold-push the MIX/LEVEL button, the Audio Levels screen will be opened. You click "metronome" button and the Tempo screen will be opened. If you tap-it several times, tempo will be adjusted, e.g. tap twice per second to set tempo to 120BPM.
Screen access buttons are, from left to right and top to bottom:
- OPT/ADMIN
- Options or Menu: Contextual. Click several times to reach the main menu.
- Admin menu
- MIX/LEVEL
- Mixer
- Audio Levels
- CTRL/PRESET
- Chain Control (Instrument)
- Preset/Bank
- ZS3/SNAPSHOT
- SubSnapShots (ZS3s)
- Snapshots
- METRONOME
- Tempo screen / Tap-Tempo
- PAD/STEP
- Scene (ZynPad)
- Pattern
- Arranger => Keep pressed to open!
Some buttons have a tertiary function assigned to long-push:
- OPT/ADMIN => Long-push to power off.
- CTRL/PRESET => Long-push to enter/leave preset favorites
- PAD/STEP => Long-push to access Arranger
ALT button
The ALT button toggles the alternate function mode. When you click it, ALT button and buttons having an alternate function will change their default color from blue to purple. Currently only transport and custom buttons (F1-F4) have alternate function:
- Transport buttons will toggle between Audio Player/Recorder (normal) and MIDI Player/Recorder (alternate).
- Customizable F1-F4 buttons will toggle between Program Change 1-4 (normal) and Program Change 5-8 (alternate), so you can use it for easily learning and recalling up to 8 subsnapshots (ZS3s).
Transport buttons
By default, transport buttons control the global audio recorder/player and default color is blue. When "ALT" button is pushed (ALT mode enabled), transport buttons control the MIDI recorder/player and default color is purple.
- short-push the record button (solid circle) to start/stop a recording. When a recording is in progress, the record button lights red and you should also see the rec icon in the display status area, at top-right.
- short-push the play button (solid triangle) to play/pause the currently selected track. The last recorded track is selected by default. When a track is being played, the play button lights green. After pausing, pushing again will resume the playing in the point it was paused.
- bold-push the play button to open the track list. After selecting a track, the audio player control screen will be shown.
- short-push the stop button (solid square) to stop playing a track and rewind. Pushing play again will start playing from the beginning.
- bold-push the stop button to stop all sounds, including any audio/midi track and sequences.
In some screens, transport buttons have specific (contextual) functionality. When this happens, they will light orange to help you to remember their normal behaviour is altered. The screens that have specific transport functionality are:
Pattern editor screen
From pattern editor screen, transport buttons are used to control pattern recording/playing. Note that for recording a pattern, you may want to start playing before recording, so notes are captured live in the time grid. If not, notes are captured step by step. While recording, pressing the back button may be used to undo the last recording.
Audio-player chain
From the control screen of an audio-player chain, transport buttons are used to control recording/playing of the chain's audio-player (instead of global audio-player).
From all other screens, transport buttons behave normally as explained above, controlling global audio recorder/player or MIDI recorder/player (ALT mode).
Navigation buttons
Navigation buttons are used for basic navigation:
- Up/Down arrow buttons:
- Browsing lists and menus.
- Moving cursor (selected item) vertically in pattern editor, zynpad, etc.
- Left/Right arrow buttons:
- Selecting active chain in audio mixer and control screen.
- Moving cursor (selected item) horizontally in pattern editor, zynpad, etc.
- Select/Yes button:
- Selecting items in lists and menus.
- Entering select mode in control screen for browsing controller pages.
- Adding/removing notes in pattern editor.
- Playing/Stopping sequences in zynpad.
- Answering "Yes" in confirmation dialogs.
- Back/No button:
- Closing current screen, returning to previous screen.
- Answering "No" in confirmation dialogs.
Note:
When not in the control screen, knob#4 acts as the select knob similar to the classic V1-V4 UI. Rotate to browse lists and move the cursor horizontally in grids (zynpad, pattern editor, etc.). Push to select items, same than SELECT button. Knob#3 can be used to move the cursor vertically in grids (zynpad, pattern editor, etc.).
Custom function buttons (F1-F4)
These buttons are considered to be customizable buttons, e.g. if you want direct access to other screens, etc. you may reconfigure these buttons using the webconf's wiring layout tab.
As explained above, while describing the ALT-mode, these buttons are assigned by default to MIDI Program Change messages:
- Normal mode: Program Change 1-4
- ALT mode: Program Change 5-8
This default configuration is fine for learning/recalling subsnapshots (ZS3) and you may find this really useful if you use your zynthian as a keyboard expander.
Note:
Although all buttons and switches are fully configurable from the webconf tool (hardware->wiring->advanced), this guide refers to the official V5 profile configuration, that matches printed button legends. Of course, you are very welcome to experiment with button assignment and try different configurations. In fact, if you reach a sweet point, we may be able to produce an alternative keypad with custom printings. Simply contact us at the zynthian forum!
This is the basic V4 workflow based in the 4 knob switches:
It's a good cheat sheet to have at hand when starting with zynthian. These screens and others will be discussed in detail along the next sections.
The V4's extra silicone push buttons (S1-S4) can be configured depending of the user preference. This can be done from the webconf tool, accessing the advanced options in the wiring layout section. Some predefined customization profiles are available from there:
- V4 Stage: The 4 silicone push buttons are assigned to MIDI program change 1-4. It's specially thought to use with ZS3.
- S1 => MIDI Program 1
- S2 => MIDI Program 2
- S3 => MIDI Program 3
- S4 => MIDI Program 4
- V4 Studio: The 4 silicone push buttons are assigned like this:
- S1
- Short => Audio Recorder/Player
- Bold => MIDI Recorder/Player
- Long => All Sounds Off
- S2
- Short => Zynpad
- Bold => Pattern Editor
- Long => All Sounds Off
- S3
- Short/Bold => Arrow Up
- Long => All Sounds Off
- S4
- Short/Bold => Arrow Down
- Long => All Sounds Off
- S1
- V4 CC Switches: The 4 silicone push buttons are assigned to MIDI CC 47-50. It's specially thought to MIDI learn toggle parameters (i.e. to use with SooperLooper)
- S1 => CC 47 (value 0/127)
- S2 => CC 48 (value 0/127)
- S3 => CC 49 (value 0/127)
- S4 => CC 50 (value 0/127)
3.5 Using the knobs
The V5 knobs behave quite differently to V1-V4 knobs. Because of the 20 silicone buttons, there is no need to use the knobs' switches to navigate the UI which now is best achieved with the push buttons, so when appropriate, knobs' switches have been mapped to drive the MIDI learning functionality, which is quite intuitive. The knobs are numbered from top to bottom, so the top one is knob#1 and the bottom one is knob#4. We will refer knobs in this way throughout this guide.
General rule
Although knob's functionality is contextual in V5, there is a kind of pattern that can serve as a general rule and applies to many screens:
- Knob#4 acts as the select knob similar to the classic V1-V4 UI.
- rotate to browse lists and move the cursor horizontally in grids (zynpad, pattern editor, etc.).
- short-push to select items, same than the SELECT button.
- Knob#3
- Rotate to move the cursor vertically in grids (zynpad, pattern editor, etc.).
Note:
MAIN Volume is always available with one click. Push MIX button and rotate Knob#3 to change the MAIN volume.
General rule
Although knob's functionality is contextual in V4, there is a kind of pattern that can serve as a general rule and applies to many screens:
- SELECT Knob acts as the select knob similar to the classic V1-V4 UI.
- rotate to browse lists and move the cursor horizontally in grids (zynpad, pattern editor, etc.).
- short-push to select items.
- BACK Knob
- Rotate to move the cursor vertically in grids (zynpad, pattern editor, etc.).
Note:
MAIN Volume is always available with one click. Bold-push BACK Knob to open the mixer screen, then rotate Learn/Shot Knob to change the MAIN volume.
4 The top-bar
4.1 The title-bar
The title bar acts as a kind of breadcrumb. It normally shows the screen title or current chain information: MIDI channel, engine, bank & preset.
4.2 The status area
On the top-right corner, aside the title bar, is an area where some useful information is displayed in real time:
- Digital Audio Peak Meter (DPM): horizontal bars indicating digital audio level and peaks
- Status icons: indication of various zynthian states
4.2.1 The Digital Audio Peak Meter (DPM)
The DPM covers the range -50dBFS to 0dBFS, i.e. maximum permissible level at full scale (far right) down to 50dB below (far left):
- The green segment covers the range -50dBFS to -10dBFS.
- The yellow segment covers the range -10dBFS to -3dBFS.
- The red segment covers the range -3dBFS to 0dBFS.
There are independent meters for left and right channels which monitor the system output, i.e. the mix of audio that feeds the Zynthian output. Level decays with a logarithmic rule, taking one second to decay to -200dBFS so will decay to -50dBFS (the displayed range) in about quarter of a second. Peaks are displayed instantly, i.e. the attack of the meter is immediate (*). The peak hold bar remains for two seconds or until a higher peak is reached.
This meter is the same as the main mixbus DPM that is always visible in the mixer view and is therefore hidden when the audio mixer view is shown.
(*) Meter is updated 5 times per second so there can be 200 ms delay in peak being displayed.
4.2.2 The status icons
1st row: Health & Load | ||
---|---|---|
Cpu Load | Heart, indicating CPU load. It displays as green when under 50%, yellow when load is over 50% and red over 75%. | |
Software update available | When a software update is available, the green recycle symbol is shown. You can update from the admin menu, webconf or terminal. | |
XRun | It's shown when there are XRuns. This may be accompanied by clicks and pops on audio output. This means the CPU can't process or transfer audio fast enough and you should consider disabling some CPU-hungry option (like VNC, headphones, etc.) or reducing the complexity of your chains. | |
Under-voltage | Zynthian is working in a degraded state, with the CPU frequency capped to 600-800 MHz, trying to stabilize the system and avoid a system crash. You shouldn't see that icon and if you do so, you should consider looking for a better power source. | |
Over-temperature | Zynthian is working in a degraded state, with the CPU frequency capped to 600-800 MHz, trying to stabilize the system and avoid a system crash. You shouldn't see that icon and if you do so, you should improve heat dissipation (using a heat sink, etc.) | |
2nd row: MIDI activity & Playing/Recording | ||
m | MIDI-IN | It's shown when MIDI messages are received. Underscore indicates system message such as MIDI clock. |
Recording Audio | Audio is being recorded. | |
Playing Audio | Audio track is being played. | |
Recording MIDI | MIDI is being recorded. | |
Playing MIDI | MIDI track is being played. | |
Recording Pattern | A sequencer's pattern is being recorded. | |
Playing Sequence | A sequence or pattern is being played. |
5 Basic Screens
5.1 Mixer
Blablablablabla
- Knob#4
- rotate to select active chain.
- short-push to open the control screen with the selected chain.
- bold-push to open the chain options for the selected chain.
- Knob#3
- rotate to change the MAIN volume.
- short-push / bold-push to open the mixer's MIDI-learning menu.
- Knob#2
- rotate to change the balance of the selected chain.
- short-push to mute the selected chain.
- Knob#1
- rotate to change the volume of the selected chain.
- short-push to solo the selected chain.
5.3 Engine Selector
5.4 Chain Control
- Knob#1 - #4
- rotate any knob to change the value of the assigned parameter.
- short-push any knob to start MIDI-learning for the associated parameter. If wanted, a second push for global learning. Move a knob/fader in your MIDI controller to complete the learn or push back to cancel.
- bold-push any knob to open the options menu for the associated parameter.
Note:
To navigate the controller screens (select mode), you must push the SEL button. Bold-pushing knob#4 doesn't work for this in V5.
5.5 Chain Options
5.6 Banks & Presets
5.7 Confirmation Dialog
5.8 On-screen Keyboard
5.9 Admin
5.10 Others
6 Basic workflow
6.1 Chain creation
6.2 Basic chain manipulation
6.3 Layering chains
6.4 Etc.
7 Advanced workflow
7.1 MIDI learning
7.2 Audio routing
7.3 MIDI routing
8 The Sequencer
8.1 Zynpad (Scene)
- Knob#4
- rotate to move cursor horizontally.
- short-push to play/stop the selected sequence.
- bold-push to open the pattern editor for the selected sequence.
- Knob#3
- rotate to move cursor vertically.
- short-push to MIDI-learn the current pad by pushing a note in your MIDI controller.
- Knob#2
- rotate to change the scene.
- Knob#1
- rotate to adjust tempo BPM.
Note:
Before MIDI-learning pads, you have to select a trigger device. Push OPT to access the zynpad menu and choose your trigger device. Note that if the selected device is already supported (have a driver!), MIDI-learning is not needed at all and the device will be mapped automatically.
8.2 Pattern Editor
- Knob#4
- rotate to move cursor horizontally.
- short-push to add/remove a note at cursor position.
- bold-push to edit note parameters:
- rotate knob#4 to select the parameter to edit
- duration
- velocity
- offset
- stutter count
- stutter duration
- play chance
- rotate knob#3 to change coarse value.
- rotate knob#2 to change fine value (when available).
- short-push knob#4 to end editing
- bold-push knob#4 again to enter EDIT ALL mode
- rotate knob#4 to select the parameter to edit
- Knob#3
- rotate to move cursor vertically.
- Knob#2
- rotate to change the zoom level.
- short push to restore default zoom level.
- Knob#1
- rotate to adjust tempo BPM.
Note:
Bold-push in an empty position to edit the default note parameters. These are the values used when adding new notes.
8.3 Arranger
9 Learning Pills
9.1 Basics
- Creating a synth chain and adding a MIDI chorder + audio FXs (tutorial)
- Creating a synth chain (workflow capture)
- Creating another synth chain (alternate workflow capture)
- Audio Mixer (workflow capture)
- Banks & Presets
- Chain Control
- Chain Options
- Chain FXs
- MIDI-learning: sound engine parameters
- MIDI-learning: audio mixer
- MIDI-learning: ZS3s (Zynthian SubSnapShots)
- Audio Recording
- MIDI Recording
9.2 Sequencer
- Pattern Editor: Creating & Editing patterns
- ZynPad: Launching patterns
- Audio Player: Loops & One-shots
- Arranger: Linear composing
9.3 Mini-HowTos
- MIDI Clone: Make 2 chains to play unison
- Arppeggiator & Chorder
- SooperLooper: Live audio looping
9.4 Contribute your workflow captures
This collection of workflow animations have been recorded with the "capture workflow" option from UI's admin menu and subtitled later with the webconf tool:
library->captures->log
With this tools, you can also capture, subtitle and share your favorite workflows, helping others to learn and contributing to improve zynthian documentation. If you do so, please, share your workflows in the forum:
https://discourse.zynthian.org