XO Wave
Editions (Why Buy?)
Songs 4 Bugs
  XO Wave Tutorials
  Recording Basics
    OS X Maintenance
    Audio Performance
    Microphone Tips
    Stereo Mic'ing
    Time Code
  Tech Notes
  README files
  Search Documentation
Contacting Us
  Mailing Lists
format for printing

Important Notice: XO Wave is now discontinued as we prepare to bring you the next generation Digital Audio Workstation called Xonami. This site remains available for anyone who purchased XO Wave in the past. However, please keep in mind that as discontinued software:

  • This site may not contain up-to-date information.
  • Technical support is discontinued, though we will do our best to continue to provide email support, especially to anyone who purchased recently.

XO Wave: Optimizing Mac OS X Performance for Audio and Video Users

Getting sound in and our of your computer

Most users of XO Wave find it suits their needs out of the box, and never have to tweak system or XO Wave settings to get things to perform well. However, there are some things you can do to make XO Wave work even better -- especially if you have special needs such as low-latency recording, or you just want to tune the program to work better. The tips here are mostly in the former category, but we'll also cover some other settings as well. Most of these are applicable to other software that runs on OS X, as well.

Note: This tutorial is intended for users of Mac OS X.


Latency simply means delay. In digital audio, latency usually refers more specifically to two things: 1) the delay between doing something, such as pressing a button or moving a slider, and hearing the result; and 2) the time between when a sound goes into your sound hardware, and when it comes back out. Most modern computers that aren't loaded down with other tasks can handle the first of these tasks, but reducing the delay between input and output is still a problem in many situations.

When computers record, process, save, or playback audio, they do so in fixed-sized chunks. These chunks are called buffers, and they can be of any size. In order to minimize latency, the buffers should be as small as possible, so there is less delay between the various steps. In practice, using too small a buffer can cause high CPU usage as well as playback and recording problems, such as clicking sounds and dropouts.

The key to latency is finding the best balance, but before we do that, you should take a moment to consider your needs. Low latency can help if you are recording over-dubs, but often you don't need the absolute lowest latency. If you are doing live recordings, mixing, or mastering, you will generally be more concerned about playback reliability than latency. If you have hardware that supports so-called "zero latency" monitoring, you may not need to worry about latency at all, even if you are doing over-dubs. By using an external mixer, you can achieve the same results as zero-latency hardware even if your hardware doesn't support it directly.

Tips for Reducing Latency

Here are some tips for minimizing latency in XO Wave, assuming that's your goal:

  • If it ain't broke... First and foremost, the XO Wave defaults give a latency of roughly 50ms, depending on your hardware. The defaults have been found, especially on the Mac, to be quite reliable across a wide range of hardware. 50ms is about half the time it takes to blink, which is fine for most audio post-production, mastering, mixing, and even live recording. Furthermore, aggressively minimizing your latency can have negative or even disastrous side-effects such as increasing CPU load and causing audio dropouts and crackles.
  • Match your hardware: If you know the buffer size of your hardware, you can use that buffer size in XO Wave for the most reliable playback. To do so, go to the Latency Settings section of the Hardware Settings window and set the Sample per Buffer setting to match your hardware. If you want to try varying the latency, and your hardware has a fixed known buffer size, try changing the value of the # Playback Buffers field.
  • Watch out for RAM, too: Setting extremely high latency can cause XO Wave to use more RAM and fill up your memory cache which can cause playback problems. XO Wave allows you to control how many buffers are prepared in advance of playback. Setting this higher generally improves playback and recording reliability, but setting it too high will use up your RAM. See the Hardware Settings window documentation for more details.
  • Change the hardware: If your hardware allows you to change its buffer size, you are in a good position to reduce latency to very low levels. Depending on your hardware, you may be able to achieve 10ms or lower latency, which is often low enough for over-dubs, even without "zero latency" hardware monitoring. To do so, select a latency value for your hardware using the utility that came with it, and then match that value in XO Wave. We have found that values as low as 64 work well. Some experimentation may be needed to achieve the best results.

Tips for Improving Reliability

