1abed3b90dfe961d276cbedda60f4d1a92d81d2b9Scott Main<html> 2abed3b90dfe961d276cbedda60f4d1a92d81d2b9Scott Main<body> 3abed3b90dfe961d276cbedda60f4d1a92d81d2b9Scott Main<p>Provides APIs for RTP (Real-time Transport Protocol), allowing applications to manage on-demand 4abed3b90dfe961d276cbedda60f4d1a92d81d2b9Scott Mainor interactive data streaming. In particular, apps that provide VOIP, push-to-talk, conferencing, 5abed3b90dfe961d276cbedda60f4d1a92d81d2b9Scott Mainand audio streaming can use these APIs to initiate sessions and transmit or receive data streams 6abed3b90dfe961d276cbedda60f4d1a92d81d2b9Scott Mainover any available network.</p> 7abed3b90dfe961d276cbedda60f4d1a92d81d2b9Scott Main 8abed3b90dfe961d276cbedda60f4d1a92d81d2b9Scott Main<p>To support audio conferencing and similar usages, you need to instantiate two classes as 9abed3b90dfe961d276cbedda60f4d1a92d81d2b9Scott Mainendpoints for the stream:</p> 10abed3b90dfe961d276cbedda60f4d1a92d81d2b9Scott Main 11abed3b90dfe961d276cbedda60f4d1a92d81d2b9Scott Main<ul> 12abed3b90dfe961d276cbedda60f4d1a92d81d2b9Scott Main<li>{@link android.net.rtp.AudioStream} specifies a remote endpoint and consists of network mapping 13abed3b90dfe961d276cbedda60f4d1a92d81d2b9Scott Mainand a configured {@link android.net.rtp.AudioCodec}.</li> 14abed3b90dfe961d276cbedda60f4d1a92d81d2b9Scott Main 15abed3b90dfe961d276cbedda60f4d1a92d81d2b9Scott Main<li>{@link android.net.rtp.AudioGroup} represents the local endpoint for one or more {@link 16abed3b90dfe961d276cbedda60f4d1a92d81d2b9Scott Mainandroid.net.rtp.AudioStream}s. The {@link android.net.rtp.AudioGroup} mixes all the {@link 17abed3b90dfe961d276cbedda60f4d1a92d81d2b9Scott Mainandroid.net.rtp.AudioStream}s and optionally interacts with the device speaker and the microphone at 18abed3b90dfe961d276cbedda60f4d1a92d81d2b9Scott Mainthe same time.</li> 19abed3b90dfe961d276cbedda60f4d1a92d81d2b9Scott Main</ul> 20abed3b90dfe961d276cbedda60f4d1a92d81d2b9Scott Main 21abed3b90dfe961d276cbedda60f4d1a92d81d2b9Scott Main<p>The simplest usage involves a single remote endpoint and local endpoint. For more complex usages, 22abed3b90dfe961d276cbedda60f4d1a92d81d2b9Scott Mainrefer to the limitations described for {@link android.net.rtp.AudioGroup}.</p> 23abed3b90dfe961d276cbedda60f4d1a92d81d2b9Scott Main 24abed3b90dfe961d276cbedda60f4d1a92d81d2b9Scott Main<p class="note"><strong>Note:</strong> To use the RTP APIs, you must request the {@link 25abed3b90dfe961d276cbedda60f4d1a92d81d2b9Scott Mainandroid.Manifest.permission#INTERNET} and {@link 26abed3b90dfe961d276cbedda60f4d1a92d81d2b9Scott Mainandroid.Manifest.permission#RECORD_AUDIO} permissions in your manifest file.</p> 27abed3b90dfe961d276cbedda60f4d1a92d81d2b9Scott Main</body> 28abed3b90dfe961d276cbedda60f4d1a92d81d2b9Scott Main</html>