Synchronization source in an RTP session.
More...
#include <sources.h>
List of all members.
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
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
tpport_t SyncSource::getControlTransportPort |
( |
|
) |
const [inline] |
tpport_t SyncSource::getDataTransportPort |
( |
|
) |
const [inline] |
uint32 SyncSource::getID |
( |
|
) |
const [inline] |
const InetAddress& SyncSource::getNetworkAddress |
( |
|
) |
const [inline] |
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.
State SyncSource::getState |
( |
|
) |
const [inline] |
bool SyncSource::isSender |
( |
|
) |
const [inline] |
Whether this source sends RTP data packets.
- Examples:
- ccrtptest.cpp.
Friends And Related Function Documentation
The documentation for this class was generated from the following file: