logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

SyncSource - Synchronization source in an RTP session.

Author

       Generated automatically by Doxygen for ccRTP from the source code.

                                                      ccRTP                                        SyncSource(3)

Constructor & Destructor Documentation

SyncSource::SyncSource(uint32ssrc)Parametersssrc SSRC identifier of the source, unique in each session.

   SyncSource::~SyncSource()SyncSource::SyncSource(constSyncSource&source)[protected]Parameterssource The RTPSource object being copied

Detailed Description

       Synchronization source in an RTP session.

       Each synchronization source in an RTP session is identified by a 32-bit numeric SSRC identifier. Each
       SyncSource object is related to a Participant object, which can be retrieved through the getParticipant()
       method.

       Author
           Federico Montesino Pouzols fedemp@altern.orgExamplesccrtptest.cpp, and rtplisten.cpp.

Member Enumeration Documentation

enumSyncSource::State
       Synchronization source states during an RTP session. In general, new synchronization sources are not
       considered valid until multiple valid data packets or a valid RTCP compound packet has been received from
       the new source (

       SeealsoIncomingDataQueue::setMinValidPacketSequence()). Thus, the source will probably be in statePrevalid
           before reaching one of the two states that indicate a valid source: stateActive and stateInactive.

       A valid participant is in stateActive state if RTP and/or RTCP packets are currently being received from
       it. If, after a small number of RTCP report intervals (see IncomingDataQueue::setSourceExpirationPeriod()
       ), no packets are received, it will reach the stateInactive state. If, after a small number of RTCP
       report intervals, no packet is received from an inactive source, it will be deleted.

       If RTCP is being used, after receiving a BYE RTCP packet from a synchronization source, it will reach the
       stateLeaving state and will be deleted after a delay (see QueueRTCPManager::setLeavingDelay()).

       Sources in statePrevalid and stateLeaving are not counted for the number of session members estimation.

       EnumeratorstateUnknown
              No valid packet has been received.

       statePrevalid
              Some packets have been.

       stateActive
              received, but source validity not yet guaranteed. We currently receive packets

       stateInactive
              (data or control) from this source. Was active in the near past but

       stateLeaving
              no  packet  from  this  source  has  been  received lately. An RTCP BYE has been received from the
              source.

Member Function Documentation

tpport_tSyncSource::getControlTransportPort()const[inline]Examplesccrtptest.cpp, and rtplisten.cpp.

   tpport_tSyncSource::getDataTransportPort()const[inline]Examplesccrtptest.cpp, and rtplisten.cpp.

   uint32SyncSource::getID()const[inline]Examplesccrtptest.cpp, and rtplisten.cpp.

   constInetAddress&SyncSource::getNetworkAddress()const[inline]Examplesccrtptest.cpp, and rtplisten.cpp.

   Participant*SyncSource::getParticipant()const[inline]
       Get the participant this synchronization source is asociated to.

       ReturnvaluesNULL if the stack has not been yet able to identify the participant this source is associated to.

       Examplesccrtptest.cpp, and rtplisten.cpp.

   StateSyncSource::getState()const[inline]boolSyncSource::isSender()const[inline]
       Whether this source sends RTP data packets.

       Examplesccrtptest.cpp.

   SyncSource&SyncSource::operator=(constSyncSource&source)[protected]

Name

       SyncSource - Synchronization source in an RTP session.

Synopsis

       #include <sources.h>

   PublicTypes
       enum State { stateUnknown, statePrevalid, stateActive, stateInactive, stateLeaving }
           Synchronization source states during an RTP session.

   PublicMemberFunctionsSyncSource (uint32 ssrc)
       ~SyncSource ()
       StategetState () const
       bool isSender () const
           Whether this source sends RTP data packets.
       uint32 getID () const
       Participant * getParticipant () const
           Get the participant this synchronization source is asociated to.
       tpport_t getDataTransportPort () const
       tpport_t getControlTransportPort () const
       const InetAddress & getNetworkAddress () const

   ProtectedMemberFunctionsSyncSource (const SyncSource &source)
       SyncSource & operator= (const SyncSource &source)

   Friends
       class SyncSourceHandler

See Also