Sophie

Sophie

distrib > Mandriva > 2008.1 > x86_64 > by-pkgid > 6d445a7e34cab500c4a729b1f6c7a5fd > files > 143

lib64gstreamer-plugins-base0.10-devel-0.10.17-3mdv2008.1.x86_64.rpm

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>gstrtppayloads</title>
<meta name="generator" content="DocBook XSL Stylesheets V1.72.0">
<link rel="start" href="index.html" title="GStreamer Base Plugins 0.10 Library Reference Manual">
<link rel="up" href="gstreamer-rtp.html" title="RTP Library">
<link rel="prev" href="gst-plugins-base-libs-gstbasertppayload.html" title="gstbasertppayload">
<link rel="next" href="gst-plugins-base-libs-gstrtpbuffer.html" title="gstrtpbuffer">
<meta name="generator" content="GTK-Doc V1.8 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
<link rel="part" href="gstreamer-plugins-base.html" title="Part&#160;I.&#160;GStreamer Base Plugins Libraries">
<link rel="chapter" href="gstreamer-audio.html" title="Audio Library">
<link rel="chapter" href="gstreamer-cdda.html" title="CDDA Library">
<link rel="chapter" href="gstreamer-ffft.html" title="FFT Library">
<link rel="chapter" href="gstreamer-floatcast.html" title="FloatCast Library">
<link rel="chapter" href="gstreamer-interfaces.html" title="Interfaces Library">
<link rel="chapter" href="gstreamer-netbuffer.html" title="Network Buffer Library">
<link rel="chapter" href="gstreamer-riff.html" title="Riff Media Library">
<link rel="chapter" href="gstreamer-rtp.html" title="RTP Library">
<link rel="chapter" href="gstreamer-rtsp.html" title="RTSP Library">
<link rel="chapter" href="gstreamer-sdp.html" title="SDP Library">
<link rel="chapter" href="gstreamer-tag.html" title="Tag Support Library">
<link rel="chapter" href="gstreamer-base-utils.html" title="Base Utils Library">
<link rel="chapter" href="gstreamer-video.html" title="Video Library">
<link rel="part" href="gstreamer-libs-hierarchy.html" title="Part&#160;II.&#160;Object Hierarchy">
<link rel="index" href="api-index.html" title="Index">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
<tr valign="middle">
<td><a accesskey="p" href="gst-plugins-base-libs-gstbasertppayload.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
<td><a accesskey="u" href="gstreamer-rtp.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
<th width="100%" align="center">GStreamer Base Plugins 0.10 Library Reference Manual</th>
<td><a accesskey="n" href="gst-plugins-base-libs-gstrtpbuffer.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
</tr>
<tr><td colspan="5" class="shortcuts"><nobr><a href="#id2653929" class="shortcut">Top</a>
                  &#160;|&#160;
                  <a href="#id2654026" class="shortcut">Description</a></nobr></td></tr>
</table>
<div class="refentry" lang="en">
<a name="gst-plugins-base-libs-gstrtppayloads"></a><div class="titlepage"></div>
<div class="refnamediv"><table width="100%"><tr>
<td valign="top">
<h2>
<a name="id2653929"></a><span class="refentrytitle">gstrtppayloads</span>
</h2>
<p>gstrtppayloads &#8212; Helper methods for dealing with RTP payloads</p>
</td>
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<pre class="synopsis">

#include &lt;gst/rtp/gstrtppayload.h&gt;


enum                <a href="gst-plugins-base-libs-gstrtppayloads.html#GstRTPPayload">GstRTPPayload</a>;
#define             <a href="gst-plugins-base-libs-gstrtppayloads.html#GST-RTP-PAYLOAD-IS-DYNAMIC:CAPS">GST_RTP_PAYLOAD_IS_DYNAMIC</a>          (pt)
                    <a href="gst-plugins-base-libs-gstrtppayloads.html#GstRTPPayloadInfo">GstRTPPayloadInfo</a>;
