- public interface PushBufferStream
- extends SourceStream
Abstracts a read interface that pushes data in the form of Buffer objects
This interface allows a source stream to transfer data in the form
of an entire media chunk to the user of this source stream. The
media object or chunk transferred is the Buffer object as defined in
javax.media.Buffer. The user of the stream will allocate an empty Buffer
object and pass this over to the source stream in the read() method.
The source stream will allocate the Buffer object's data and
header, set them on the Buffer and send them over to the user.
The structure of the data and header of the Buffer object is
determined by the format attribute of the Buffer object or the content type of
the source stream
It is possible for the user of the stream to indicate to the
source stream to NOT allocate the data object, but to
instead use the data passed in the read() method. In this case,
the user must pass non null data object to the stream in the Buffer
object. The type of data can be determined by the getDataType()
method on the format object returned by calling getFormat() on this
getDataType method will return an object
describing the Buffer's data and can be used by the stream user to allocate its
own data and hand it over to the read method.
- JMF 2.0
- See Also:
public Format getFormat()
- Get the format tupe of the data that this source stream provides.
Format object that describes the data in this stream.
public void read(Buffer buffer)
- Read from the stream without blocking.
- java.io.IOException - Thrown if an error occurs while reading
public void setTransferHandler(BufferTransferHandler transferHandler)
- Register an object to service data transfers to this stream.
If a handler is already registered when
setTransferHandler is called,
the handler is replaced;
there can only be one handler at a time. This method should be
invoked with a parameter value of
null if the currently
registered handler doesn't wish to be notified of available data anymore.
transferHandler - The handler to transfer data to.
Submit a bug or feature
Copyright 1999-2000 Sun Microsystems, Inc. 901 San Antonio Road, Palo Alto, California, 94303, U.S.A. All Rights Reserved. See the Specification License for more details.
Sun, Sun Microsystems, and Java are trademarks or registered trademarks of Sun Microsystems, Inc. in the US and other countries.