Music

Unlike a normal sound recording, electronic music is stored on a computer as a sequence of events, such as note on and note off instructions, which can trigger synthesised or sampled sounds of a suitable pitch. This operates in a similar way to a piano roll in an old player piano.

A file containing a sequence can hold a lot of music. For example, Beethoven’s Moonlight Sonata in this form only occupies 76 KB of disk space. Similarly, the first 205 sonatas of Scarlatti can be fitted into a file of only 1.5 MB, with a total playing time of over six hours. To store this as a full-quality audio recording would demand around 1.8 GB of disc space.

Sequencers

The software used to create and manipulate a sequence is known as a sequencer. Professional applications of this kind include Cubase (Steinberg), Digital Performer (Mark of the Unicorn), Logic (originally Emagic, now Apple), ProTools (Digidesign) and the obsolete Studio Vision Pro (Opcode). Less demanding users can use GarageBand (Apple), which is really a cut-down version of Soundtrack (Apple), but with an added MIDI capability. Most sequencing programs also accommodate digital sound recording and processing, allowing real sounds to be used alongside a sequence.

Choosing an Application

When deciding on a sequencing application you must consider the cost, its compatibility with any extra hardware you may want to use, such as audio cards, accelerator cards and FireWire accelerators, the number of tracks that you need to record, the number of physical inputs and outputs required (both audio and MIDI) and the capabilities of your computer.

The following points are worth noting:-

Inside a Sequencing Application

To hear your work, the sequencer must drive a synthesiser, either in the form of software (sometimes imitating the appearance and sound output of an older instrument) or external hardware. With the latter, sequences are played via one or more external musical devices wired via a Musical Instrument Digital Interface (MIDI) adaptor. Those without any such equipment may also be able to use the QuickTime Music Synthesiser (see below).

A sequence can be displayed in several ways. The most rudimentary form is known as a MIDI event list. The one shown below appears in a Classic Mac OS application known as MIDIGraphy (M Maeda). As you can see, this presentation is entirely unmusical, although the information that it provides can be useful for weeding out any events that cause problems.

The graphical display below, also provided by MIDIGraphy, is much better, with each note and its length represented as a line: the notes with a higher pitch appear further up the display. The loudness of each note, also known as its velocity, is shown by a separate row of vertical lines.

In the end, most musicians want a real musical score, as shown below in PlayerPRO (Antoine Rosset), an excellent music program that accommodates SoundTracker music files.

As with other applications, you can use cut, copy and paste, but here you can modify parts of a sequence or use special features within the software to change the characteristics of one or more notes.

Timing

All sequencers employ a clock that measures the elapsed time within a sequence. The accuracy of this clock, typically running at 960 pulses per quarter note (PPQN) in modern sequencers, determines the timing accuracy of the notes. Most sequencers can display this time in various forms: GarageBand, for example, shows measures (bars), beats (quarter notes), sub-beats (quarters of a beat) and ticks (pulses, equal to 1240 of a sub-beat or 1960 of a beat), although it can also show hours, minutes, seconds and thousandths of a second. Professional applications, on the other hand, often display frames (and sometimes fractions of frames) instead of fractions of a second. This is useful when working for television, where each frame corresponds to a complete picture, usually running at a rate of 50 or 60 frames per second (frm/s or fps).

Sequencers and QuickTime Music

As detailed below, QuickTime includes a QuickTime Music Synthesiser that lets you use your computer as a synthesiser. Unfortunately, some sequencers can’t use this without extra software, such as QuickTime MIDI Player (Terry Greeniaus): this works in the Classic Mac OS, but only if your sequencer is compatible with Apple MIDI Manager (see below).

Plug-ins

Sequencers can often work in conjunction with plug-ins that provide extra digital sound processing (DSP) capability. Traditional types include MAS, RTAS and VST, usually matching the hardware in your sound card or adaptor, although these proprietary formats are being overtaken by Audio Units plug-ins, which work with the Core Audio and Core MIDI elements of Mac OS X.

The following varieties of plug-ins are in common use:-

Audio Units (AU)

As built into Mac OS X and supported by Peak 4, Logic 6 and Digital Performer 4, as well as later versions of these applications. This format is likely to replace most of the older plug-ins for the Mac.

Host Time Division Multiplexing (HTDM)

An updated version of TDM (see below) that also works with older applications designed for TDM plug-ins, including ProTools and some versions of Logic Audio. Unlike the original TDM format, these plug-ins use the computer’s processor for DSP, rather than the card’s hardware, and are really a hybrid of RTAS and TDM technology (see below).

Time Division Multiplexing (TDM)

This common format employs the hardware in a TDM card for signal processing. Note that some TDM plug-ins are also known as virtual instruments.

MOTU Audio System (MAS)

As used with products from Mark of the Unicorn, such as Digital Performer. A special MAS plug-in allows VST plug-ins to also be used with Performer, although the results can be variable.