const <a href="gst-plugins-base-libs-gstrtppayloads.html#GstRTPPayloadInfo">GstRTPPayloadInfo</a>* <a href="gst-plugins-base-libs-gstrtppayloads.html#gst-rtp-payload-info-for-name">gst_rtp_payload_info_for_name</a>  (const gchar *media,
                                                         const gchar *encoding_name);
const <a href="gst-plugins-base-libs-gstrtppayloads.html#GstRTPPayloadInfo">GstRTPPayloadInfo</a>* <a href="gst-plugins-base-libs-gstrtppayloads.html#gst-rtp-payload-info-for-pt">gst_rtp_payload_info_for_pt</a>    (guint8 payload_type);

</pre>
</div>
<div class="refsect1" lang="en">
<a name="id2654026"></a><h2>Description</h2>
<p>
</p>
<div class="refsect2" lang="en">
<a name="id2654038"></a><p>
The GstRTPPayloads helper functions makes it easy to deal with static and dynamic
payloads. Its main purpose is to retrieve properties such as the default clock-rate 
and get session bandwidth information.
</p>
</div>
<p>
</p>
<p>
Last reviewed on 2007-10-01 (0.10.15)</p>
<p>

</p>
</div>
<div class="refsect1" lang="en">
<a name="id2654056"></a><h2>Details</h2>
<div class="refsect2" lang="en">
<a name="id2654067"></a><h3>
<a name="GstRTPPayload"></a>enum GstRTPPayload</h3>
<a class="indexterm" name="id2654080"></a><pre class="programlisting">typedef enum
{
  /* Audio: */
  GST_RTP_PAYLOAD_PCMU = 0,
  GST_RTP_PAYLOAD_1016 = 1, /* RFC 3551 says reserved */
  GST_RTP_PAYLOAD_G721 = 2, /* RFC 3551 says reserved */
  GST_RTP_PAYLOAD_GSM = 3,
  GST_RTP_PAYLOAD_G723 = 4,
  GST_RTP_PAYLOAD_DVI4_8000 = 5,
  GST_RTP_PAYLOAD_DVI4_16000 = 6,
  GST_RTP_PAYLOAD_LPC = 7,
  GST_RTP_PAYLOAD_PCMA = 8,
  GST_RTP_PAYLOAD_G722 = 9,
  GST_RTP_PAYLOAD_L16_STEREO = 10,
  GST_RTP_PAYLOAD_L16_MONO = 11,
  GST_RTP_PAYLOAD_QCELP = 12,
  GST_RTP_PAYLOAD_CN = 13,
  GST_RTP_PAYLOAD_MPA = 14,
  GST_RTP_PAYLOAD_G728 = 15,
  GST_RTP_PAYLOAD_DVI4_11025 = 16,
  GST_RTP_PAYLOAD_DVI4_22050 = 17,
  GST_RTP_PAYLOAD_G729 = 18,   

  /* Video: */

  GST_RTP_PAYLOAD_CELLB = 25,
  GST_RTP_PAYLOAD_JPEG = 26,
  GST_RTP_PAYLOAD_NV = 28,
  GST_RTP_PAYLOAD_H261 = 31,
  GST_RTP_PAYLOAD_MPV = 32,
  GST_RTP_PAYLOAD_MP2T = 33,
  GST_RTP_PAYLOAD_H263 = 34,

  /* BOTH */
} GstRTPPayload;
</pre>
<p>
Standard predefined fixed payload types.
</p>
<p>
The official list is at:
http://www.iana.org/assignments/rtp-parameters
</p>
<p>
Audio:
reserved: 19
unassigned: 20-23, 
</p>
<p>
Video:
unassigned: 24, 27, 29, 30, 35-71, 77-95
Reserved for RTCP conflict avoidance: 72-76</p>
<p>

