syncsource(3)
NAME
SyncSource - Synchronization source in an RTP session.
SYNOPSIS
#include <sources.h> Public Types enum State { stateUnknown, statePrevalid, stateActive, stateInactive, stateLeaving } Synchronization source states during an RTP session. Public Member Functions SyncSource (uint32 ssrc) ~SyncSource () State getState () 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 Protected Member Functions SyncSource (const SyncSource &source) SyncSource & operator= (const SyncSource &source) Friends class SyncSourceHandler
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.org>
- Examples:
- ccrtptest.cpp, and rtplisten.cpp.
Member Enumeration Documentation
- enum SyncSource::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 ( - See also:
IncomingDataQueue::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. - Enumerator:
- stateUnknown
No valid packet has been received.
- statePrevalid
Some packets have been received, but source validity not yet
guaranteed. - stateActive
We currently receive packets (data or control) from this source.
- stateInactive
Was active in the near past but no packet from this source has
been received lately. - stateLeaving
An RTCP BYE has been received from the source.
Constructor & Destructor Documentation
- SyncSource::SyncSource (uint32 ssrc)
- Parameters:
ssrc SSRC identifier of the source, unique in each session.
- SyncSource::~SyncSource () SyncSource::SyncSource (const SyncSource & source) [protected]
- Parameters:
source The RTPSource object being copied
Member Function Documentation
- State SyncSource::getState () const [inline] bool SyncSource::isSender () const [inline]
- Whether this source sends RTP data packets.
- Examples:
ccrtptest.cpp.
- uint32 SyncSource::getID () const [inline]
- Examples:
ccrtptest.cpp, and rtplisten.cpp.
- Participant* SyncSource::getParticipant () const [inline]
- Get the participant this synchronization source is asociated to.
- Return values:
NULL if the stack has not been yet able to identify the participant this source is associated to.
- Examples:
ccrtptest.cpp, and rtplisten.cpp.
- tpport_t SyncSource::getDataTransportPort () const [inline]
- Examples:
ccrtptest.cpp, and rtplisten.cpp.
- tpport_t SyncSource::getControlTransportPort () const [inline]
- Examples:
ccrtptest.cpp, and rtplisten.cpp.
- const InetAddress& SyncSource::getNetworkAddress () const [inline]
- Examples:
ccrtptest.cpp, and rtplisten.cpp.
- SyncSource& SyncSource::operator= (const SyncSource & source) [protected]
Friends And Related Function Documentation
friend class SyncSourceHandler [friend]
Author
- Generated automatically by Doxygen for ccRTP from the source code.