You are here

Final Cut Pro; VST To Audio Units

Apple Notes
By Mark Wherry

Soundtrack is a new Acid-like music production application included with Final Cut Pro 4.Soundtrack is a new Acid-like music production application included with Final Cut Pro 4.

This month saw the first signs of Emagic's technology being used in Final Cut Pro, and we also take a look at a utility that allows OS X-compatible VST plug-ins to be converted into Audio Units.

Apple promised to unveil a "strategic direction for digital video production technologies" at this year's National Association of Broadcasters (NAB) show in Las Vegas, and delivered on this promise by announcing major updates to its line of professional video applications: Final Cut Pro 4, Shake 3, and DVD Studio 2. Shake 3, Apple's advanced digital compositing software acquired with the purchase of Nothing Real in February 2002, now has support for AIFF and Wave files, which can be synchronised with visual effects, while DVD Studio 2 has been rewritten from the ground up to provide new features like the timeline-based track editor. But, despite many other enhancements that will benefit those working with video, one of the most interesting additions to Final Cut Pro 4 is Soundtrack, a new application for adding music to your video productions.

Soundtrack is very similar to Acid in that it allows you to produce music based on audio loops, and several thousand royalty-free instrument loops and sound effects are included to get you started — additional material can be imported from AIFF, Wave and Acid-format files. One of the the best things about Soundtrack is that, as in Acid, you can combine loops of different tempos and the application will automatically play everything back in time at the chosen tempo. Other neat tricks include special Scoring Markers to make it easy to synchronise the music and video, and a powerful search engine allowing you to search for audio clips based on various criteria.

Whether Soundtrack has benefited internally from Emagic's expertise is matter for speculation, especially since Soundtrack seems far more in line with Final Cut Pro than Logic. However, both Final Cut Pro and Soundtrack do include a selection of Emagic's effects from Logic Platinum, including SubBass, Bitcrusher and Auto Filter, which are part of over 30 bundled audio effects that are fully automatable, along with support for Audio Units plug-ins.

Wrapper Time

While Emagic might be busy adding plug-ins to Final Cut Pro, their decision not to implement VST plug-in support for Logic in OS X always provided room for an inventive programmer to come along and write what has affectionately become known as a wrapper, providing a way for OS X-compatible VST plug-ins to run as Audio Units. A wrapper is so called because it metaphorically 'wraps' its own code around the existing plug-in, creating a layer that acts as a host for the original plug-in (an OS X-compatible VST plug-in, for example) and presenting this combination to your host application in the guise of a compatible plug-in (an Audio Units plug-in, in this case). And this is exactly what Fxpansion (www.fxpansion.com) developer Angus Hewlett has created: the imaginatively named VST To Audio Units Adapter converts OS X-compatible VST plug-ins to Audio Units.

Logic for OS X — now with support for VST plug-ins. Well, almost.Logic for OS X — now with support for VST plug-ins. Well, almost.

It's important to stress that in order for the for the VST To Audio Units Adapter to do its thing, the VST plug-ins you're converting must already be OS X-compatible — OS 9 plug-ins, as you might expect, are not supported. The adaptor supports both Carbon CFM and Mach-O VST plug-ins under OS X, and these terms refer to the run-time architecture used by a VST plug-in. A run-time architecture is basically a set of rules that defines how a program's code is compiled and run within an operating system, specifying how actual program instructions and data are addressed. Most executable files under OS X are stored in the Mach-O file format, and files such as kernel extensions, libraries, system applications, frameworks, and so on, are all implemented as Mach-O files.

Despite the fact the Mac OS X kernel only reads Mach-O files directly, OS X itself does support other run-time architectures in order to make it easier for developers to port their applications and plug-ins to OS X. CFM (Code Fragment Manager) was the run-time architecture used for executable files in the Classic Mac OS, and so Carbon-CFM is a halfway step, allowing developers to link their Carbonised code to Mach-O. However, while Apple recommend Mach-O as the file format of choice for executables in OS X, most OS X-compatible VST plug-ins have been Carbon-CFM-based for legacy reasons, although support for Mach-O VST plug-ins is becoming more widespread. BIAS's Sound Soap, as an OS X-only VST plug-in, for example, is a Mach-O VST plug-in.

