net.sf.fmj.media.multiplexer
Class AbstractStreamCopyMux
java.lang.Object
net.sf.fmj.media.AbstractControls
net.sf.fmj.media.AbstractPlugIn
net.sf.fmj.media.AbstractMultiplexer
net.sf.fmj.media.multiplexer.AbstractStreamCopyMux
- All Implemented Interfaces:
- Controls, Multiplexer, PlugIn
- Direct Known Subclasses:
- JavaSoundMux, RawMux
public abstract class AbstractStreamCopyMux
- extends AbstractMultiplexer
Mux that can be implemented simply by copying streams.
Override createInputStreamPushDataSource and create an
overridden version of StreamCopyPushDataSource overriding write.
- Author:
- Ken Larson
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
AbstractStreamCopyMux
public AbstractStreamCopyMux(ContentDescriptor contentDescriptor)
getDataOutput
public DataSource getDataOutput()
getSupportedInputFormats
public abstract Format[] getSupportedInputFormats()
close
public void close()
- Specified by:
close
in interface PlugIn
- Overrides:
close
in class AbstractPlugIn
open
public void open()
throws ResourceUnavailableException
- Specified by:
open
in interface PlugIn
- Overrides:
open
in class AbstractPlugIn
- Throws:
ResourceUnavailableException
getSupportedOutputContentDescriptors
public ContentDescriptor[] getSupportedOutputContentDescriptors(Format[] inputs)
process
public int process(Buffer buffer,
int trackID)
setNumTracks
public int setNumTracks(int numTracks)
- Specified by:
setNumTracks
in interface Multiplexer
- Overrides:
setNumTracks
in class AbstractMultiplexer
createInputStreamPushDataSource
protected StreamCopyPushDataSource createInputStreamPushDataSource(ContentDescriptor outputContentDescriptor,
int numTracks,
java.io.InputStream[] inputStreams,
Format[] inputFormats)