</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><span class="term"><a name="GST-RTP-PAYLOAD-PCMU:CAPS"></a><code class="literal">GST_RTP_PAYLOAD_PCMU</code></span></td>
<td> ITU-T G.711. mu-law audio (RFC 3551)
</td>
</tr>
<tr>
<td><span class="term"><a name="GST-RTP-PAYLOAD-1016:CAPS"></a><code class="literal">GST_RTP_PAYLOAD_1016</code></span></td>
<td> RFC 3551 says reserved
</td>
</tr>
<tr>
<td><span class="term"><a name="GST-RTP-PAYLOAD-G721:CAPS"></a><code class="literal">GST_RTP_PAYLOAD_G721</code></span></td>
<td> RFC 3551 says reserved
</td>
</tr>
<tr>
<td><span class="term"><a name="GST-RTP-PAYLOAD-GSM:CAPS"></a><code class="literal">GST_RTP_PAYLOAD_GSM</code></span></td>
<td> GSM audio
</td>
</tr>
<tr>
<td><span class="term"><a name="GST-RTP-PAYLOAD-G723:CAPS"></a><code class="literal">GST_RTP_PAYLOAD_G723</code></span></td>
<td> ITU G.723.1 audio
</td>
</tr>
<tr>
<td><span class="term"><a name="GST-RTP-PAYLOAD-DVI4-8000:CAPS"></a><code class="literal">GST_RTP_PAYLOAD_DVI4_8000</code></span></td>
<td> IMA ADPCM wave type (RFC 3551)
</td>
</tr>
<tr>
<td><span class="term"><a name="GST-RTP-PAYLOAD-DVI4-16000:CAPS"></a><code class="literal">GST_RTP_PAYLOAD_DVI4_16000</code></span></td>
<td> IMA ADPCM wave type (RFC 3551)
</td>
</tr>
<tr>
<td><span class="term"><a name="GST-RTP-PAYLOAD-LPC:CAPS"></a><code class="literal">GST_RTP_PAYLOAD_LPC</code></span></td>
<td> experimental linear predictive encoding
</td>
</tr>
<tr>
<td><span class="term"><a name="GST-RTP-PAYLOAD-PCMA:CAPS"></a><code class="literal">GST_RTP_PAYLOAD_PCMA</code></span></td>
<td> ITU-T G.711 A-law audio (RFC 3551)
</td>
</tr>
<tr>
<td><span class="term"><a name="GST-RTP-PAYLOAD-G722:CAPS"></a><code class="literal">GST_RTP_PAYLOAD_G722</code></span></td>
<td> ITU-T G.722 (RFC 3551)
</td>
</tr>
<tr>
<td><span class="term"><a name="GST-RTP-PAYLOAD-L16-STEREO:CAPS"></a><code class="literal">GST_RTP_PAYLOAD_L16_STEREO</code></span></td>
<td> stereo PCM
</td>
</tr>
<tr>
<td><span class="term"><a name="GST-RTP-PAYLOAD-L16-MONO:CAPS"></a><code class="literal">GST_RTP_PAYLOAD_L16_MONO</code></span></td>
<td> mono PCM
</td>
</tr>
<tr>
<td><span class="term"><a name="GST-RTP-PAYLOAD-QCELP:CAPS"></a><code class="literal">GST_RTP_PAYLOAD_QCELP</code></span></td>
<td> EIA &amp; TIA standard IS-733
</td>
</tr>
<tr>
<td><span class="term"><a name="GST-RTP-PAYLOAD-CN:CAPS"></a><code class="literal">GST_RTP_PAYLOAD_CN</code></span></td>
<td> Comfort Noise (RFC 3389)
</td>
</tr>
<tr>
<td><span class="term"><a name="GST-RTP-PAYLOAD-MPA:CAPS"></a><code class="literal">GST_RTP_PAYLOAD_MPA</code></span></td>
<td> Audio MPEG 1-3.
</td>
</tr>
<tr>
<td><span class="term"><a name="GST-RTP-PAYLOAD-G728:CAPS"></a><code class="literal">GST_RTP_PAYLOAD_G728</code></span></td>
<td> ITU-T G.728 Speech coder (RFC 3551)
</td>
</tr>
<tr>
<td><span class="term"><a name="GST-RTP-PAYLOAD-DVI4-11025:CAPS"></a><code class="literal">GST_RTP_PAYLOAD_DVI4_11025</code></span></td>
<td> IMA ADPCM wave type (RFC 3551)
</td>
</tr>
<tr>
<td><span class="term"><a name="GST-RTP-PAYLOAD-DVI4-22050:CAPS"></a><code class="literal">GST_RTP_PAYLOAD_DVI4_22050</code></span></td>
<td> IMA ADPCM wave type (RFC 3551)
</td>
</tr>
<tr>
<td><span class="term"><a name="GST-RTP-PAYLOAD-G729:CAPS"></a><code class="literal">GST_RTP_PAYLOAD_G729</code></span></td>
<td> ITU-T G.729 Speech coder (RFC 3551)
</td>
</tr>
<tr>
<td><span class="term"><a name="GST-RTP-PAYLOAD-CELLB:CAPS"></a><code class="literal">GST_RTP_PAYLOAD_CELLB</code></span></td>
<td> See RFC 2029
</td>
</tr>
<tr>
<td><span class="term"><a name="GST-RTP-PAYLOAD-JPEG:CAPS"></a><code class="literal">GST_RTP_PAYLOAD_JPEG</code></span></td>
<td> ISO Standards 10918-1 and 10918-2 (RFC 2435)
</td>
</tr>
<tr>
<td><span class="term"><a name="GST-RTP-PAYLOAD-NV:CAPS"></a><code class="literal">GST_RTP_PAYLOAD_NV</code></span></td>
<td> nv encoding by Ron Frederick
</td>
</tr>
<tr>
<td><span class="term"><a name="GST-RTP-PAYLOAD-H261:CAPS"></a><code class="literal">GST_RTP_PAYLOAD_H261</code></span></td>
<td> ITU-T Recommendation H.261 (RFC 2032)
</td>
</tr>
<tr>
<td><span class="term"><a name="GST-RTP-PAYLOAD-MPV:CAPS"></a><code class="literal">GST_RTP_PAYLOAD_MPV</code></span></td>
<td> Video MPEG 1 &amp; 2 (RFC 2250)
</td>
</tr>
<tr>
<td><span class="term"><a name="GST-RTP-PAYLOAD-MP2T:CAPS"></a><code class="literal">GST_RTP_PAYLOAD_MP2T</code></span></td>
<td> MPEG-2 transport stream (RFC 2250)
</td>
</tr>
<tr>
<td><span class="term"><a name="GST-RTP-PAYLOAD-H263:CAPS"></a><code class="literal">GST_RTP_PAYLOAD_H263</code></span></td>
<td> Video H263 (RFC 2190)
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="id2654731"></a><h3>
<a name="GST-RTP-PAYLOAD-IS-DYNAMIC:CAPS"></a>GST_RTP_PAYLOAD_IS_DYNAMIC()</h3>
<a class="indexterm" name="id2654745"></a><pre class="programlisting">#define GST_RTP_PAYLOAD_IS_DYNAMIC(pt) ((pt) &gt;= 96 &amp;&amp; (pt) &lt;= 127)
</pre>
<p>
Check if <em class="parameter"><code>pt</code></em> is a dynamic payload type.</p>
<p>

