Sophie

Sophie

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

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>gstaudiosrc</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-audio.html" title="Audio Library">
<link rel="prev" href="gst-plugins-base-libs-gstaudiosink.html" title="gstaudiosink">
<link rel="next" href="gst-plugins-base-libs-gstmultichannel.html" title="gstmultichannel">
<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-gstaudiosink.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
<td><a accesskey="u" href="gstreamer-audio.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-gstmultichannel.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="#id2569265" class="shortcut">Top</a>
                  &#160;|&#160;
                  <a href="#id2569361" class="shortcut">Description</a>
                  &#160;|&#160;
                  <a href="#id2569300" class="shortcut">Object Hierarchy</a></nobr></td></tr>
</table>
<div class="refentry" lang="en">
<a name="gst-plugins-base-libs-gstaudiosrc"></a><div class="titlepage"></div>
<div class="refnamediv"><table width="100%"><tr>
<td valign="top">
<h2>
<a name="id2569265"></a><span class="refentrytitle">gstaudiosrc</span>
</h2>
<p>gstaudiosrc &#8212; Simple base class for audio sources</p>
</td>
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<a name="GstAudioSrc"></a><pre class="synopsis">

#include &lt;gst/audio/gstaudiosrc.h&gt;


                    <a href="gst-plugins-base-libs-gstaudiosrc.html#GstAudioSrc-struct">GstAudioSrc</a>;
                    <a href="gst-plugins-base-libs-gstaudiosrc.html#GstAudioSrcClass">GstAudioSrcClass</a>;

</pre>
</div>
<div class="refsect1" lang="en">
<a name="id2569300"></a><h2>Object Hierarchy</h2>
<pre class="synopsis">

  GObject
   +----GstObject
         +----GstElement
               +----GstBaseSrc
                     +----GstPushSrc
                           +----<a href="gst-plugins-base-libs-gstbaseaudiosrc.html#GstBaseAudioSrc">GstBaseAudioSrc</a>
                                 +----GstAudioSrc
</pre>
</div>
<div class="refsect1" lang="en">
<a name="id2569361"></a><h2>Description</h2>
<p>
This is the most simple base class for audio sources that only requires
subclasses to implement a set of simple functions:
</p>
<p>
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><span class="term"><code class="function">open()</code></span></td>
<td><p>Open the device.</p></td>
</tr>
<tr>
<td><span class="term"><code class="function">prepare()</code></span></td>
<td><p>Configure the device with the specified format.</p></td>
</tr>
<tr>
<td><span class="term"><code class="function">read()</code></span></td>
<td><p>Read samples from the device.</p></td>
</tr>
<tr>
<td><span class="term"><code class="function">reset()</code></span></td>
<td><p>Unblock reads and flush the device.</p></td>
</tr>
<tr>
<td><span class="term"><code class="function">delay()</code></span></td>
<td><p>Get the number of samples in the device but not yet read.
    </p></td>
</tr>
<tr>
<td><span class="term"><code class="function">unprepare()</code></span></td>
<td><p>Undo operations done by prepare.</p></td>
</tr>
<tr>
<td><span class="term"><code class="function">close()</code></span></td>
<td><p>Close the device.</p></td>
</tr>
</tbody>
</table></div>
<p>
</p>
<p>
All scheduling of samples and timestamps is done in this base class
together with <a href="gst-plugins-base-libs-gstbaseaudiosrc.html#GstBaseAudioSrc"><span class="type">GstBaseAudioSrc</span></a> using a default implementation of a
<a href="gst-plugins-base-libs-gstringbuffer.html#GstRingBuffer"><span class="type">GstRingBuffer</span></a> that uses threads.
</p>
<p>
Last reviewed on 2006-09-27 (0.10.12)</p>
<p>

</p>
</div>
<div class="refsect1" lang="en">
<a name="id2569549"></a><h2>Details</h2>
<div class="refsect2" lang="en">
<a name="id2569559"></a><h3>
<a name="GstAudioSrc-struct"></a>GstAudioSrc</h3>
<a class="indexterm" name="id2569572"></a><pre class="programlisting">typedef struct _GstAudioSrc GstAudioSrc;</pre>
<p>

</p>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="id2569587"></a><h3>
<a name="GstAudioSrcClass"></a>GstAudioSrcClass</h3>
<a class="indexterm" name="id2569599"></a><pre class="programlisting">typedef struct {
  GstBaseAudioSrcClass parent_class;

  /* vtable */

  /* open the device with given specs */
  gboolean (*open)      (GstAudioSrc *src);
  /* prepare resources and state to operate with the given specs */
  gboolean (*prepare)   (GstAudioSrc *src, GstRingBufferSpec *spec);
  /* undo anything that was done in prepare() */
  gboolean (*unprepare) (GstAudioSrc *src);
  /* close the device */
  gboolean (*close)     (GstAudioSrc *src);
  /* read samples from the device */
  guint    (*read)      (GstAudioSrc *src, gpointer data, guint length);
  /* get number of samples queued in the device */
  guint    (*delay)     (GstAudioSrc *src);
  /* reset the audio device, unblock from a write */
  void     (*reset)     (GstAudioSrc *src);
} GstAudioSrcClass;
</pre>
<p>

</p>
</div>
</div>
<div class="refsect1" lang="en">
<a name="id2569641"></a><h2>See Also</h2>
<a href="gst-plugins-base-libs-gstbaseaudiosrc.html#GstBaseAudioSrc"><span class="type">GstBaseAudioSrc</span></a>, <a href="gst-plugins-base-libs-gstringbuffer.html#GstRingBuffer"><span class="type">GstRingBuffer</span></a>, <a href="gst-plugins-base-libs-gstaudiosrc.html#GstAudioSrc"><span class="type">GstAudioSrc</span></a>.
</div>
</div>
</body>
</html>