Getting back to the adaptor, Angus was kind enough to let me try out the beta versions, and although the first version of the adaptor had already been publicly released at the time of writing, a later beta version of the adaptor became available for testing just before this Apple Notes column went to press, adding support for VST plug-ins that can receive tempo information, and implementing internal handling of VST preset files, amongst other improvements.

Using VST To Audio Units Adapter

Unlike many wrappers, which need to be run from the host with a degree of user interaction, VST To Audio Units Adapter actually takes the original Audio Units file and saves out a new version as a dedicated VST plug-in, so your VST plug-ins appear in the Audio Units host as if they were any other Audio Units plug-in. The conversion process itself couldn't be simpler: just run VST-AU Adapter Configuration Utility and click the 'Detect and convert VST plug-ins' button. The utility will automatically scan your global and user-specific VST plug-in folders (in addition to a local VST plug-ins folder inside the utility's own folder) looking for suitable Carbon-CFM and Mach-O VST plug-ins, and save out converted Audio Units plug-ins to either your global or user Audio Units folder, depending on the Options you've set in the utility's main window.

VST-AU Configuration Utility is used to convert your existing VST plug-ins into Audio Units.VST-AU Configuration Utility is used to convert your existing VST plug-ins into Audio Units.

Once the conversion process has been carried out, all of the successfully converted VST plug-ins will be available as Audio Units the next time you run an Audio Units host, such as Logic Audio, Digital Performer 4, and so on. I was using Logic 6, which is one of two versions recommended by Fxpansion (the other being 5.3) because there's an issue with Logic 5.5 where the graphical interface of the plug-in doesn't receive mouse clicks correctly, although this is apparently a Logic issue, rather than a side-effect of the conversion.

I tested a variety of free and commercial instrument and effects VST plug-ins, and most worked exactly as you'd imagine them to, including Rob Papen's Albino synth, and other Linplug instruments. Fxpansion themselves have successfully tested the adaptor with plug-ins from AAS, Antares, Arturia, Bitheadz, Bitshift Audio, Destroyfx, Digital Fish Phones, DMI, Dsound, Elemental Audio, Gmedia, Green Oak, INA-GRM, LinPlug, MDA, Ohm Force, Prosoniq, PSP, reFX, Silverspike, Spectrasonics, Steinberg, Swar Systems, Synapse Audio, TC Works, Waldorf, Waves, and Yellow Tools. Quite a list, I think you'll agree, and the latest beta offers improved support for some of the more awkward Steinberg plug-ins, such as Virtual Guitarist, Groove Agent and Halion String Player, although I personally had some troubles getting Virtual Guitarist Electric Edition to work.

In terms of CPU overheads, Fxpansion claim that the wrapper code added to a VST plug-in requires less than 0.1 percent of CPU resources for each instance used on a 550MHz PowerBook G4, so I don't think performance is going to be an issue, even for those with the most modest of systems.

There's no doubt that VST To Audio Units Adapter is a very clever piece of coding, and while it's going to be hard to engineer something that's 100 percent compatible with every OS X plug-in, Fxpansion seem to have done an amazing job with this much-needed solution for Logic users, in particular, who are missing their VST plug-ins. VST To Audio Units Adapter is available now directly from Fxpansion's site (www.fxpansion.com) and costs $75.

Apple Updates

Not content with the fairly major updates announced at NAB, Apple have also been busy releasing Mac OS 10.2.5, a second Safari public beta, and speed-bumped iBooks. The first of these updates, Mac OS 10.2.5, is now available as an updater for 10.2.4 users and a 'combo' updater for 10.2.x users, as per normal, and these can be downloaded from Apple's web site or via Software Update.

Many Mac users, myself included, were excited by the 'Apple does a web browser' announcement of Safari and the first public beta release; but many Mac users, myself included, later went back to Chimera, Camino, or whatever it's called this month, due to the lack of tabbed browsing and automatically form-filling features. However, with the release of the second public beta of Safari, both of these features are now included, along with the ability to import Navigator and Mozilla bookmarks and improved AppleScript support. Safari now seems like a real option for serious web browsing and there are significantly fewer pages being displayed incorrectly in this latest release — it's become my browser of choice in the SOS office. Visit www.apple.com/safari for more information.

And, last but not least, Apple speed-bumped the iBook range of consumer notebooks, which now feature faster 800 or 900 MHz G3 processors. Many Apple observers are speculating that this could signal the final chapter for the iBook in its current form, and it's possible we could see completely new iBooks later in this, Apple's year of the notebook.

Published June 2003