Here you will find everything related to the installation, activation, updates, release notes and manuals of our Virtual Instruments and Applications.
Camelot Tutorial 5: Audio Input and Output
One of Camelot’s most exciting features is that it deals with both MIDI and audio. In this tutorial, we will examine the audio input and output features of Camelot, including basic configuration and where audio input and output are used in Camelot.
You will get the most out of this tutorial if you approach it with some basic understanding of how Camelot is set up, information you can get from these tutorials:
The place to start with audio I/O is, naturally, with your audio interface. Camelot is perfectly happy to work with an interface that has just two analog inputs and two outputs, or with interfaces sporting numerous inputs and outputs. (Camelot can just as easily work with interfaces having digital I/O, but most live performance applications end up involving analog I/O, so that is what we will focus on in this tutorial.)
The number of audio inputs and outputs you need on your interface is determined by the performing rig you want to use. If you will be running only software instruments that you play from a MIDI controller, you may not need any analog inputs at all and only one or two outputs. If, on the other hand, you have one or more hardware synthesizers, a vocal mic, a guitar, and maybe another acoustic instrument like a sax, you may need several audio inputs. If you want to be able to feed a sound system, have a separate mix going to a personal monitor system, and send a metronome out its own output, then you will need several audio outputs, as well.
Figure 1 - An illustration of the range of systems Camelot can be part of. On top is a simple system with no audio inputs at all and only one audio output. It uses only software instruments. On the bottom is a system with a MIDI controller and four different audio sources, plus software instruments and then four output mixes. More MIDI controllers could be added, if needed.
As we will see, if you have an interface with more I/O than you actually need to perform, you can choose to use only some of them in Camelot, which keeps things more streamlined and easier to keep track of. In any event, if there is software available for configuring your interface and managing its resources, that will be handy to have around for your work with Camelot. In particular, you may find it useful to give the audio inputs and outputs appropriate names that indicate what you usually use them for.
Configuring the Audio Interface in Camelot
Setup for your audio interface in Camelot is pretty straightforward, and all of the relevant settings are found in the Audio panel of the Settings view.
Figure 2 - The Audio panel in the Settings view. Note that the current value of each subpanel is shown below the subpanel’s name.
Once you finish making all of the settings described below, click the Apply button at the bottom of the panel to put all of your settings into action. If Camelot’s settings somehow get messed up, you can always click the Reset button to restore the factory default settings.
The first setting to make is selecting the software driver you will use with your interface. On Mac computers, this will most often be Core Audio drivers, while on the iPad you will be using iOS Audio drivers.
Windows machines rely largely on drivers supplied by the manufacturer of the sound card being used.
There are a number of universal Windows sound drivers, such as ASIO4ALL, that support a wide range of cards. However, these drivers attain compatibility at the expense of efficiency, and efficiency can be very important to proper operation of some complex instruments, including Audio Modeling’s SWAM instruments. We recommend avoiding universal Windows sound drivers if you will be using SWAM instruments.
In any event, the driver is selected in the Audio Driver subpanel of the Settings view.
Figure 3 - The Audio Driver subpanel. Not usually a lot of choices to be made here, as you can see.
Audio Inputs and Outputs
Audio inputs and outputs in Camelot are abstracted from the interface. Hey, that’s great! What the heck does it mean?
Mostly, it means that an audio input or output can have one name that the interface or interface management software uses, and a different name that Camelot uses. This makes it easy to use names in Camelot that are particular to your performing setup and can be changed anytime you think a different name would be convenient, while letting the interface itself keep more generic names. It also means that you can set up the inputs and outputs you need with names in Camelot, and have other inputs and outputs you don’t need be hidden to keep the view simpler. This will all become clearer in just a moment.
Figure 4 - Name abstraction gives you complete freedom to customize the names of audio inputs and outputs as they appear in Camelot (bottom) without affecting how they are named at your interface (top).
Configuring Audio Outputs
Figure 5 - The Audio Output subpanel of the Settings view. The audio outputs are shown using the names they have in Camelot; they may have different names in the interface's management software.
Audio outputs are configured in the Settings>Audio Output subpanel. The first setting is Audio Output Device, which you set for the interface you are using.
- Click the Settings button to enter the Settings view.
- Click the Audio button on the left to select the Audio panel.
- Click the Audio Output button to bring up the Audio Outputs subpanel.
- Click Audio Output Device to bring up a list of all available audio output devices. Click on the device you want to use.
- Click Back to return to the Audio Outputs subpanel.
Now it’s time to set up the outputs you want to use in Camelot. Below the Audio Output Device setting, you will probably see a list of outputs already created in Camelot. Each of these can be renamed and assigned to any interface output. The one exception is Main Audio Out, which can be freely assigned (it defaults to your interface’s main stereo output), but not renamed.
- To add an audio output to the list, click the button with the plus sign at the bottom of the pane. A new output with the default name “New Camelot Audio Output” will be created.
- Click the output in the list that you want to assign or rename. The Channel Selection pane appears.
Figure 6 - The Channel Selection pane is where you create a name that will be used in Camelot for an audio output and associate it with an interface output. This useful abstraction makes it easy to name outputs appropriately for their usage, which is how the name then appears everywhere in Camelot.
- Click the button on the upper right to select whether you want the output to be stereo or mono. The list of interface outputs will change accordingly to show stereo pairs or individual outputs. You can change an output from stereo to mono or vice versa later, but doing so will modify the signal path everywhere that output is used, so do so with caution.
- Click the interface output you want assigned to that Camelot output. If there are many interface outputs, the search field above the list of interface outputs is a useful way of quickly finding the output you want.
- To rename the output in Camelot, click the pencil icon to the right of the name in the field at the top of the pane, and change the name as desired. This does not affect the name assigned to the output in your interface management software, only the name that will appear throughout Camelot.
Configuring Audio Inputs
Figure 7 - The Audio Inputs subpanel is identical to the Audio Outputs subpanel, except for the obvious - that it deals with inputs rather than outputs. See Figure 05 above for identification of features of this panel.
The process for configuring audio inputs is the same as for audio outputs, only audio inputs are configured in the Settings>Audio Input subpanel. As with audio outputs, the first setting is the Audio Input Device, which you set for the interface you are using. Note that the Audio Input Device does not need to be the same device as is selected for audio output, though it usually will be.
Adding and configuring audio inputs is done with the same process as with audio outputs, other than being performed in the Audio Inputs subpanel and selecting from interface inputs rather than outputs. For step-by-step instructions, simply look at the procedures in the Configuring Audio Outputs section above and substitute “inputs” wherever it says “outputs.”
If you happen to use different audio interfaces at different times, say one interface in the studio and another for mobile work or in performance, Camelot remembers the configuration of inputs and outputs last used with each of those interfaces, and restores the appropriate settings as soon as it recognizes the presence of an interface that has been used with it in the past.
Sample Rate, Buffer Size, and Multi-Core Priority
The Audio Settings panel includes a few other important parameters.
Sample Rate sets the audio sample rate at which Camelot will operate. Clicking the Sample Rate button brings up a list of rates available from the sound card currently in use. Select the desired sample rate from the list. Note that higher sample rates will require larger buffers, incurring greater latency, and also place a greater load on your computer’s CPU.
If an audio file you want to use for a backing track is at a different sample rate than is set here for Camelot, don’t worry. Camelot will resample in real time to adjust the sample rate. However, it is best to avoid making Camelot do this real-time resampling on more than one or two files at any time. If you have a lot of files at a different rate than Camelot is set to, then switch Camelot to the sample rate of most of the files. If that is not possible for some reason, than it is probably best to sample rate convert the files in question using an audio editor, batch converter, or other utility application.
Figure 8 - Camelot can operate at any standard sample rate your sound card will support. The MOTU interface in use in this screenshot supports rates up to 192 kHz. Simply click the sample rate you want to use. Backing tracks audio files at other sample rates will be sample rate converted on the fly.
It is especially important to understand the Buffer Size setting in the Audio panel. The choice of buffer size is a tradeoff between how much of a workload you place on your computer and how much latency, or delay, you experience, especially in monitoring.
Figure 9 - Buffer size is a critically important setting. Usually, the best setting is the smallest you can make without getting clicks and artifacts.
Lower buffer sizes give you a system that is more responsive, but place a greater burden on your CPU, which can limit how many effects or software instruments you can run at one time. If you are hearing clicks or other signs your system is struggling, you probably need to raise Buffer Size, so that the computational load is lowered. However, larger buffer sizes incur more delay in the system, which can begin to make live performance more difficult.
Note that the Buffer Size setting also affects MIDI data flow, so larger buffer sizes can introduce greater MIDI latency.
The right buffer size, which is to say, the optimal compromise, is a choice you must make based on the resources of your system and your artistic needs. Keep in mind that the latencies shown in the Buffer Size setting screen represent only the latency added by Camelot, and do not include latency contributed by the OS or any other system component.
Multi-Core Priority and Allocation
This function is still in development. Yeah, yeah, you see it there, but just leave it alone for now. That’s really your best play.
The Test Function
Figure 10 - Beep. The Test button sends a beep out all available outputs. Good for testing your setup.
Clicking the Test button in the upper right of the Audio Settings panel sends a one second, 440 Hz sine wave out all available audio outputs. We use this function a lot in development, and it may be useful to you for confirming proper audio card operation when troubleshooting audio issues.
Audio I/O in the Signal Path
With your audio interface properly set up, the next question is where audio I/O appears in Camelot in use.
The most common place to find and use audio inputs is in each Layer. A Layer can only accept one input. To access the audio input for a Layer:
- Click the colored box on the left end of the Layer whose audio input you want to assign. The Layer Settings panel will appear.
- Click the Audio Inputs tab and a list appears of all of the audio inputs you have defined in Camelot. Note that the interface input used is listed in small print beneath the Camelot audio input name.
- Click the input in the list that you want to feed the Layer’s audio path.
Figure 11 - The Layer Audio Inputs pane. Choose one of the Camelot audio inputs created in the Settings view and mapped to an interface input. This will be the sole audio input for the Layer, apart from any sidechain inputs that audio Items may include.
If you find that you need to define another audio input in Camelot, clicking the gear icon in the upper right opens the Settings>Audio panel, where the Audio Input subpanel can be opened and more inputs defined.
The “three dots” menu (“…”) to the right of each input provides two useful commands. Replace in all layers lets you change all occurrences of the input named to the right of the menu to a different Camelot audio input that you select after choosing the command. And Delete from all layers lets you remove the indicated input from all Layers in all Setlists. Use this command with care.
Figure 12 - The "three dots" menu of a Layer Audio Input offers the ability to swap out the currently selected audio input for another, or to remove the input from all Setlists.
Hardware Device items also have audio inputs available. This is very convenient for bringing in the audio from an external synthesizer that the Item is controlling. A single Item then incorporates both the MIDI controlling the instrument and the audio generated by it. The Item Main Knob and Pan setting allows the knob that appears on the HW instrument item to either control the instrument’s volume by sending it MIDI volume messages, or by acting as a level control for the instrument’s audio in Camelot.
Figure 13 - The Audio Inputs pane of a HW instrument Item allows an audio input to be routed through the Item, which will frequently be the audio output of the instrument. In this example, the knob on the Item is controlling the instrument's level through MIDI messages.
Some other items also make audio inputs available as sidechain inputs, one obvious example being many compressors, along with some other signal processors. Some software instruments also have an audio input that is identified in Camelot as a Side/chain Input. In some cases, the actual purpose of the audio input is not for a sidechain signal, but to route audio into the plugin for some other use. Consult the documentation for the plugin to find out what the intended use of the audio input is.
Figure 14 - This is the Audio Inputs pane of a compressor plugin in the signal chain. It offers a stereo SideChain Bus input which, in this case, is being fed by the keyboard input, so that the keyboard is triggering compression.
As with audio inputs, Layers are where you will most frequently be dealing with audio outputs. Unlike audio inputs, however, you can select multiple audio outputs in order to route the output of a Layer to multiple destinations.
The functions in the Layer Audio Outputs pane are the same as in the Layer Audio Inputs pane. See Figure 11 above for their identification.
To access the audio output(s) for a Layer:
- Click the colored box on the left end of the Layer whose audio output you want to assign. The Layer Settings panel will appear.
- Click the Audio Outputs tab and a list appears of all of the audio outputs you have defined in Camelot. Note that the interface output(s) used is listed in small print beneath the Camelot audio output name.
- Alternatively, clicking the audio output name above the fader on the right end of the Layer will also open the Audio Outputs pane.
- Click one or more outputs in the list to which you want to feed the Layer’s audio path.
Figure 15 - In the Layer Audio Outputs pane you can select one or more outputs to which the Layer will be sent. Note the outputs in red at the bottom of the list, which have been created in Camelot but not yet assigned to interface outputs.
Another location where audio outputs are selected is in the Backing Tracks section of the Timeline view. Each Backing Track has an Audio Out area in which an audio output can be selected for that track using the same method as setting a Layer Audio Output.
Figure 16 - Each backing track in the Backing Tracks section of the Timeline view can be assigned to a different output. Note that the bottom track is assigned to multiple outputs.
Camelot’s Tempo & Sync panel features a metronome, which has its own audio output selection and output level. Access this panel by clicking on the Tempo & Sync button in the footer. The panel must be activated by turning the Send clock setting on before the output can be set. Once the panel is active, click the audio output name in the output section to set the audio output.
Figure 17 - The Tempo & Sync panel has its own audio output setting so that you can send a click out its own output. The panel must be activated before the output can be set.
Finally, Camelot’s Mixer panel has an Audio Out section where an audio output can be selected.
Figure 18 - The Mixer has group masters for backing tracks, Layers (all Layers in a scene), and the click (Metronome), plus a compressor, equalizer, delay, and reverb. It is intended to be used as the master output, but you can create a Setlist Rack Layer with a processing chain and use that as a master output instead, should you so choose.
Using a Layer as a Processing Chain
It is possible to use a Layer as a processing chain and/or a submix of audio inputs. Simply create a Layer for each audio input you want included, insert an Audio Connector on each and use those to route the signal from the audio input to the Layer containing the processing chain.
Figure 19 - This Layer has been set up to act like an aux send-driven master effects chain. Audio would be sent to it using Audio Layer Connector items in other Layers. Since it was built as a Song Rack Layer, it will remain in place through the whole Song, no matter how many Scene changes occur.