Real Time Audio Suite (RTAS)

A plug-in that employs the computer for signal processing, as used in the LE version of ProTools.

VST

A popular plug-in, as used in Cubase VST, Nuendo and older versions of Studio Vision and Logic Audio. With Audio Units active in Mac OS X these plug-ins are disabled, although VST-AU Adaptor (FXpansion Audio) can be used to convert any Carbonised plug-in to the Audio Units format. The multi-track form of VST is known as Audio Stream Input Output (ASIO), whilst an improved form of ASIO, known as ASIO 2, reduces the time delays that can be introduced by signal processing.

QuickTime Music

QuickTime lets you play music on a computer without using a sequencer program, synthesiser application or any external instruments. As well as 58 standard instruments and a drum kit, modern versions of QuickTime include a set of General MIDI (GM) instruments from Roland known as the Virtual Sound Canvas (VSC-88H). This provides 128 extra instruments on top of the normal GM set, as well as 100 other sounds that are compatible with Roland’s GS variation of GM.

Playing a Sequence

A musical sequence can be played in QuickTime Player in the same way as a movie, including control via the normal keyboard shortcuts. And, assuming you’ve selected QuickTime Music Synthesiser in QuickTime, you’ll hear the tune through the computer’s audio output.

QuickTime movies are also used for audio recordings or other data. If you’re unsure about the contents of a movie, open it in QuickTime Player and select Movie ➡ Get Movie Properties. This gives a Properties window that should have an entry for Music Track in the top-left pop-up, as shown below. If you see Sound Track instead, you’re looking at a sound file.

Each track in such a MIDI sequence can be assigned to one of many instruments, such as Acoustic Grand Piano, Electric Guitar Muted and many others. If the sequence is in the General MIDI (GM) format, each track is automatically given an appropriate instrument. The instruments used for the tracks are displayed in the Properties window, as shown below.

Double-clicking on an instrument provides extra details, such as:-

which indicates that this track has been assigned an instrument known as Tremolo Strings. You can use this pop-up to select an alternative instrument, which you can try out using the small keyboard.

Having modified your MIDI sequence you can select File ➡ Export to save the result as a Standard MIDI file or as an AIFF sound file. Alternatively, you can choose File ➡ Save As to create a QuickTime movie containing the sequence.

MIDI Hardware

To use external devices, your computer must have a MIDI adaptor, often confusingly known as a MIDI interface. Its connections must match the ports on your computer, so a USB-equipped machine needs a USB MIDI adaptor, whilst an older computer with serial ports (usually labelled as Modem and Printer) must have a serial MIDI adaptor.

Simple MIDI Adaptors

In this kind of adaptor, data travels in both directions between the MIDI sockets and the corresponding port (or ports) on the computer. And the MIDI outputs on the adaptor are often duplicated so that you can feed several devices. A simple studio system based on this kind of interface is shown below:-

Intelligent MIDI Adaptors

An intelligent interface usually has its own processor and provides 15 MIDI inputs and outputs or more. Data from each MIDI circuit is multiplexed, wrapped inside codes that identify the MIDI circuit and then sent via the port (or ports) of the computer at an accelerated rate.

A MIDI system using an intelligent adaptor could be set up as shown below:-

The diagram below shows how the software could be set up to use such an adaptor. In fact, this particular arrangement was actually used in a BBC Radiophonic Workshop studio in the eighties, employing an Opcode Studio 5 MIDI adaptor.

MIDI Protocols

Every kind of MIDI adaptor needs software at the system level to convey data from a sequencing application to the adaptor’s MIDI ports. Several of these MIDI protocols are available, although not all sequencing applications and adaptors are compatible with every protocol .

The following protocols, listed in order of development, can be encountered:-

Standard MIDI

This Classic Mac OS protocol conveys MIDI data via a simple MIDI adaptor and a serial port. The MIDI driver software is actually contained within each application, resulting in unpredictable behaviour when you quit a Standard MIDI application or switch between applications.

The dialogue shown below is used to set up the interface within each application:-

As you can see, the adaptor box provides a clock signal which is divided down by the application.

MIDI Manager

This Classic Mac OS protocol, developed by Apple, keeps control of MIDI at all times, whatever program is active. However, it only works with compatible applications. Note that most applications that use this mechanism require MIDI Manager, even if a MIDI interface isn’t actually connected.

The PatchBay application gives access to the MIDI inputs and outputs of all running MIDI applications, as well as the MIDI adaptor, which is denoted by a special icon. Under normal circumstances you can create a MIDI link by ‘drawing’ a line between the appropriate icons. Typically, you’ll have three links between a sequencing application and an adaptor: the MIDI output of the application, shown by a arrow, its MIDI input, shown by a arrow and its timecode input, represented by the symbol.

Open Music System (OMS)

OMS, originally known as the Opcode MIDI System, works with intelligent MIDI adaptors in the Classic Mac OS. Unfortunately, Opcode has now ceased trading, bringing developments to a close.