</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody><tr>
<td><span class="term"><em class="parameter"><code>pt</code></em>&#160;:</span></td>
<td> a payload type
</td>
</tr></tbody>
</table></div>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="id2654789"></a><h3>
<a name="GstRTPPayloadInfo"></a>GstRTPPayloadInfo</h3>
<a class="indexterm" name="id2654802"></a><pre class="programlisting">typedef struct {
  guint8       payload_type;
  const gchar *media;
  const gchar *encoding_name;
  guint        clock_rate;
  const gchar *encoding_parameters;
  guint        bitrate;
} GstRTPPayloadInfo;
</pre>
<p>
Structure holding default payload type information.</p>
<p>

</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><span class="term">guint8&#160;<em class="structfield"><code>payload_type</code></em>;</span></td>
<td> payload type, -1 means dynamic
</td>
</tr>
<tr>
<td><span class="term">const&#160;gchar&#160;*<em class="structfield"><code>media</code></em>;</span></td>
<td> the media type(s), usually "audio", "video", "application", "text",
"message".
</td>
</tr>
<tr>
<td><span class="term">const&#160;gchar&#160;*<em class="structfield"><code>encoding_name</code></em>;</span></td>
<td> the encoding name of <em class="parameter"><code>pt</code></em>
</td>
</tr>
<tr>
<td><span class="term">guint&#160;<em class="structfield"><code>clock_rate</code></em>;</span></td>
<td> default clock rate, 0 = unknown/variable
</td>
</tr>
<tr>
<td><span class="term">const&#160;gchar&#160;*<em class="structfield"><code>encoding_parameters</code></em>;</span></td>
<td> encoding parameters. For audio this is the number of
channels. NULL = not applicable.
</td>
</tr>
<tr>
<td><span class="term">guint&#160;<em class="structfield"><code>bitrate</code></em>;</span></td>
<td> the bitrate of the media. 0 = unknown/variable.
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="id2654964"></a><h3>
<a name="gst-rtp-payload-info-for-name"></a>gst_rtp_payload_info_for_name ()</h3>
<a class="indexterm" name="id2654978"></a><pre class="programlisting">const <a href="gst-plugins-base-libs-gstrtppayloads.html#GstRTPPayloadInfo">GstRTPPayloadInfo</a>* gst_rtp_payload_info_for_name  (const gchar *media,
                                                         const gchar *encoding_name);</pre>
