net.sf.fmj.media.multiplexer
Class RTPSyncBufferMux

java.lang.Object
  extended by net.sf.fmj.media.AbstractControls
      extended by net.sf.fmj.media.AbstractPlugIn
          extended by net.sf.fmj.media.AbstractMultiplexer
              extended by net.sf.fmj.media.multiplexer.RawBufferMux
                  extended by net.sf.fmj.media.multiplexer.RTPSyncBufferMux
All Implemented Interfaces:
Controls, Multiplexer, PlugIn

public class RTPSyncBufferMux
extends RawBufferMux

Intended to replace Sun's RTPSyncBufferMux, which is for multiplexing RTP streams to be transmitted, and presumably synchronizing them as well. Sun's RTPSyncBufferMux extends RawSynBufferMux. Not sure what any of these really do, for now all we need is a RawBufferMux with the correct content descriptor. TODO: implement the "sync" part of this. This means we sleep to match the timestamps.

Author:
Ken Larson

Field Summary
 
Fields inherited from class net.sf.fmj.media.AbstractMultiplexer
inputFormats, numTracks, outputContentDescriptor
 
Fields inherited from interface javax.media.PlugIn
BUFFER_PROCESSED_FAILED, BUFFER_PROCESSED_OK, INPUT_BUFFER_NOT_CONSUMED, OUTPUT_BUFFER_NOT_FILLED, PLUGIN_TERMINATED
 
Constructor Summary
RTPSyncBufferMux()
           
 
Method Summary
 java.lang.String getName()
           
 void open()
           
 int process(Buffer buffer, int trackID)
           
 Format setInputFormat(Format format, int trackID)
           
 
Methods inherited from class net.sf.fmj.media.multiplexer.RawBufferMux
close, getDataOutput, getSupportedInputFormats, getSupportedOutputContentDescriptors, setNumTracks
 
Methods inherited from class net.sf.fmj.media.AbstractMultiplexer
setContentDescriptor
 
Methods inherited from class net.sf.fmj.media.AbstractPlugIn
reset
 
Methods inherited from class net.sf.fmj.media.AbstractControls
addControl, getControl, getControls, removeControl
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface javax.media.PlugIn
reset
 
Methods inherited from interface javax.media.Controls
getControl, getControls
 

Constructor Detail

RTPSyncBufferMux

public RTPSyncBufferMux()
Method Detail

getName

public java.lang.String getName()
Specified by:
getName in interface PlugIn
Overrides:
getName in class AbstractPlugIn

setInputFormat

public Format setInputFormat(Format format,
                             int trackID)
Specified by:
setInputFormat in interface Multiplexer
Overrides:
setInputFormat in class RawBufferMux

open

public void open()
          throws ResourceUnavailableException
Specified by:
open in interface PlugIn
Overrides:
open in class RawBufferMux
Throws:
ResourceUnavailableException

process

public int process(Buffer buffer,
                   int trackID)
Specified by:
process in interface Multiplexer
Overrides:
process in class RawBufferMux