Most versions of the OMS package include the Open Music System extension file, the OMS Preferred Device control panel, the OMS Folder, the OMS Setup application, the Studio Patches Editor application and numerous other documents. These include drivers that support various types of MIDI adaptors and external hardware, as well as the QuickTime Music OMS Driver, which allows sequencing applications to play music via the QuickTime Music Synthesiser.

OMS and MIDI Manager

Applications designed for OMS are usually compatible with MIDI Manager, although they’re entirely independent of it. However, Apple’s PatchBay application can be used to direct OMS MIDI data to and from the MIDI Manager system, as shown in the following screen shot.

In this example, the MIDI data generated by a MIDI Manager-compatible application known as QuickPatch has been directed into the OMS system. In addition, the timecode data from the OMS system, shown by the icon and usually generated by a compatible MIDI adaptor, has been sent to the timecode input of Opcode’s StudioVision application. If you double-click on the OMS icon, the following window appears, which shows how MIDI Manager data is used by OMS:-

This contains two lists of OMS devices, a top section for those that generate data and a bottom section for those that accept data. In this instance there’s an Opcode Studio 5 MIDI adaptor (labelled as Studio 5-2 cables since it uses both serial ports on the computer) and a device called the Router.

Both the MIDI data generated by the adaptor, shown by a symbol, and its timecode information, shown by the icon, are available to PatchBay. In this example, the data from the PatchBay application, shown by a icon, is directed to the Router. Referring back to PatchBay, you can see that this allows the QuickPatch application to control the Router, which is actually a MIDI-controlled audio switching matrix.

In addition, OMS MIDI Manager has been set to receive timecode at 25 fps (frames per second). The Filter Timecode feature is enabled, so as to segregate timecode from other MIDI data.

Free MIDI

This system, commonly used by Mark of the Unicorn (MOTU), can also be used in conjunction with OMS, as well as with a USB MIDI adaptor, although it’s not suitable for Mac OS X.

Core MIDI

Mac OS X incorporates its own application programming interfaces (APIs) for handling audio and MIDI data. These consist of Core Audio, which accommodates multi-channel sound sampled at 32 or 96 kHz, Core MIDI, which handles sequencing, replacing older mechanisms such as Free MIDI or OMS, and Audio Units, whose plug-in technology can be used instead of older systems.

Music Files

The following list describes some of the more common file formats, complete with filename extensions, shown in order of preference, and Classic Mac OS type codes. Those shown with a QuickTime icon can be opened using the applications in the QuickTime package.

The most common formats found on the Mac OS are:-

Standard MIDI File (SMF/MMF)

.mid/.midi/.kar Midi

This kind of file contains a MIDI sequence, but not the sounds of the instruments in the music.

Standard MIDI files come in the following types:-

Type 0

In this kind of file all the tracks from an original sequence are stored in a single track. This means that any muted tracks in your sequence aren’t saved. However, this format can be useful if you want to create different files that don’t include unwanted tracks.

Type 1

In this kind of file each track is stored independently. In addition, any combination of MIDI channels can be used in each track. When you re-open a saved file the sequence runs exactly as before.

Some applications create a Type 1 file by unmerging a sequence, assigning notes on MIDI channel 1 to track 1, those on channel 2 to track 2, and so on. A similar technique can combine several tracks on the one MIDI channel into a single track. For example, eight tracks of guitar on channel 5 can be combined into a new track 5, although the resultant file can be tricky to edit at a later date.

Type 2

A variation of Type 1, rarely encountered.

MOD Files and Derivatives

.mod .Strk Also see below

The music module (MOD) format was originally used by SoundTracker, an application for the Amiga computer. It stores a sequence as well as the digitised sounds of the instruments in the sequence: hence long compositions only require a comparatively small file. Each file accommodates up to 32 separate sound tracks of 32 instruments with up to 128 patterns and positions. It can use musical notes in the range C2 to B5 and stores the song name as text within the file.

The following table shows common variations of MOD files, including the standard filename extensions and the usual type code employed for each kind of file in the Classic Mac OS.

ExtMac ​TypeApps
.6696669Composer ​669 or ​Unis ​Composer
.itIT<sp>​<sp>Impulse ​Tracker
.madMADC ​
.medMED<sp>Music ​Editor or ​OctaMED ​(4 ​to ​16 ​track ​MMD0​/1/2 ​formats)
.modSTrkAmiga ​Sound​Tracker ​and ​others
.mtmMTM<sp>Multi​Tracker
.oktOKTAOktalyzer ​(4 ​to ​8 ​track)
.s3mS3M<sp>Scream ​Tracker ​3
.stm????Scream ​Tracker ​2
.xmXM<sp><sp>Fast​Tracker ​2/Digital ​Tracker

<sp> Indicates space character

Also MADF, MADI, MADH

©Ray White 2004.