You are here

Q. How can I get two different audio programs to both use my SW1000XG soundcard?

By Martin Walker
Published August 2000

A new upgrade for Bitheadz Unity DS1 is now available which provides Rewire compatibility — great news for many MIDI + Audio sequencer users.A new upgrade for Bitheadz Unity DS1 is now available which provides Rewire compatibility — great news for many MIDI + Audio sequencer users.

I have a Yamaha SW1000XG soundcard and, even though it's one of the best audio/MIDI cards around in my opinion, it doesn't do sampling. I therefore decided to get a software sampler and chose Unity DS1, only to find that I can't use it at the same time as using Cubase VST! After reading the SOS article some months back about multi‑client drivers I got even more confused. It said that the SW1000XG can have different programs routing to different outputs, yet I still can't assign VST and DS1 to use different sets.

I'm tearing my hair out, because I got Unity thinking that it would allow me to use sampling alongside my sequencer.

David Beebee

Martin Walker Replies:The multi‑client feature mainly examined the SW1000XG with regards to MIDI use — it is certainly possible to run several MIDI applications with it, such as the example I used with Cubase VST and XGedit. However, although allocating the audio channels of a multi‑output soundcard to different applications is possible, it can be fraught with problems depending on which type of drivers are supported. Fortunately, there's an easy solution for your particular combination of Cubase VST, Unity DS1 and the SW1000XG soundcard, but before I come to that here's a more detailed list of what to try, for the benefit of musicians with a different set of products.

ASIO drivers always grab every input and output for their own use, which unfortunately means that you have to forego low latency and use other drivers if you want to run a second stand‑alone application alongside your MIDI + Audio sequencer. DirectSound drivers are a good possibility for software synths and samplers, since they normally have lower latency than MME ones, but they are not so suitable for sequencer use, since they don't support audio recording. So, the best solution when running two audio applications is to use the MME drivers for your MIDI + Audio sequencer, and DirectSound drivers for the software sampler.

You will still need to disable a pair of outputs in the Cubase ASIO Multimedia (MME) driver setup, so that they can be used by the other application. However, Cubase always grabs outputs 1 and 2, whatever you set in the ASIO Multimedia setup, so you need to disable one of the other pairs for use with any other application.

Another confusion in your particular case is that Unity DS1 doesn't let you see which output pair it is using if you have a multi‑output soundcard — you simply choose DirectSound or ASIO in the Output section of its Control Panel utility — but it actually uses the 'preferred audio playback device' set in the Multimedia section of Control Panel. I tried running Unity DS1 with Yamaha's DirectSound drivers, by selecting 'SW1000 #6 WAVE OUT' as the preferred output in Control Panel/Multimedia, and then choosing DirectSound drivers inside Unity. I then disabled this same stereo output in the ASIO Multimedia setup of Cubase VST, and I got both VST and Unity working together. However, the SW1000XG DirectSound drivers only currently support outputs 1 and 2, leaving the others with emulated support which still gives lots of glitching.

Thankfully you have a far better solution if you download the latest Unity DS1 version 1.3.0 update from the Bitheadz web site (www.bitheadz.com). This has Rewire support, and using this I got Unity working perfectly alongside Cubase VST using the latest Yamaha SW1000XG ASIO drivers with 30mS latency. Here's how to do it:

  • 1. Select 'Plugin' in the Output section of the Unity Control Panel to choose Rewire support.
  • 2. Launch the Setup MME utility for Cubase VST, and make sure that the 'Unity DS1 Sampling Synthesiser' output is active. Then click on OK.
  • 3. Launch Cubase VST, and it will automatically load the Unity DS1 Engine.
  • 4. Launch the Unity Editor and load in some sounds.
  • 5. Open the Rewire option in the Cubase Audio menu, and enable whichever Unity inputs you want to use (Main L and Main R will get you started).
  • 6. Select a suitable MIDI track and select 'Unity DS1 Sampling Syn' as its output in the Inspector. Now you can play any of your Unity sounds inside Cubase VST with 30mS latency, and add either ASIO, DirectX, or Yamaha hardware effects!

There are two morals here. First, problems can sometimes be resolved easily by updating your software to the latest version. Second, buying a software synth or sampler with support for Rewire or VST Instrument technology can make your life an awful lot easier if you want to run it alongside Cubase VST.