DirectConnect and Mac OS X

For those of you who have not seen any of my previous postings, please let me quickly introduce myself; My name is Adrian Haselhuber, and I am the Digidesign product manager for MIDI and music features. One of the areas I'm overseeing is third party synth/sampler plug-ins and their integration with Pro Tools via DirectConnect.

I've read the DirectConnect threads on the Digidesign Users Conference, and it appears there are many questions about what DirectConnect actually is, why it has not shipped with Pro Tools 6.0, and how it relates to other plug-in interfaces such as RTAS. Please allow me to make our DirectConnect strategy a little more transparent but beware, this will be a long read!

Here's a summarized list of the items I will cover:

  • DirectConnect on OS X
  • Comparison of DirectConnect with RTAS and HTDM
  • ReWire
  • RTAS on disk tracks
  • Emagic ESB

Will DirectConnect Ever Ship On OS X?

Well, that's a good question. Let me put it this way: Is it meaningful to ship DirectConnect on OS X if there's no third party software that's compatible with it? As some of you have pointed out already most of our third party developers are seeking to streamline their product portfolios and the amount of formats they have to support. Think about it… there is TDM, RTAS, HTDM, AudioSuite, MAS, VST, DX, AU and probably even more I can't think of right now. Plus there are Mac and Windows platforms to support on top of that. If you were a developer you would have to ask yourself if you should put most of your resources into creating all those different formats, or into new product development. The answer to this question is pretty obvious and companies like Native Instruments have already publicly stated that they are not going to support DirectConnect (or HTDM) for that very reason. I can tell you that we have a great relationship with our third party developers and we do respect those decisions, even if it means work on our end (I'll expand more on this work further down in this document).

So, you might ask, how about doing DirectConnect anyway? It can't be too much work, can it? Truth is, DirectConnect is quite difficult to write on OS X mostly due to new "security" features like protected memory spaces for each application. I don't want to use this statement as an excuse though, we certainly could create an OS X version of DirectConnect. You hopefully understand that we need a good reason to go ahead and bite off this significant chunk of work. Given the situation described in the previous paragraph there is currently no incentive for redirecting resources and as a result DirectConnect work has been put "on hold." Last but not least I should mention that there's the Windows portion of work as well that adds on top of what we would have to do on OS X. If we'd do DirectConnect on OS X our customers would also expect it to also eventually appear on Windows.

Given all this, our feeling is that it just doesn't make sense to continue DirectConnect development. So there will most likely be no DirectConnect on OS X or Windows.

Is DirectConnect The Better Solution When Compared With RTAS and HTDM?

In a nutshell: no. Quite the opposite! RTAS and HTDM plug-ins have some significant advantages over DirectConnect synth and sampler applications as listed here:

  • RTAS/HTDM plug-ins offer much tighter integration.
  • RTAS/HTDM plug-ins are way easier to set up and use.
  • RTAS/HTDM plug-ins fully support "total recall" of all settings.
  • RTAS/HTDM plug-ins fully support Pro Tools' automation system and control surfaces.

Let's discuss some of those points briefly. When setting up an RTAS synthesizer with Pro Tools for the first time you have to go through two steps:

  1. Instantiate plug-in
  2. Assign MIDI node

When using a DirectConnect application you have to go through seven steps:

  1. Make sure OMS IAC driver is installed (or install it).
  2. Create IAC bus.
  3. Launch synth/sampler application.
  4. Make sure synth/sampler application is set up correctly.
  5. Instantiate DirectConnect plug-in in Pro Tools.
  6. Pick desired output path from DirectConnect plug-in.
  7. Assign MIDI node.

To be fair, the first four steps happen only the first time you set up DirectConnect for a certain application but it's clear that the RTAS/HTDM plug-in approach is easier to understand and easier to use.

How about "total recall" in DirectConnect? Well, for most DirectConnect-compatible applications it doesn't work because it wasn't implemented by our third parties. While Soft SampleCell allowed recall of the banks you used with a particular session, all other products force you to manually keep track of your third party program setup. RTAS and HTDM plug-ins recall their setup automatically and without the slightest chance of error.

Last but not least, any Pro Tools plug-in supports the automation system and control surfaces at almost no additional development cost. That in itself is a killer feature that you won't be able to realize with external applications. Think about the amount of work to create MIDI controller playlists to remotely change filter cutoff etc. versus Pro Tools automation where you need one mouseclick to enable any parameter for automation

To summarize this section, there is nothing that you as a user should be concerned about when DirectConnect-compatible applications get turned into RTAS or HTDM plug-ins.

What If An External Application Cannot Be Made Into A Plug-In?

As most of you know we announced a cooperation with Propellerhead Software that will bring ReWire to the Pro Tools Mac and Windows platform in the second half of 2003. If you are a third party developer and for some reason you cannot (or don't want to) create a Pro Tools-compatible plug-in you can now take advantage of an open non-Digidesign interface to create Pro Tools connectivity. In addition you'll also make your product compatible with just about any MIDI/Audio sequencer on the market. Personally I am very excited about this development and I'm sure that it will spark quite a few potential partners out there to add ReWire to their application. At least you finally get to use all this cool existing stuff like Reason and Live with Pro Tools!

But I Can't Use RTAS Plug-Ins On TDM Aux Inputs!!!

Before diving into this matter please allow me to explain the question to all the non-TDM (or non-Pro Tools) users reading through this page. Pro Tools TDM systems employ the power of dedicated DSP chips on Mix or HD TDM cards for plug-in processing. Most of the host CPU is idling because all it needs to do is shoveling data from and to disk drives and doing screen updates (OK, there's a bunch more but that's not relevant to make the point).

A couple years ago we thought: Wouldn't it be nice to allow using the host CPU power in addition to those DSP cards? And that's exactly what we did when we allowed RTAS plug-ins to be used on disk tracks (requires Pro Tools v5.1 and higher). The reason for using RTAS only on disk tracks is rooted in technical hurdles when inserting a host-based process between the disk stream and our TDM environment. RTAS on Aux was a significant undertaking at the time and so we left the feature as "disk tracks only", because at that time it was very powerful for the majority of typical signal processing plug-ins such as EQs and Compressors.

So, here we are today. RTAS processing is currently limited to disk tracks on a TDM system (by the way, there's obviously no limitation on Pro Tools LE systems because there's no host-to-PCI bridge to cross for DSP) but these are not insurmountable issues if you consider some facts. Let's look at this in question and answer format;

Q: Is it true that I have to use RTAS plug-ins before TDM plug-ins?
A: Yes, that's correct. We insert the RTAS process between the disk stream and TDM processing so you cannot use RTAS plug-ins after TDM plug-ins.

Q: Isn't this a real problem?
A: While the RTAS-TDM ordering requirement is a slight inconvenience for regular signal processors - it is no issue at all for host-based synthesizers and samplers because they act as sound generators and by definition have to be instantiated before other (TDM) signal processors.

Q: But if I use RTAS instruments on disk tracks I will diminish the number of tracks I can use for audio!
A: True, but this is nothing new. DirectConnect has always had the same limitation, although in a slightly different form. Consult your DigiRack user guide (v5.1 or higher, if you're on earlier Pro Tools versions please check the DirectConnect guide and/or read me file) and read the DirectConnect section. I quote: "Each channel of audio transmitted through DirectConnect uses the same amount of resources as a single audio track in Pro Tools." It all boils down to the amount of PCI traffic we can ask the host CPU to manage as we stream audio data from host memory (disk buffers or host-based synths) into TDM. The only difference is that previously we didn't protect you from running into "PCI Bus Too Busy (-6042)" warnings whereas now you are guaranteed to not see this message when using excessive amounts of host-based synthesizers.

Q: How about the latency of RTAS? Isn't it higher than DirectConnect?
A: No, it isn't. In fact, using RTAS plug-ins allows you to adjust the amount of latency you want to work with as opposed to the two fixed latency settings in StreamManager (the component that makes DirectConnect work). You can set latency to the same exact values as in StreamManager but you can also go higher if your CPU can't keep up, or you set it lower if you want to improve responsiveness when playing instruments in real time. That's a major benefit.

Q: I still hate the idea of using RTAS on disk tracks. Are you thinking about making RTAS work on Aux inputs?
A: That's definitively an area we're looking to improve, even though it is a large amount of work. While I'd love to give you more details about our plans it's a bit too early to discuss publicly. Suffice to say we're well aware of this request and we intend to give you the tools you're asking for.

Q: But there's nothing available for RTAS. All the cool stuff I use today is DirectConnect-only.
A: That might be true today on OS 9 but this picture will change very quickly over the next few months. I don't know how many of you had a chance to visit this year's NAMM show but let me tell you that there will be a large amount of very exciting synthesis and sampler products made available for RTAS on both OS X and Windows XP. You will see instruments made by Native Instruments, IK Multimedia, Yellow Tools, Arturia, Emagic and many, many more. If you don't mind, please check out our online third party developer section at www.digidesign.com/developers or visit our third party developer's web sites and read for yourself!

Logic Audio ESB

Wow. You're still reading? We appreciate your interest. This is the last discussion section. If you are not using Logic or you don't know what ESB is feel free to skip this section…

Some of you have brought up concern about Logic's ESB (Emagic System Bridge) feature and its availability on OS X. To make a long story short, there's nothing to worry about. To the best of my knowledge: Logic will fully support ESB in a Logic 6.0 sub-release very soon after their initial shipment. Here's a useful link to an Emagic ESB information page:
http://www.emagic.de/english/news/2003/tdmcollection.html

If you are familiar with ESB today you'll know that ESB requires the presence of DirectConnect. So how can Emagic do ESB without DirectConnect? Thanks to close collaboration between the two companies we've established a way to allow ESB on OS X without the need for DirectConnect. While I haven't seen ESB working under OS X myself I'm sure that you won't be disappointed. For any kind of question regarding ESB please contact Emagic directly.

Summary

To sum things up, we realize that during the OS X transition there will be some growing pains, as there always are with any major change. I hope that we have shared some valuable insights today and that you now understand why we believe the absence of DirectConnect on OS X is an opportunity for even better solutions. As always I do appreciate your feedback so feel free to email me directly, or give me a call at the phone number below. Thank you for taking the time to read through this lengthy statement!

All the best,

Adrian Haselhuber
Product Manager MIDI/Synth/Sampling
Digidesign, a division of Avid
-------------------------
Phone: +1.650.731.6505
Fax: +1.650.731.6399
Email: Adrian_Haselhuber@digidesign.com
Digidesign Website: www.digidesign.com


Digidesign Compatibility Documents Index