Expert Sleepers Augustus Loop User Manual v2.3.0

Expert Sleepers Augustus Loop v2.3.0 User Manual
Copyright © 2009-2010 Expert Sleepers. All rights reserved.
This manual, as well as the software described in it, is furnished under licence and may be used or copied only in accordance with the terms of such licence. The content of this man­ual is furnished for informational use only, is subject to change without notice, and should not be construed as a commitment by Expert Sleepers. Expert Sleepers assumes no respon­sibility or liability for any errors or inaccuracies that may appear in this document.
Contents
Introduction! 12
Installation! 14
Mac OS X, Audio Unit (AU)! 14 Mac OS X, VST! 14 Windows (VST)! 14
System Requirements! 14
Mac OS X! 14 Windows! 14
Registration! 15
What’s New in Version 2! 16
Quality Improvements! 16
Freeze Loop! 16
Sync Groups! 16
Tape Sim! 16
Skinnable and Scriptable GUI! 16
OSC! 17
MIDI & OSC Scripting! 17
Waveform Display! 17
Record O"set! 17
Tape Read Mode! 17
Quickstart! 18
Using Augustus Loop! 19
Using the controls! 19
Knobs! 19
Sliders! 19 Dropdown menus! 19 Value edit boxes! 19 Name/value display! 19
Overview! 20
Delay Time! 21
Max Delay! 21 Delay Time! 21 Min! 21 Max! 21 Current delay time! 21 Delay Slider! 21
Delay Taps! 22
Delay Time! 22 Delay Level! 22 Master! 22
Pitch! 23
Pitch! 23 Pitch Slider! 23 'Piano Keys'! 23 Reverse! 23 Stop! 24 LFO Speed! 24 LFO Depth! 24
Filter! 25
Cutoff! 25 Q! 25 Typ e! 25 LFO Speed! 25 LFO Depth! 25 Saturate! 25 Saturation! 25 Shape! 26
Tape Sim! 26
Drive! 26 Crunch! 26 Gain! 26 Lo Freq/Lo Amnt! 26
Hi Freq/Hi Amnt! 26
Sync! 27
Host Tempo! 27 Beat Divisor & Triplet! 27 Beats! 27 Using Beats with Tap Record! 27 Sync Groups! 27
Clock Out! 28
Ping-Pong/Read Mode! 28
Mono-ize & Init Pan! 28 Tape Read Mode! 28
Levels! 29
Dry! 29 Effect! 29 Input! 29 PISIL and POSIL! 29
Loop! 30
Tap Rec! 30 Hold Rec! 30 Tap Length & Hold Length! 30 Freeze Loop! 30 Freeze Loop Mode! 30 Clear Loop! 31
Misc! 31
Fix Delay! 31 Trigger Arm! 31
Fade! 31
Punch In/Out! 32
Punch In Quantize (menu)! 32 Punch Out Quantize (menus)! 32
Inertia! 33
Pitch Inertia! 33 Delay Inertia! 33
Digital Mode! 33
Record O"set! 34
Waveform Display! 35
Augustus Loop Fx Loop! 36
Introduction! 36
Using the Fx Loops! 36
Setting up your DAW for Fx Loops! 37
Ableton Live! 37
Current Limitations! 37
Preferences! 38
MIDI In! 38
Skin! 38
OSC Base Port! 39
MIDI output! 39
Rounded tempos (for Live)! 39
Legacy filter behaviour! 39
Ignore AudioUnitReset! 40
Skins! 41
Preamble! 41
Learn by example! 41
Share your Skins!! 41
Anatomy of a Skin! 42
Mac OS X! 42 Windows! 42 Bundle structure! 42 Image requirements! 42
The Skin Script! 42
getWindowSize()! 42
getFont()! 43 getLabelFont()! 43 getTextFieldFont()! 43 createUI()! 43
Functions callable from createUI()! 44
setBannerPosition( y [, showVersion ] )! 44 setGroupActiveColour( r, g, b, a ), setGroupInactiveColour( r, g, b, a )! 44 texture( filename )! 44 setBackgroundTexture( texture )! 44 setBackgroundColour( r, g, b )! 44 sliderRenderer( texture )! 44 buttonRenderer( texture )! 45 knobRenderer( texture, u, v, size )! 45 group( name )! 45 group:add( control )! 45 group:width()! 45 group:height()! 45 group:bounds()! 46 group:setPosition( x, y )! 46 group:setVisible( v )! 46 group:isVisible()! 46 add( control )! 46 knob( param, label, x, y, size )! 46 paramButton( param, x, y, w, h, u, v [, hold ] )! 46 slider( param, x, y, w, h, orient, u, v, du, dv )! 47 button( id, label, x, y, w, h, u, v )! 47 luaButton( function, label, tooltip, type, x, y, w, h, u, v )! 47 textField( param, label, x, y, w, h [, format ] )! 48 dropDown( param, x, y, w, h )! 48 indicator( id, x, y, w, h, u, v )! 48 delaySlider( x, y, w, h, orient, u, v, du, dv )! 49 control:setVisible( v )! 49 control:isVisible()! 49 control:setState( v )! 49 control:getState()! 49 valueDisplay()! 49 valueDisplay:setColour( r, g, b, a )! 49 valueDisplay:setPosition( id, x, y, w, h )! 49 levelMeters( texture, u, v, w, h )! 49 levelMeters:add( id, x, y )! 50 waveformDisplay( x, y, w, h )! 50 waveformDisplay:setMoving( v )! 50 waveformDisplay:isMoving()! 50
getParameterID( param )! 50
Functions callable from luaButton functions! 51
getParameter( param )! 51 setParameter( param, value )! 51 setOthersParameter( id, param, value )! 51 getOthersParameter( id, param )! 51 sendOSC( address, path [, format ] [, values ] )! 52 control:setVisible() / control:isVisible()! 52 control:setState() / control:getState()! 52 redrawLabels()! 52
Pre-defined Global Values! 53
Debugging! 53
Mac OS X! 53 Windows! 53
MIDI control! 54
CC messages! 54 NRPN messages! 54
OSC Control! 55
Received OSC Commands! 55
/ping s:returnUrl s:returnPath! 55 /set i:param f:value! 55 /get i:param s:returnUrl s:returnPath! 55 /getAll s:returnUrl s:returnPath! 56 /getNumParameters s:returnUrl s:returnPath! 56 /getInfo i:param s:returnUrl s:returnPath! 56 /registerUpdate i:param s:returnUrl s:returnPath! 56 /unregisterUpdate i:param s:returnUrl s:returnPath! 56 /getAllRegistered! 56 /exec s:func ...! 56 /call s:func s:returnUrl s:returnPath ...! 57
MIDI & OSC Scripting! 58
Preamble! 58
Learn by example! 58
Share your scripts!! 58
Script locations! 59
Mac OS X! 59 Windows! 59
Overriding the default script! 59
MIDI & OSC Script Functions! 59
getParameterID( param )! 59 getParameter( param )! 59 setParameter( param, value )! 60 getParameterMinMax( param )! 60 setOthersParameter( id, param, value )! 60 getOthersParameter( id, param )! 60 sendOSC( address, path [, format ] [, values ] )! 60 requestAllNoteOn( function )! 61 requestAllNoteOff( function )! 61 requestAllCC( function )! 61 requestAllNRPN( function )! 61 requestAllProgramChange( function )! 61 requestAllPolyPressure( function )! 62 requestNoteOn( note, function )! 62 requestNoteOff( note, function )! 62 requestCC( cc, function )! 62 requestNRPN( nrpn, function )! 62 requestProgramChange( pc, function )! 62 requestPolyPressure( key, function )! 63 requestPitchWheel( function )! 63 requestChannelPressure( function )! 63 time()! 63 requestTimedCallback( interval, function )! 63 requestPeriodicCallback( interval, function )! 64 cancelTimer( timer )! 64 setGUIBoolValue( id, value )! 64 getGUIBoolValue( id )! 64 setOthersGUIBoolValue( other, id, value )! 64 getOthersGUIBoolValue( other, id )! 64 registerOSCPathForParameter( path, param )! 64 registerOSCPathForParameterNormalized( path, param )! 65
Pre-defined Global Values! 65
Debugging! 65
Mac OS X! 65 Windows! 66
Version History! 67
v2.3.0 5th August 2010! 67 v2.2.2 28th June 2010! 67 v2.2.1 24th February 2010! 67 v2.2.0 9th February 2010! 67 v2.1.1 24th August 2009! 67 v2.1.0 8th May 2009! 67 v2.0.4 17th April 2009! 67 v2.0.3 19th March 2009! 68 v2.0.2 3rd March 2009! 68 v2.0.1 11th January 2009! 68 v2.0.0 23rd October 2008! 68 v1.8.2 (unreleased)! 68 v1.8.1 19th July 2008! 69 v1.8.0 5th June 2008! 69 v1.7.3, 24th March 2008! 69 v1.7.2, 18th March 2008! 69 v1.7.1, 17th March 2008! 69 v1.7.0, 14th March 2008! 69 v1.6.5, 30th September 2007! 69 v1.6.3, 31st October 2006! 70 v1.6.2, 2nd July 2006! 70 v1.6.1, 20th March 2006! 70 v1.6.0, 9th January 2006! 70 v1.5.1, 5th October 2005! 70 v1.5.0, 29th August 2005! 70 v1.4.3, 13th July 2005! 70 v1.4.2, 11th June 2005! 70 v1.4.1, 13th March 2005! 70 v1.4.0, 27th February 2005! 70 v1.2.0, 3rd January 2005! 71 v1.1.0, 30th August 2004! 71 v1.0, 5th June 2004! 71
Release Notes! 72
Issues with keyboard input! 72
Contact! 73
Acknowledgements! 74
Lua! 74
oscpack! 74
glew! 75
FreeType! 76
FTGL! 76
libpng! 76
zlib! 76
Introduction
Augustus Loop is an emulation of a tape-based delay effect, with some extra features to facilitate its use as a looping device. (If you're unfamiliar with the concept/genre of loop­ing, pay a visit to www.loopers-delight.com).
The key features of Augustus Loop that make it more than just a big delay effect are:
Really long maximum delay (3600 seconds - that's one hour).
Tap length/tap record. You can set the loop time while recording your first phrase.
Virtual tape. The delay simulates an old-style tape delay, meaning you can
! change the tape speed (i.e. pitch up and down)
! reverse the tape direction
! stop the tape
! smoothly change the delay time (as if changing the head gap on a tape delay).
Multimode filter and saturation in the feedback loop.
‘Tape Sim’ section to emulate the signal degradation of vintage tape echo machines.
Four feedback taps (left to left, left to right, right to left and right to right) with inde­pendent delay time and feedback settings, for ping-pong effects, stereo delays etc.
Pitch and filter LFOs.
‘Freeze Loop’ feature lets you freeze the audio into a perfect loop, no matter what other settings are in effect.
Loop length can be set in terms of the host's tempo setting.
Output of MIDI clock messages to synchronise other applications to the plug-in.
Ability to sync multiple instances of the plug-in running at once.
Automatic fades up and down to allow smooth transitions in your playing. It can even automatically clear the loop for you once it’s faded out.
Host transport-sync’d punch in and out when recording.
‘Inertia free’ mode suppresses the tape-like behaviour when changing delay times to allow seamless transitions between loop lengths. (This is also the route to the popular ‘multiply’ and ‘divide’ features found on some popular looping devices.)
The ‘Fx Loop’ plug-in configuration allows you to route audio through other plug-ins either side of the ‘virtual tape’, allowing you to insert your own effects in the delay loop. So you can just substitute your own filtering/saturation for Augustus Loop’s own, or get really creative by inserting any plug-in you like in the delay.
‘Record Offset’ feature to solve the problem of latency in digital audio systems.
Fully scriptable and skinnable GUI.
Fully scriptable control via MIDI and OSC.
Scripts can control other instances of the plug-in, allowing you to build complex multi-plug-in setups controlled from a single source (e.g. a MIDI pedalboard).
Installation
Mac OS X, Audio Unit (AU)
One file (ExSlAugustusLoop.component) contains all variants of the plug-in.
Simply copy the file to the folder:
Library/Audio/Plug-Ins/Components
Mac OS X, VST
There is one file per plug-in configuration, named ExSlAugustusLoop.vst and ExSlAugustusLoopFxLoop.vst.
Simply copy the files to the folder:
Library/Audio/Plug-Ins/VST
Windows (VST)
There is one file per plug-in configuration, named augustusloop.dll and augustusloop_fxloop.dll.
Simply copy the files to your VST plug-ins folder.
System Requirements
Mac OS X
Augustus Loop v2.2.0 and above require at least Mac OS X version 10.5.8 and are usable on Intel Macs only. Older versions of Augustus Loop also work on PowerPC Macs and OS"X versions back to 10.2.8.
The Audio Unit version will work in any Audio Unit host.
The VST version requires a “VST 2.4” compatible host.
1
Windows
Augustus Loop has been developed and tested with Windows XP SP2. It may work with other versions of Windows (Vista included) but this is by no means guaranteed.
The plug-in requires a “VST 2.4” compatible host.
1
VST is a trademark of Steinberg Media Technologies GmbH.
Registration
The downloadable version of Augustus Loop stops working after 15 minutes every time you use it. To stop this happening, you need to buy a registration.
You can buy a registration key online using a credit card or PayPal from the Expert Sleep­ers Licence Manager application. See here for more information. Note that you need at least version 1.0.12 of the Licence Manager.
The e-commerce side of things is handled by eSellerate. If you have any security concerns, have a look at their website which is pretty informative.
Your registration key allows you to install Augustus Loop on up to 3 different computers (useful if for example you have a desktop computer in the studio and a laptop for live use).
You need an internet connection to activate the software, though not necessarily on the computer on which you want to use it.
What’s New in Version 2
This section summarises the new features of Augustus Loop version 2. It is aimed at users who are already familiar with the previous versions of the plug-in. If you’re new to Augustus Loop, please skip ahead to the Quickstart section.
For a complete list of changes, please refer to the version history.
Quality Improvements
Great attention has been paid to removing the niggling little clicks and pops that used to occur if you used some features and were unlucky with your timing. Specifically, using the following should now never result in an unpleasant audio artefact:
Clear Loop
Changing the Input Level (which includes using the Punch In/Out Set Input Level features)
Tap Record
Freeze Loop
While Freeze Loop is essentially the same feature as has always been found in Augustus Loop, the new implementation in version 2 transforms this function into something alto­gether more powerful. Whereas in previous versions frozen loops were prone to clicking and popping unless the audio and plug-in settings were just right, version 2’s Freeze Loop is totally bomb proof and will loop anything. Read more.
Sync Groups
It is now possible to synchronise multiple copies of Augustus Loop that are running within one host application. You can therefore use Augustus Loop to build complex, multi­channel, multi-loop systems. Read more.
Tape Sim
A new audio processing section has been added to further expand the range of sounds you can get out of Augustus Loop, consisting of a new tape-style saturation effect and a new filter section. Read more.
Skinnable and Scriptable GUI
In version 2 it’s possible to completely replace the Augustus Loop user interface. This goes far beyond other ‘skinning’ systems where you can only change the superficial appearance
of the interface. With Augustus Loop you can move user interface elements around, re­move things you don’t use, add new buttons to drive your own new functionality. A gen­eral purpose scripting language lies behind all this, so your new buttons aren’t just limited to setting plug-in parameters - you can build complex systems limited only by your imagination (and programming skill!).
See the Skins section below for details.
OSC
Augustus Loop can now be remotely controlled via the Open Sound Control protocol.
See the OSC section below for details.
MIDI & OSC Scripting
Augustus Loop’s response to MIDI and OSC control can now be completely redefined by scripts written by users. This goes far beyond simply redefining which MIDI CC controls which parameter - you can build elaborate, state-based control systems, driving many cop­ies of Augustus Loop from a single control source.
See the MIDI & OSC Scripting section below for details.
Waveform Display
A new element has been added to the GUI that enables you to visualise the audio that’s recorded onto Augustus Loop’s virtual tape. Apart from looking swish, this is a useful tool that helps you understand exactly what the plug-in is doing at any particular time, espe­cially when some of the more complex functions are enabled. Read more.
Record O"set
This new feature makes it easy to sync your looping to other performers, even when your computer-based setup is introducing a lot of latency into your audio stream. Read more.
Tape Read Mode
Although Augustus Loop remains a fundamentally stereo device, the new Tape Read Mode setting lets you simulate a mono tape echo from days of old. Read more.
Quickstart
Augustus Loop is designed to be used as an insert effect, but you can use it as a send effect if you wish.
The GUI consists of two sliders, a number of knobs and a smaller number of buttons.
The shorter of the two sliders and the cluster of edit boxes around it control the delay time. By default the slider lets you ad­just the delay time between zero and ten seconds. Try dragging the slider and see what hap­pens.
The longer slider controls the speed of the virtual tape, or equivalently the pitch of the de­layed material. Try playing some notes into the delay, and then adjusting the slider. You should hear the notes you played at a higher or lower pitch.
Four of the buttons let you set up a delay time without having to know what you want as a num­ber of seconds. Try clicking on 'Tap Length', waiting a moment, and then clicking on it again. The delay time will change to the length of time between your two clicks. If you use 'Tap Rec' (short for 'Tap Re­cord') the delayed material will be cleared out on the first click. This is useful when starting afresh on a new loop.
Other than that, just have a play with the controls, and then dig into the detailed reference section, below.
Using Augustus Loop
Using the controls
Knobs
Basic use of the knobs is to click on them and drag the mouse up and down. However you can obtain different results by holding keys as follows:
Shift : Values change more slowly as you move the mouse.
Command1 (Mac OS X)/Alt (Windows) : The knob assumes its default position.
Sliders
Sliders behave similarly.
Shift : Values change more slowly as you move the mouse.
Command : The slider assumes its default position.
Dropdown menus
Clicking on the menu displays the list of options. Move the mouse over the desired option and release the mouse to select it.
Value edit boxes
These boxes let you enter parameter values directly. Clicking on the value highlights it in green - you can then type the desired value using the key­board. Press enter to finish and accept the new value.
While you’re typing the value, the box goes red to indicate that the value you see has not yet been accepted.
Name/value display
As you move the mouse around the interface, the name and current value of the control currently under the mouse is displayed in the top right of the window. This area also provides tooltips for buttons.
1
The ‘Command’ key is also known as the ‘Apple’ key - the one next to the spacebar.
Overview
Here's a block diagram of the 'circuitry' of Augustus Loop. It can help to visualise this when understanding the effect of some settings, particularly the delay time settings.
Delay Time
The delay time controls consist of a slider and four text boxes.
Max Delay
This field sets the maximum de­lay time the plug-in is capable of using. The highest value that you can enter here is '3600', which is an hour (60 minutes times 60 seconds).
NB Changing this value causes the plug-in to reallocate its delay buffers. This can be a slow operation, especially if the value entered is large. So don't do it when there's actually audio flowing through the plug-in, as you'll most likely get an ugly stutter or momentary silence.
Also NB You'll want a lot of RAM to use high values for the delay time! At 44.1kHz, you'll need about 20MB per minute. If you ask for the maximum 3600 seconds, that's about
1.2GB of RAM you're asking the plug-in to use.
Delay Time
This field reflects the current delay time, in seconds. You can enter a value here directly, or use the delay slider or tap buttons to set it indirectly.
Min
This field sets the value corresponding to the leftmost position of the delay slider.
Max
This field sets the value corresponding to the rightmost position of the delay slider.
Current delay time
This field (immediately below the delay slider) shows one of the following:
The current delay time in use, as set by the delay slider/text box.
The current delay time in use, as set by the host tempo settings, if 'host tempo' is ac­tive.
The time since tap recording began, during tap recording.
The time is shown in seconds and in bars/beats/480ths (if the host application supports the concept of bars/beats etc.).
Delay Slider
This slider lets you adjust the delay time between the two values set in 'Min' and 'Max'.
Delay Taps
A total of nine knobs make up this section.
Eight of these are in pairs, giving you control of delay time and feedback level for each of the four taps.
Delay Time
Sets the delay time for the tap, expressed as a percentage of the master delay time set in the delay time section.
Delay Level
Sets the feedback level for the tap. This is the same as the actual output level of the tap in our architecture.
The four taps let you feedback sound be­tween the two stereo channels. The left-to­left and right-to-right taps give you a normal stereo delay. The left-to-right and right-to-left taps allow you create ping-pong style de­lays. By mixing all four, you can get some spacious stereo spread effects.
Master
The last control in this group, 'Feedback', sets the overall feedback level. Effectively it scales the four tap level controls.
Pitch
Pitch
This text field simply reflects the current pitch value. You can type numbers directly in here. The values represent semitones (12 semitones is an octave).
Pitch Slider
The slider controls the speed of the virtual tape, over a range of two octaves i.e. you can go from half-speed up to double-speed.
If you hold the Option (Mac OS X)/Ctrl (Windows) key while dragging the slider, it will only move to whole number values.
If you hold the Command (Mac OS X)/Alt (Windows) key and click on the slider, it will return to zero.
'Piano Keys'
The many small buttons above and below the pitch slider are laid out in a black and white pattern like a piano keyboard. These buttons let you set the pitch slider directly to whole semitone values.
The upper set of buttons just change the pitch. The lower set of buttons also reverses the tape direction. NB This means that if the tape is already reversed, they will change the di­rection to forwards.
Reverse
Reverses the direction of the virtual tape.
Of itself, this is fairly straightforward. However it has a slightly non-intuitive relationship with the tap delay times. In order that changing the tape direction does not produce any nasty artefacts, the position of the tap tape heads has to remain constant. This means that their order is reversed.
For example, say in the simplest case you have the L-L and R-R taps set to 100% time and level, and the other taps set to 0% level, with the master delay time set to 1s. In this sce­nario, reversing the tape gives you the same result, that is a delay of 1s.
Loading...
+ 53 hidden pages