Jitsi: the OpenSource Java VoIP and Instant Messaging client.

net.java.sip.communicator.impl.neomedia
Class RTPTranslatorImpl

java.lang.Object
  extended by net.java.sip.communicator.impl.neomedia.RTPTranslatorImpl
All Implemented Interfaces:
EventListener, javax.media.rtp.ReceiveStreamListener, RTPTranslator

public class RTPTranslatorImpl
extends Object
implements javax.media.rtp.ReceiveStreamListener, RTPTranslator

Implements RTPTranslator which represents an RTP translator which forwards RTP and RTCP traffic between multiple MediaStreams.

Author:
Lyubomir Marinov

Constructor Summary
RTPTranslatorImpl()
          Initializes a new RTPTranslatorImpl instance.
 
Method Summary
 void addFormat(StreamRTPManager streamRTPManager, javax.media.Format format, int payloadType)
           
 void addReceiveStreamListener(StreamRTPManager streamRTPManager, javax.media.rtp.ReceiveStreamListener listener)
           
 void addRemoteListener(StreamRTPManager streamRTPManager, javax.media.rtp.RemoteListener listener)
           
 void addSendStreamListener(StreamRTPManager streamRTPManager, javax.media.rtp.SendStreamListener listener)
           
 void addSessionListener(StreamRTPManager streamRTPManager, javax.media.rtp.SessionListener listener)
           
 javax.media.rtp.SendStream createSendStream(StreamRTPManager streamRTPManager, javax.media.protocol.DataSource dataSource, int streamIndex)
           
 void dispose()
          Releases the resources allocated by this instance in the course of its execution and prepares it to be garbage collected.
 void dispose(StreamRTPManager streamRTPManager)
           
 Object getControl(StreamRTPManager streamRTPManager, String controlType)
           
 javax.media.rtp.GlobalReceptionStats getGlobalReceptionStats(StreamRTPManager streamRTPManager)
           
 javax.media.rtp.GlobalTransmissionStats getGlobalTransmissionStats(StreamRTPManager streamRTPManager)
           
 long getLocalSSRC(StreamRTPManager streamRTPManager)
           
 Vector<javax.media.rtp.ReceiveStream> getReceiveStreams(StreamRTPManager streamRTPManager)
           
 Vector<javax.media.rtp.SendStream> getSendStreams(StreamRTPManager streamRTPManager)
           
 void initialize(StreamRTPManager streamRTPManager, javax.media.rtp.RTPConnector connector)
           
 void removeReceiveStreamListener(StreamRTPManager streamRTPManager, javax.media.rtp.ReceiveStreamListener listener)
           
 void removeRemoteListener(StreamRTPManager streamRTPManager, javax.media.rtp.RemoteListener listener)
           
 void removeSendStreamListener(StreamRTPManager streamRTPManager, javax.media.rtp.SendStreamListener listener)
           
 void removeSessionListener(StreamRTPManager streamRTPManager, javax.media.rtp.SessionListener listener)
           
 void update(javax.media.rtp.event.ReceiveStreamEvent event)
          Notifies this ReceiveStreamListener about a specific event related to a ReceiveStream.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

RTPTranslatorImpl

public RTPTranslatorImpl()
Initializes a new RTPTranslatorImpl instance.

Method Detail

addFormat

public void addFormat(StreamRTPManager streamRTPManager,
                      javax.media.Format format,
                      int payloadType)

addReceiveStreamListener

public void addReceiveStreamListener(StreamRTPManager streamRTPManager,
                                     javax.media.rtp.ReceiveStreamListener listener)

addRemoteListener

public void addRemoteListener(StreamRTPManager streamRTPManager,
                              javax.media.rtp.RemoteListener listener)

addSendStreamListener

public void addSendStreamListener(StreamRTPManager streamRTPManager,
                                  javax.media.rtp.SendStreamListener listener)

addSessionListener

public void addSessionListener(StreamRTPManager streamRTPManager,
                               javax.media.rtp.SessionListener listener)

createSendStream

public javax.media.rtp.SendStream createSendStream(StreamRTPManager streamRTPManager,
                                                   javax.media.protocol.DataSource dataSource,
                                                   int streamIndex)
                                            throws IOException,
                                                   javax.media.format.UnsupportedFormatException
Throws:
IOException
javax.media.format.UnsupportedFormatException

dispose

public void dispose()
Releases the resources allocated by this instance in the course of its execution and prepares it to be garbage collected.

Specified by:
dispose in interface RTPTranslator

dispose

public void dispose(StreamRTPManager streamRTPManager)

getControl

public Object getControl(StreamRTPManager streamRTPManager,
                         String controlType)

getGlobalReceptionStats

public javax.media.rtp.GlobalReceptionStats getGlobalReceptionStats(StreamRTPManager streamRTPManager)

getGlobalTransmissionStats

public javax.media.rtp.GlobalTransmissionStats getGlobalTransmissionStats(StreamRTPManager streamRTPManager)

getLocalSSRC

public long getLocalSSRC(StreamRTPManager streamRTPManager)

getReceiveStreams

public Vector<javax.media.rtp.ReceiveStream> getReceiveStreams(StreamRTPManager streamRTPManager)

getSendStreams

public Vector<javax.media.rtp.SendStream> getSendStreams(StreamRTPManager streamRTPManager)

initialize

public void initialize(StreamRTPManager streamRTPManager,
                       javax.media.rtp.RTPConnector connector)

removeReceiveStreamListener

public void removeReceiveStreamListener(StreamRTPManager streamRTPManager,
                                        javax.media.rtp.ReceiveStreamListener listener)

removeRemoteListener

public void removeRemoteListener(StreamRTPManager streamRTPManager,
                                 javax.media.rtp.RemoteListener listener)

removeSendStreamListener

public void removeSendStreamListener(StreamRTPManager streamRTPManager,
                                     javax.media.rtp.SendStreamListener listener)

removeSessionListener

public void removeSessionListener(StreamRTPManager streamRTPManager,
                                  javax.media.rtp.SessionListener listener)

update

public void update(javax.media.rtp.event.ReceiveStreamEvent event)
Notifies this ReceiveStreamListener about a specific event related to a ReceiveStream.

Specified by:
update in interface javax.media.rtp.ReceiveStreamListener
Parameters:
event - a ReceiveStreamEvent which contains the specifics of the event this ReceiveStreamListener is being notified about
See Also:
ReceiveStreamListener.update(ReceiveStreamEvent)

Jitsi: the OpenSource Java VoIP and Instant Messaging client.

Jitsi, the OpenSource Java VoIP and Instant Messaging client.
Distributable under LGPL license.