Main Page | Modules | File List | Globals | Related Pages | Examples



ASX Reference Manual


ASX is an audio API designed to work on both Windows and Linux operating systems. It is "high level", in that unlike say the Windows WAVE or Direct Sound APIs, which are "buffer based", it deals with audio files.

At a lower level, ASX supports the AudioScience HPI API (Windows and Linux) as well as WAVE and DirectSound (Windows) and ALSA (Linux).

The API is a C function library. This means it can be used from many languages including C, C++, Visual Basic and Delphi.


Installation and Usage

Windows 2000 and XP

  1. Make sure you have an AudioScience WAVE or WDM driver installed and working with at least one audio adapter.
  2. Obtain the ASX SDK executable file from the applications section of the AudioScience web site (<>). The file is named ASX_SDK_WIN_XXX.EXE, where XXX is the version number.
  3. Run the ASX_SDK_WIN_XXX.EXE application to install both the ASX32.DLL which implements the ASX interface documented here and ASICTRL.EXE which is a Win32 application that uses the ASX interface to control ASI adapters.



Compiling applications that use the ASX interface.

The various interface files required to interface with asx32.dll are typically installed in c:\Program Files\AudioScience\ASX\lib directory.

Applications can make use of asx.h and asxstring.h header files and should link against asx.lib.

ASX Object Model

In ASX, the underlying audio hardware is grouped into "adapters". An adapter is typically a soundcard (i.e. AudioScience ASI6114).

Each adapter has a "mixer". The mixer contains source and destination "nodes". A node represents a point at which audio comes in (source) or leaves (destination) the mixer.

Source nodes include:

Destination nodes include:

Nodes are attached to "controls" which contain functionality to process the audio streams passing through them. Examples of controls include:

The following diagram shows how ASX models a simple sound card:


Coding Conventions

Method names

Variable names use Hungarian notation, i.e.

Return conventions All functions return ASX_ERROR which equals 0 on success and non-zero on error.

Generated on Wed Oct 3 15:04:44 2007 for ASX by  doxygen