next up previous contents index
Next: Profiles Up: Inter-Application Data Flow Previous: Connections

Sources

      The mmstream.source package includes the abstract Source class and its LocalSource, and RemoteSource abstract subclasses. They all comply to the StreamExporter interface, and therefore have a Master_Clock object as well as registerStream() and exportChunk() methods. The Source class offers implementations of those methods that take all necessary measures for registering a Stream object and for exporting Chunk objects to the known Stream objects.
A RemoteSource object represents a data sending entity located on a remote host, whose multimedia data stream the RemoteSource object feeds into the local data flow. LocalSource objects are responsible for the network transmission of a locally generated multimedia data stream.

In addition, the Source class serves as a deposit for user information, such as cnames or phone numbers. Moreover, Source objects maintain transmission statistics; therefore,the Source class itself defines the abstract getSenderStats() method, which returns a SenderStatistics object, containing the number of sent chunks and octets as well as the current transmission bandwidth and chunk rate. The RemoteSource class adds the getReceptionStats() method. The ReceptionStatistics object returned by this method describes the reception of data from the sender represented by the RemoteSource object. The ReceptionStatistics object contains a jitter value, the number of received chunks and octets, an estimate of the absolute number and fraction of packets lost, a jitter calculation, and the current bandwidth and chunk rate of the received traffic.

Instantiatable subclasses of the LocalSource and RemoteSource classes are provided by additional protocol-specific packages, such as the mmstream.protocols.rtp package.



tspeuker@cip.informatik.uni-erlangen.de