Package cnrg.itx.datax

Provides iterfaces and classes for the basic audio data transfer.

See:
          Description

Interface Summary
Destination Inteface to abstract a destination.
Properties Interface that exports the setting and getting of properties on a device.
Property Interface to abstract a property object.
Source Interface to specify a generic push source.
Statistics Interface for objects to return statistics.
 

Class Summary
AudioConnection Class to represent an audio connection.
Channel Class representing a channel in the Connection object.
ChannelBuffer Looks like a channel, actually just a buffer.
ChannelProperty Class to implement a channel property.
Connection Abstract class for creating and managing an endpoint of communication.
ConnectionProperty Class to implement the properties of a connection.
DummyChannel Channel that doesn't ever copy data.
MixerChannel MixerChannel acts as a channel with multiple inputs.
PropertiesCollection Class to implement a collection of properties.
PropertiesNegotiation  
Stats Class to represent statistics.
 

Exception Summary
DataException Parent exception class.
DuplicateDestinationException Class thrown when trying to add the same source to a channel twice.
 

Package cnrg.itx.datax Description

Provides iterfaces and classes for the basic audio data transfer. The framework allows various audio devices to be chained together. The basic datax object is the Connection. The Connection allows devices to be seperated into two logical "channels", the input channel and output channel. Each channel has one source with any number of destinations. The source "feeds" the channel, which in turn pushes data to each of the destinations. The input channel will receive data for the connection, while the output channel sends data out of the connection (to a remote AudioConnection, for example).

There are a set of standard devices in cnrg.itx.datax.devices which implement the cnrg.itx.datax.Source and cnrg.itx.datax.Destination interfaces. To use a custom source or destination, you would need to implement the appropriate interface. Typically, however, passing java input and output streams to the StreamSource and StreamDestination would be much easier.

The devices in a channel will exchange Properties in a PropertiesCollection. This is to ensure that all devices are sending data in a compatible format. Each device will implement the Properies interface which allows for getting properties, and setting remote properties.