Loops and regions lie at the heart of zenAud.io. Both loops and regions describe musical objects that occupy a range of time; that is, they have a beginning and an end, and are visually represented in ALK by a rounded rectangle whose fill color is determined by the color of the track it lives in, and its stroke or border color is determined by the type of loop or region.
Loops are regions, but the converse is not true. In other words: region is the more general term, whereas loops are specific to audio, instrument, and MIDI tracks. It’s actually easy to remember the difference: if it loops, it’s called a loop, otherwise, it’s called a region!
This section will focus on loops rather than (automation) regions. Automation regions are covered in the section on automation.
Loops are the vehicle by which you pre-plan the specific sequence of record/play/mute/unmute commands for a performance. Loops are ordered by time: each loop represents a range of time. Loops in a single track can’t overlap in time, so for a given track, at any one time, there can only be one loop.
Loops come in two flavors: record loops and play loops. You can tell loop types apart by their outline or border color: record loops are red, while play loops are green. This mirrors the typical color scheme used to represent the transport, and reminds us that the loops function in a similar way.
When a track is locked, its loops take on the same border color as the track itself (i.e. its Track Leader). This emphasizes the fact that recording doesn’t affect the track in the locked performances state.
Record loops represent commands for the looper to begin and end recording. Record loops have names; no two record loops on the same track can have the same name. You can change the name for a loop by clicking on its name text field in the Arrangement View, which makes the text field editable. This is shown in the screenshot below.
Record loops contain clips, which can be seen as a buffer that stores individual performances. If you record/perform the same song several times, the last eight performance takes will be saved as clips which are accessible by right-clicking the loop.
A record loop behaves in different ways depending on whether we are recording or in play mode. Assume that at the current position in the song, or the playhead, is within the range of the loop in question. In other words, we’re in the loop’s region.
- If the transport is in the record mode, then any incoming signal is recorded into a loop’s clip which subsequent play loops will use as a reference to play back from.
- If the transport is in play mode, then the current loop clip is played back. The incoming signal is passed through for monitoring depending on the combination of mute/solo/track audition settings on the loop’s track leader, however it is not recorded.
- Otherwise, if the transport is in stop mode, incoming signal is passed through for monitoring depending on the combination of mute/solo/track audition settings on the loop’s track leader. No signal is recorded and no pre-recorded loops are played back.
Like a record loop, a play loop stretches over a range of time – it has a beginning and an end. However, a play loop represents a command to play back or loop previous material.
A play loop doesn’t store any loops. Instead, it links to record loops occurring before the (play) loop on the current track, and asks them what their current clips are.
Play loops are named by the record loop that they link to. To change which record loop a play loop links to, click on its name in the arrangement view.
A play loop behaves in the same way, regardless of whether we are in recording or in play mode.
Assume, again that we’re within the loop’s region:
- If the transport is in record mode and the loop refers to a valid record loop, then that record loop’s current clip is played back during the play loop. The incoming signal is passed through only within the record loops.
- If the transport is in play mode and the loop refers to a valid record loop, then that record loop’s current clip is looped to fill the play loop’s loop length. The incoming signal is passed through for monitoring depending on the combination of mute/solo/track audition settings on the loop’s track leader.
- Otherwise, if the transport is in stop mode, no pre-recorded loops are played back. The incoming signal is passed through for monitoring depending on the combination of mute/solo/track audition settings on the loop’s track leader.
In this section, we discuss the tools ALK provides in order to create arrangements using loops in the Arrangement View. The tools are described under drawing modes in the User Interface drawing modes section.
Loops can be drawn using one of two pencils: the Record Pencil, or the Play Pencil, both of which appear in the right hand tool bar. Drawing is accomplished by pressing the mouse down in a track (which determines the beginning of the loop), and subsequently dragging the mouse to the right to determine the length of the new loop. When the mouse button is released, the new event will be added to the sequence.
The draw mode used for the operation can also be determined by modifier keys pressed at the start of the drawing operation:
- No modifier keys pressed: the drag operation is a select range, and is therefore outlined in blue.
- Cmd key pressed: the record pencil is activated, and a record loop is drawn.
- Alt key pressed: the play pencil is activated, and a play loop is drawn.
The modifier keys must be pressed before the beginning of the drag operation.
Selecting and Moving Loops¶
In addition to drawing operations, loops can be modified in a few ways. First, you can move a loop’s position and track by dragging the loop with the mouse to the desired location.
Note that when a loop is moved, any other loops that are currently selected are moved in exactly the same way. Also, if the Shift key is pressed while the loop is being dragged, the move operation becomes a copy operation – and all the selected loops are copied rather than moved.
Creating a selection area by clicking and dragging the mouse allows a number of loops to be moved at the same time. Clicking and dragging on part of a loop within the selection moves everything within this selection, whereas clicking and dragging on part of a loop outside but touching the selection will move all loops touching the selection. The same can be achieved by pressing the Esc key which removes the selection area while maintaining loop selection. Pressing Esc once more deselects all loops.
You can adjust the beginning and end of a loop (resize the loop) by hovering the mouse close to the beginning and ends of the loop, which changes the mouse cursor into the resize icon. If you now click and drag in any direction, the loop’s begin/end will be adjusted appropriately.
Hitting FF after any record loop automatically draws a play loop after it which continues to the end of the arrange window. Hitting FF after any play loop extends the loop to the end of the arrange view.
Select, Cut And Paste Operations¶
In addition to the mouse modify operations, ALK supports the standard cut, copy, paste and undo operations for loops. Unlike in other programs, ALK, for ergonomic reasons, uses the following keys for cut, copy, paste, and undo:
|Select all||a key||Press repeatedly to cycle between all regions in track, document, and none.|
|Cut||x key||Like delete, but copies the loops/regions before deleting.|
|Paste||v key||Pastes the loops verbatim: record loops are pasted to (new) record loops.|
|Paste special||⇧ +v||Converts record loops to play loops linking to original record loop.|
|Deselect||Esc||First press seselects selection area. Second press deselects loops|
These keys are the same as the standard key combinations but without the Cmd key being pressed. Adieu, carpal tunnel syndrome!
Pitch Shifting Loops¶
ALK allows for the pitch shifting of any play loop by up to +12 or -12 semitones. Pitch-shifting can be accessed by right-clicking the play loop and choosing the desired semitone of the pitch-shift.
Pitch-shifting can also be changed by hovering the mouse over the play loop, holding Cmd and scrolling up and down on the trackpad.
Once pitch-shifted, the semitone value appears on the play loop. To reset the semitone back zero, click the reset button next to the value.
Changing Loop Offset¶
It is possible to offset the start-point of any play loop in ALK by any denomination of bars, beats and fractions of beats. The loop offset can be adjusted by hovering the mouse over the desired play loop, holding down Cmd and scrolling left and right on the trackpad.
The way the loop offset is displayed dynamically changes depending on the value. For example, an offset of two bars would be displayed as “2 bars” whereas an offet of one bar, three beats and one quarter beat would be displayed as “1.3.25” as per the image below:
To reset the offset of a loop back to zero, simply click the reset button next to the offset value.
Retrigger Overlapping Notes¶
When recording and looping MIDI, ALK intelligently extends held notes that overlap with the next repeat of the loop. This is useful for creating long extended notes, but can also be an unwanted behaviour. When retriggering of overlapping notes is preferred, a menu item is available by right-clicking the playback loop and choosing Retrigger overlapping notes.