<p>
Get the <a href="gst-plugins-base-libs-gstrtppayloads.html#GstRTPPayloadInfo"><span class="type">GstRTPPayloadInfo</span></a> for <em class="parameter"><code>media</code></em> and <em class="parameter"><code>encoding_name</code></em>. This function is
mostly used to get the default clock-rate and bandwidth for dynamic payload
types specified with <em class="parameter"><code>media</code></em> and <em class="parameter"><code>encoding</code></em> name.
</p>
<p>
The search for <em class="parameter"><code>encoding_name</code></em> will be performed in a case insensitve way.</p>
<p>

</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><span class="term"><em class="parameter"><code>media</code></em>&#160;:</span></td>
<td> the media to find
</td>
</tr>
<tr>
<td><span class="term"><em class="parameter"><code>encoding_name</code></em>&#160;:</span></td>
<td> the encoding name to find
</td>
</tr>
<tr>
<td><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
<td> a <a href="gst-plugins-base-libs-gstrtppayloads.html#GstRTPPayloadInfo"><span class="type">GstRTPPayloadInfo</span></a> or NULL when no info could be found.
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="id2655116"></a><h3>
<a name="gst-rtp-payload-info-for-pt"></a>gst_rtp_payload_info_for_pt ()</h3>
<a class="indexterm" name="id2655130"></a><pre class="programlisting">const <a href="gst-plugins-base-libs-gstrtppayloads.html#GstRTPPayloadInfo">GstRTPPayloadInfo</a>* gst_rtp_payload_info_for_pt    (guint8 payload_type);</pre>
<p>
Get the <a href="gst-plugins-base-libs-gstrtppayloads.html#GstRTPPayloadInfo"><span class="type">GstRTPPayloadInfo</span></a> for <em class="parameter"><code>payload_type</code></em>. This function is
mostly used to get the default clock-rate and bandwidth for static payload
types specified with <em class="parameter"><code>payload_type</code></em>.</p>
<p>

</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><span class="term"><em class="parameter"><code>payload_type</code></em>&#160;:</span></td>
<td> the payload_type to find
</td>
</tr>
<tr>
<td><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
<td> a <a href="gst-plugins-base-libs-gstrtppayloads.html#GstRTPPayloadInfo"><span class="type">GstRTPPayloadInfo</span></a> or NULL when no info could be found.
</td>
</tr>
</tbody>
</table></div>
</div>
</div>
<div class="refsect1" lang="en">
<a name="id2655224"></a><h2>See Also</h2>
gstrtpbuffer
</div>
</div>
</body>
</html>