Microsoft DirectX 8.1 (C++)

Audiopath Form

The following notation shows the organization of the audiopath form.

RIFF( 'DMAP' 
  [<guid-ck>]    // GUID for path.
  [<vers-ck>]    // Version information.
  [<UNFO-list>]  // Name, author, copyright, comments.
  [<DMTG-form>]  // Toolgraph.
  [<pcsl-list>]  // Port configurations.
  [<dbfl-list>]... // DirectSound buffer descriptors.
)

All elements are optional.

<guid-ck>, <vers-ck>, <UNFO-list>

For information on these three chunks, see Common Chunks.

<DMTG-form>

See Toolgraph Form.

<pcsl-list>

Information about the configuration of ports is stored in this list.

<pcsl-list> -> LIST( 'pcsl'
  <pcfl-list>...
  )

The port configuration list consists of an array of lists in the following format:

LIST( 'pcfl' 
  <pcfh-ck>    // Header chunk.
  <pprh-ck>    // Port parameters used to create the port.
  [<dbfl-list>]... // DirectSound buffer descriptors.
  [<pchl-list>]  // Pchannel-to-buffer assignments.
  )

The port configuration list consists of several chunks, starting with headers describing the port configuration and parameters:

<pcfh-ck> -> pcfh( <DMUS_IO_PORTCONFIG_HEADER> )
 
<pprh-ck> -> pprh( <DMUS_PORTPARAMS8> )

The optional buffer descriptors are each contained in a chunk with the following format.

<dbfl-list> -> LIST( 'dbfl'
  <ddah-ck>   // Buffer attributes header 
  [<DSBC-form>] // Buffer configuration
)

This buffer description list begins with a header describing buffer attributes.

<ddah-ck> -> ( 'ddah' < DMUS_IO_BUFFER_ATTRIBUTES_HEADER > )

The header is followed by an optional DirectSound Buffer Configuration Form. This is not required for standard buffer types.

The final chunk in the port configuration list is a list containing one or more assignments of performance channels to buffers.

pchl-list -> LIST( 'pchl'
  <pchh-ck>...  
)

This list consists of an array of chunks, each of which describes one assignment of channels to buffers.

<pchh-ck> -> pchh(
  <DMUS_IO_PCHANNELTOBUFFER_HEADER>
  <GUID>... // Array of GUIDs specifying the buffers.
)

<dbfl-list>

The last part of the audiopath form consists of optional buffer descriptors identical in format to those in the port configuration list, <pcsl-list>.