Sophie

Sophie

distrib > Mageia > 5 > x86_64 > media > core-release > by-pkgid > a2fa4fed774700990ee58705b206cf50 > files > 252

lib64ccrtp-devel-2.1.1-1.mga5.x86_64.rpm

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.8"/>
<title>ccRTP: Participants and synchronization sources.</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td style="padding-left: 0.5em;">
   <div id="projectname">ccRTP
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
      <li><a href="examples.html"><span>Examples</span></a></li>
    </ul>
  </div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#enum-members">Enumerations</a> &#124;
<a href="#func-members">Functions</a>  </div>
  <div class="headertitle">
<div class="title">Participants and synchronization sources.</div>  </div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_d_e_s_items_holder.html">SDESItemsHolder</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Holds the SDES items and related information from a participant in an RTP application.  <a href="class_s_d_e_s_items_holder.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_participant.html">Participant</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">A class of objects representing remote participants (RTP applications) in a multimedia session.  <a href="class_participant.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sync_source.html">SyncSource</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Synchronization source in an RTP session.  <a href="class_sync_source.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_r_t_p_application.html">RTPApplication</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">An RTP application, holding identifying RTCP SDES item values.  <a href="class_r_t_p_application.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_r_t_p_application_1_1_participants_iterator.html">RTPApplication::ParticipantsIterator</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Iterator through the list of participants in this session.  <a href="class_r_t_p_application_1_1_participants_iterator.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
Enumerations</h2></td></tr>
<tr class="memitem:gae1ed2a19bbfd03de69fbdfc044f2c5dc"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sources.html#gae1ed2a19bbfd03de69fbdfc044f2c5dc">SyncSource::State</a> { <br />
&#160;&#160;<a class="el" href="group__sources.html#ggae1ed2a19bbfd03de69fbdfc044f2c5dca9da650c2b6f936142c9cb8327074ca0c">SyncSource::stateUnknown</a>, 
<a class="el" href="group__sources.html#ggae1ed2a19bbfd03de69fbdfc044f2c5dca02d96a9f7e46e64298ac7b6174f31e89">SyncSource::statePrevalid</a>, 
<a class="el" href="group__sources.html#ggae1ed2a19bbfd03de69fbdfc044f2c5dca5be3203fa0ead7600c5eae6599139876">SyncSource::stateActive</a>, 
<a class="el" href="group__sources.html#ggae1ed2a19bbfd03de69fbdfc044f2c5dca59ef5b5115a418a31877ec7a17a266d3">SyncSource::stateInactive</a>, 
<br />
&#160;&#160;<a class="el" href="group__sources.html#ggae1ed2a19bbfd03de69fbdfc044f2c5dcab50b90a686532c1acea01fab12c4574b">SyncSource::stateLeaving</a>
<br />
 }</td></tr>