Because XO Wave is designed with both post-production and live recording in mind, the default settings are well optimized for reliable playback on most hardware. However, there are times when you'll need to tweak this, such as when running on unusual or untested hardware, if you hear crackles in your playback or in recording, or if you experience dropouts or buffer underruns. In these cases, something may need to be changed.

  • Match your hardware: As with optimizing for minimum latency, if you know the buffer size of your hardware, you can to use the same value in XO Wave for the most reliable playback. To do so, go to the Latency Settings section of the Hardware Settings window. If you want to be as conservative as possible, try a larger value in the # Playback Buffers field.
  • Work ahead: XO Wave allows you to control how many buffers are prepared in advance of playback. Generally speaking, you should set this higher to prevent dropouts if your system or your hard drive hiccups, but setting it too high can cause other problems: it uses up extra RAM, and may overwork your hard drive when playback starts. Generally speaking, you'll want to stick to the defaults unless there's a problem, and if there is, try a variety of settings and see what works. See the Hardware Settings window documentation for more details.

Tips for Improving Video Performance and Video Sync Accuracy

Generally speaking, you won't need to change anything in XO Wave to get good video performance, but if you notice a lag between your image and your sound, you may want to tweak the latency settings as described above. You may also want to try different hardware if there is a serious delay, as some hardware introduces delays of varying amounts, though nowadays most pro and even semi-pro hardware is up to the task.

The most important factor when doing an audio for video project is the video format. Because XO Wave uses the QuickTime video engine, any format that works well in QuickTime should work well in XO Wave; however, some formats require more overhead than others for certain tasks. Here are some comments based on our experience:

  • MPEG 4 is great for finished products. It produces high quality video that can be read by a variety of players and on the web, but it's not great for editing. We have found that the QuickTime engine can cause hiccups when jumping from location to location. This may vary depending on key frame rate, image quality and so on, and it won't stop you from working on something, but can be annoying when editing.
  • MPEG-2 is a high quality codec used in DVD authoring. It is also used in post-production. However, it requires a little extra work because the audio and video must be "demuxed", and it can occasionally cause QuickTime to hiccup for a few seconds -- or even up to a minute when opening the file or opening a new movie window. For more details, see our Technical on MPEG-2.
  • H.246 is a high-quality, high-performance codec that works well at a variety of compression levels. We've had good luck using it for a variety of purposes.
  • Cinepak has been around a while and it's not the best compression out there, but it does work well -- especially for playback and editing.

If you have trouble with a particular file, you can always convert to another format, or work with a reduced-size copy of the video, and then return to the high-res video for the final export.

For more info on working with video in XO Wave, see our tutorial on the subject.

Other Performance Tips

Here are some other tips for getting the best performance out of XO Wave.

  • Separate Users: Many people use a separate Mac OS X account for audio and other work. This may help organize your work and keep you from accidentally deleting your carefully crafted mixes, but it probably won't win you any performance. It may be a better investment of your time to set up a good backup system, unless you prefer to spend most of your time in a heavily customized environment, which isn't suitable for time-sensitive production work.
  • Mac OS: Some versions of Mac OS X 10.4 have lower latencies than others. As of this writing, Mac OS X 10.4.7 has shown very good latency. Some earlier versions were not as good.
  • Hard Drive: Using a good fast hard drive with a large cache can really improve your ability to record multiple tracks. Look for cache sizes of 8mb or more.
  • System Drive: If you are trying to record a lot of audio (either a long recording or one with many tracks) you'll want to use a drive other than your system drive. Extra free space on the drive helps to prevent fragmentation that can slow the system down.
  • Don't share your device: If another application is using the same hardware as XO Wave, it can cause XO Wave to stutter or choke. If you can, use one device, such as your built-in audio device, as the system default, and another device for XO Wave.
  • Activity Monitor: OS X has a handy utility called Activity Monitor. You can find it in your Applications folder under Utilities. This program lets you monitor the CPU and hard drive use of your applications, and it's useful if some rogue application is using a lot of your system's resources. It's also handy for just seeing what's going on.
  • Energy Efficiency vs. Performance: Unfortunately, high performance does not mean energy efficiency. If you are on a laptop, be sure to work plugged in if possible and make sure your Energy Saver settings (which can be set in System Preferences) are optimized for performance. You'll also want to turn off sleep options to keep your computer from going to sleep while recording. You may also want to turn off "Put the hard disk(s) to sleep when possible", just to be safe.
  • Don't share your bus: If you are using USB or FireWire, be sure to dedicate the bus to either your drive or your audio interface. Also, be sure to avoid hubs, keeping in mind that some hubs are internal. If you are unsure where the hubs are located or which devices share a bus, you can often get a clue by looking in System Profiler, located in the Applications folder under Utilities. Current Apple laptops have multiple accessible USB ports, but one might be on a shared bus -- perhaps with an internal Bluetooth adapter.

Legal & Copyright This page was last modified January 2008.
© XO Audio 2005-2008.
All rights reserved.