Synchronization source in an RTP session.
More...
#include <sources.h>
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 fedem.nosp@m.p@al.nosp@m.tern..nosp@m.org
Definition at line 195 of file sources.h.
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.
|
Definition at line 228 of file sources.h.
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 |
tpport_t SyncSource::getControlTransportPort |
( |
| ) |
const |
|
inline |
tpport_t SyncSource::getDataTransportPort |
( |
| ) |
const |
|
inline |
uint32 SyncSource::getID |
( |
| ) |
const |
|
inline |
void* SyncSource::getLink |
( |
| ) |
const |
|
inlineprivate |
const InetAddress& SyncSource::getNetworkAddress |
( |
| ) |
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. |
Definition at line 271 of file sources.h.
State SyncSource::getState |
( |
| ) |
const |
|
inline |
bool SyncSource::isSender |
( |
| ) |
const |
|
inline |
Whether this source sends RTP data packets.
Definition at line 257 of file sources.h.
void SyncSource::setControlTransportPort |
( |
tpport_t |
p | ) |
|
|
inlineprivate |
void SyncSource::setDataTransportPort |
( |
tpport_t |
p | ) |
|
|
inlineprivate |
void SyncSource::setLink |
( |
void * |
l | ) |
|
|
inlineprivate |
void SyncSource::setSender |
( |
bool |
active | ) |
|
|
inlineprivate |
Mark this source as an active sender.
Definition at line 303 of file sources.h.
void SyncSource::setState |
( |
State |
st | ) |
|
|
inlineprivate |
bool SyncSource::activeSender |
|
private |
tpport_t SyncSource::controlTransportPort |
|
private |
The documentation for this class was generated from the following file: