.TH "sources" 3 "Mon Aug 31 2015" "ccRTP" \" -*- nroff -*- .ad l .nh .SH NAME sources \- Participants and synchronization sources\&. .SS "Classes" .in +1c .ti -1c .RI "class \fBSDESItemsHolder\fP" .br .RI "\fIHolds the SDES items and related information from a participant in an RTP application\&. \fP" .ti -1c .RI "class \fBParticipant\fP" .br .RI "\fIA class of objects representing remote participants (RTP applications) in a multimedia session\&. \fP" .ti -1c .RI "class \fBSyncSource\fP" .br .RI "\fISynchronization source in an RTP session\&. \fP" .ti -1c .RI "class \fBRTPApplication\fP" .br .RI "\fIAn RTP application, holding identifying RTCP SDES item values\&. \fP" .ti -1c .RI "class \fBRTPApplication::ParticipantsIterator\fP" .br .RI "\fIIterator through the list of participants in this session\&. \fP" .in -1c .SS "Enumerations" .in +1c .ti -1c .RI "enum \fBSyncSource::State\fP { \fBSyncSource::stateUnknown\fP, \fBSyncSource::statePrevalid\fP, \fBSyncSource::stateActive\fP, \fBSyncSource::stateInactive\fP, \fBSyncSource::stateLeaving\fP }" .br .RI "\fISynchronization source states during an RTP session\&. \fP" .in -1c .SS "Functions" .in +1c .ti -1c .RI "__EXPORT \fBRTPApplication\fP & \fBdefaultApplication\fP ()" .br .RI "\fIGet the \fBRTPApplication\fP object for the 'default' application (the only one used by common applications -those that only implement one 'RTP application')\&. \fP" .in -1c .SH "Detailed Description" .PP .SH "Enumeration Type Documentation" .PP .SS "enum \fBSyncSource::State\fP" .PP 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 ( .PP \fBSee also:\fP .RS 4 \fBIncomingDataQueue::setMinValidPacketSequence()\fP)\&. Thus, the source will probably be in \fBstatePrevalid\fP before reaching one of the two states that indicate a valid source: \fBstateActive\fP and \fBstateInactive\fP\&. .RE .PP 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 \fBIncomingDataQueue::setSourceExpirationPeriod()\fP ), 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\&. .PP 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 \fBQueueRTCPManager::setLeavingDelay()\fP)\&. .PP Sources in statePrevalid and stateLeaving are not counted for the number of session members estimation\&. .PP \fBEnumerator\fP .in +1c .TP \fB\fIstateUnknown \fP\fP No valid packet has been received\&. .TP \fB\fIstatePrevalid \fP\fP Some packets have been\&. .TP \fB\fIstateActive \fP\fP received, but source validity not yet guaranteed\&. We currently receive packets .TP \fB\fIstateInactive \fP\fP (data or control) from this source\&. Was active in the near past but .TP \fB\fIstateLeaving \fP\fP no packet from this source has been received lately\&. An RTCP BYE has been received from the source\&. .SH "Function Documentation" .PP .SS "__EXPORT \fBRTPApplication\fP& defaultApplication ()" .PP Get the \fBRTPApplication\fP object for the 'default' application (the only one used by common applications -those that only implement one 'RTP application')\&. Note that this application object differs from all the others that may be defined in that it is automatically constructed by the ccRTP stack and its CNAME is automatically assigned (as user@host), whereas the other application objects' CNAME is provided to its constructor\&. .PP \fBExamples: \fP .in +1c \fBccrtptest\&.cpp\fP, \fBrtphello\&.cpp\fP, \fBrtplisten\&.cpp\fP, and \fBrtpsend\&.cpp\fP\&. .SH "Author" .PP Generated automatically by Doxygen for ccRTP from the source code\&.