<tr class="memdesc:gae1ed2a19bbfd03de69fbdfc044f2c5dc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Synchronization source states during an RTP session.  <a href="group__sources.html#gae1ed2a19bbfd03de69fbdfc044f2c5dc">More...</a><br /></td></tr>
<tr class="separator:gae1ed2a19bbfd03de69fbdfc044f2c5dc"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:ga206420a8423d0c261e9bfc5a388a9534"><td class="memItemLeft" align="right" valign="top">__EXPORT <a class="el" href="class_r_t_p_application.html">RTPApplication</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sources.html#ga206420a8423d0c261e9bfc5a388a9534">defaultApplication</a> ()</td></tr>
<tr class="memdesc:ga206420a8423d0c261e9bfc5a388a9534"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the <a class="el" href="class_r_t_p_application.html" title="An RTP application, holding identifying RTCP SDES item values. ">RTPApplication</a> object for the "default" application (the only one used by common applications -those that only implement one "RTP application").  <a href="#ga206420a8423d0c261e9bfc5a388a9534">More...</a><br /></td></tr>
<tr class="separator:ga206420a8423d0c261e9bfc5a388a9534"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<h2 class="groupheader">Enumeration Type Documentation</h2>
<a class="anchor" id="gae1ed2a19bbfd03de69fbdfc044f2c5dc"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="group__sources.html#gae1ed2a19bbfd03de69fbdfc044f2c5dc">SyncSource::State</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Synchronization source states during an RTP session. </p>
<p>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 (</p><dl class="section see"><dt>See also</dt><dd><a class="el" href="class_incoming_data_queue.html#a67c0dd360533faeaf3bd317fdf5fb8e3" title="When receiving packets from a new source, it may be convenient to reject a first few packets before w...">IncomingDataQueue::setMinValidPacketSequence()</a>). Thus, the source will probably be in <a class="el" href="group__sources.html#ggae1ed2a19bbfd03de69fbdfc044f2c5dca02d96a9f7e46e64298ac7b6174f31e89" title="Some packets have been. ">statePrevalid</a> before reaching one of the two states that indicate a valid source: <a class="el" href="group__sources.html#ggae1ed2a19bbfd03de69fbdfc044f2c5dca5be3203fa0ead7600c5eae6599139876" title="received, but source validity not yet guaranteed. ">stateActive</a> and <a class="el" href="group__sources.html#ggae1ed2a19bbfd03de69fbdfc044f2c5dca59ef5b5115a418a31877ec7a17a266d3" title="(data or control) from this source. ">stateInactive</a>.</dd></dl>
<p>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 <a class="el" href="class_incoming_data_queue.html#a6c595148215e5bf4098ff0e13d1ccfb7" title="Set the number of RTCP intervals that the stack will wait to change the state of a source from stateA...">IncomingDataQueue::setSourceExpirationPeriod()</a> ), 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.</p>
<p>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 <a class="el" href="class_queue_r_t_c_p_manager.html#a9c4ab816bbf557620e3d7a7549182070" title="Set how much time the stack will wait before deleting a synchronization source that has sent an RTCP ...">QueueRTCPManager::setLeavingDelay()</a>).</p>
<p>Sources in statePrevalid and stateLeaving are not counted for the number of session members estimation. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="ggae1ed2a19bbfd03de69fbdfc044f2c5dca9da650c2b6f936142c9cb8327074ca0c"></a>stateUnknown&#160;</td><td class="fielddoc">
<p>No valid packet has been received. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="ggae1ed2a19bbfd03de69fbdfc044f2c5dca02d96a9f7e46e64298ac7b6174f31e89"></a>statePrevalid&#160;</td><td class="fielddoc">
<p>Some packets have been. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="ggae1ed2a19bbfd03de69fbdfc044f2c5dca5be3203fa0ead7600c5eae6599139876"></a>stateActive&#160;</td><td class="fielddoc">
<p>received, but source validity not yet guaranteed. </p>
<p>We currently receive packets </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="ggae1ed2a19bbfd03de69fbdfc044f2c5dca59ef5b5115a418a31877ec7a17a266d3"></a>stateInactive&#160;</td><td class="fielddoc">
<p>(data or control) from this source. </p>
<p>Was active in the near past but </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="ggae1ed2a19bbfd03de69fbdfc044f2c5dcab50b90a686532c1acea01fab12c4574b"></a>stateLeaving&#160;</td><td class="fielddoc">
<p>no packet from this source has been received lately. </p>
<p>An RTCP BYE has been received from the source. </p>
</td></tr>
</table>

</div>
</div>
<h2 class="groupheader">Function Documentation</h2>
<a class="anchor" id="ga206420a8423d0c261e9bfc5a388a9534"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">__EXPORT <a class="el" href="class_r_t_p_application.html">RTPApplication</a>&amp; defaultApplication </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the <a class="el" href="class_r_t_p_application.html" title="An RTP application, holding identifying RTCP SDES item values. ">RTPApplication</a> object for the "default" application (the only one used by common applications -those that only implement one "RTP application"). </p>
<p>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. </p>
<dl><dt><b>Examples: </b></dt><dd><a class="el" href="ccrtptest_8cpp-example.html#a8">ccrtptest.cpp</a>, <a class="el" href="rtphello_8cpp-example.html#a2">rtphello.cpp</a>, <a class="el" href="rtplisten_8cpp-example.html#a2">rtplisten.cpp</a>, and <a class="el" href="rtpsend_8cpp-example.html#a2">rtpsend.cpp</a>.</dd>
</dl>
</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Feb 8 2015 08:32:24 for ccRTP by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>