Introduction to Computer Based Music
If you’re new to the world of computer based music this sections explains a few of the basic concepts you’ll need to understand to get the most of Cantabile. If you’re already familiar with computer music you can skip this section.
MIDI vs Audio
In computer music, there are two main ways of representing musical information:
- Audio - Audio data is a digital representation of the actual sound waves that make up sound. WAV and MP3 files are typical ways to store audio data. Computer software can be used to process audio data to apply effects such as reverb, echo etc...
- MIDI - MIDI is standard way of recording the notes that make a piece of music. MIDI doesn’t necessarily define the sound of each note so a MIDI file can be played back with a different instrument to which it was recorded. MIDI is not limited to notes – it can also be used to represent other controls such as damper pedals, modulation wheel data and more.
Think of audio as similar to storing music on a CD whereas MIDI is more like sheet music.
Synthesis, Virtual Instruments and Audio Effects
Sound synthesis is the process of taking musical notes (typically represented as MIDI data) and converting it into an digital sound. ie: the process of converting MIDI to audio.
A virtual instrument is a piece of computer software that performs this process. For example, a virtual piano accepts MIDI notes as input and generates the sound of a piano playing those notes.
An audio effect is a piece of software that manipulates an audio signal. This could be anything from simply making it louder of softer, to widening the stereo width or applying sophisticated reverb effects (eg: recreating the sound of a large cathedral).
Plug-ins and Hosts
Computer music software typically falls into one of two main categories – plugins and hosts.
- A host is the main program that a user uses to create their music and provides the framework for routing audio and MIDI between external devices and loadable modules called plugins.
- A plugin is a software module that is loaded by a host to perform a specific function. Plugins fall into two main categories – instruments and effects (as described above). Other plugin types include MIDI effects (which generate MIDI), surround sound processors and analysers.
Cantabile is a host application that is designed for real-time performance. This means it’s designed for connecting a MIDI keyboard, microphones and other devices and processing them in real-time.
Cantabile does not include any plugins and as such you’ll need to acquire these separately. Free and commercial plugins are available from many different software developers. There are a number of different plugin formats available, though Cantabile only supports the most popular – VST. VST (short for Virtual Studio Technology) is a standard defined by Steinberg.
A good source of information on available plugins is KVR Audio.
An audio driver is a piece of software that knows how to communicate with a sound card. Cantabile uses audio drivers to allow it to work with many different types of sound cards. In order to use Cantabile you will need a compatible audio driver.
One of the most important features of a good audio driver and sound card is the ability to deliver low-latency audio. Latency is a term used to describe the time delay between the computer generating a sound and the sound being heard. It also describes the delay between receiving a sound and that sound being delivered to the computer software. Latency is measured in milliseconds and ideally you will want a latency of no more than about 10ms.
Cantabile supports two different audio driver standards:
ASIO - short for Audio Stream Input/Output is a standard specified by Steinberg. ASIO generally offers very low latency and is the preferred type of audio driver.
WASAPI - (Windows Audio Session API) is a Microsoft technology for audio streaming.
If your sound card came with an ASIO driver you should use that driver – particularly if it is a professional quality sound card. If your sound card did not come with an ASIO driver a good option is the excellent generic ASIO driver ASIO4ALL available from http://www.asio4all.com.
In addition to these standard audio driver types, Cantabile also includes a Null audio driver. The null audio driver doesn’t produce any sounds but allows the audio engine to run as if a sound card was attached. This is mostly useful for using Cantabile as a MIDI only processor.
In addition to a good audio driver you'll also need MIDI drivers for any connected MIDI devices. Typically these come with the device and there's no choice in which driver to use. If you've lost the driver for a piece of hardware it can typically be download from the manufacturer's website.