[an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive]

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.
[an error occurred while processing this directive]

XO Wave consists of several components, and it can be useful to know what they are and how they work together. This is entirely optional, though -- XO Wave normally manages all its components invisible and automatically on your behalf. For advanced users, however, it may be helpful to understand their roles.

On Mac OS X, all the components are contained in the "XO Wave.app" application bundle, which can be run and quit just like any other application. On Linux all the components are installed in an xowave directory, including an xowave script which launches the application.

XOgui: User Interface

XOgui is XO Wave's user interface (also called the "front end" or "GUI"). Written in Java, it handles all the visible controls (including windows, buttons, and dialog boxes). Under normal operation, XOgui starts the XO Wave programs as needed; on quit, it shuts down any other XO Wave components which haven't already finished and shut themselves down. It is also possible to install XO Wave such that the user manages the other components manually. See our Advanced Installation Guide for details. Note that Linux users will see a process called java in process listings, whereas Mac OS X users will see XOgui. As the master program, the GUI reads and writes .xo session files; it also reads waveform overviews (.ovrv files) created by XOengine.

XOmux: XO Wave Audio Engine Server and Multiplexer

The XO Wave front end does not actually perform audio processing or manipulate audio files itself. Instead it hands off all such requests to XOmux, which, in turn, creates XOengines as needed. This architecture allows considerable flexibility, including XOengines with different capabilities, and running a single copy of XO Wave on multiple machines.

XOengine: Audio Engine

The audio engine (also called the "back end") performs the actual audio processing (playing sounds, applying effects, reading and writing audio clips, etc.). XOengine also handles CD burning -- using Apple's APIs on Mac OS X, and via cdrecord on Linux. It appears as "XOengine" in ps/top. XOengine is also responsible for most of the work done by offline operations as well, including burning CDs, building and saving waveform overviews (.ovrv files), and exporting files (.aiff & .wav; also .mp3 and possibly other formats with third-party support).

[an error occurred while processing this directive]
[an error occurred while processing this directive]