1<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 2<html> 3<head> 4<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 5<title>pulsesrc: GStreamer Good Plugins 1.0 Plugins Reference Manual</title> 6<meta name="generator" content="DocBook XSL Stylesheets V1.79.1"> 7<link rel="home" href="index.html" title="GStreamer Good Plugins 1.0 Plugins Reference Manual"> 8<link rel="up" href="ch01.html" title="gst-plugins-good Elements"> 9<link rel="prev" href="gst-plugins-good-plugins-pulsesink.html" title="pulsesink"> 10<link rel="next" href="gst-plugins-good-plugins-pushfilesrc.html" title="pushfilesrc"> 11<meta name="generator" content="GTK-Doc V1.28 (XML mode)"> 12<link rel="stylesheet" href="style.css" type="text/css"> 13</head> 14<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"> 15<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle"> 16<td width="100%" align="left" class="shortcuts"> 17<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 18 <a href="#gst-plugins-good-plugins-pulsesrc.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 19 <a href="#gst-plugins-good-plugins-pulsesrc.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_interfaces"> <span class="dim">|</span> 20 <a href="#gst-plugins-good-plugins-pulsesrc.implemented-interfaces" class="shortcut">Implemented Interfaces</a></span><span id="nav_properties"> <span class="dim">|</span> 21 <a href="#gst-plugins-good-plugins-pulsesrc.properties" class="shortcut">Properties</a></span> 22</td> 23<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td> 24<td><a accesskey="u" href="ch01.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td> 25<td><a accesskey="p" href="gst-plugins-good-plugins-pulsesink.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td> 26<td><a accesskey="n" href="gst-plugins-good-plugins-pushfilesrc.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td> 27</tr></table> 28<div class="refentry"> 29<a name="gst-plugins-good-plugins-pulsesrc"></a><div class="titlepage"></div> 30<div class="refnamediv"><table width="100%"><tr> 31<td valign="top"> 32<h2><span class="refentrytitle"><a name="gst-plugins-good-plugins-pulsesrc.top_of_page"></a>pulsesrc</span></h2> 33<p>pulsesrc</p> 34</td> 35<td class="gallery_image" valign="top" align="right"></td> 36</tr></table></div> 37<div class="refsect1"> 38<a name="gst-plugins-good-plugins-pulsesrc.properties"></a><h2>Properties</h2> 39<div class="informaltable"><table class="informaltable" border="0"> 40<colgroup> 41<col width="150px" class="properties_type"> 42<col width="300px" class="properties_name"> 43<col width="200px" class="properties_flags"> 44</colgroup> 45<tbody> 46<tr> 47<td class="property_type"> 48<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</td> 49<td class="property_name"><a class="link" href="gst-plugins-good-plugins-pulsesrc.html#GstPulseSrc--device" title="The “device” property">device</a></td> 50<td class="property_flags">Read / Write</td> 51</tr> 52<tr> 53<td class="property_type"> 54<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</td> 55<td class="property_name"><a class="link" href="gst-plugins-good-plugins-pulsesrc.html#GstPulseSrc--server" title="The “server” property">server</a></td> 56<td class="property_flags">Read / Write</td> 57</tr> 58<tr> 59<td class="property_type"> 60<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</td> 61<td class="property_name"><a class="link" href="gst-plugins-good-plugins-pulsesrc.html#GstPulseSrc--device-name" title="The “device-name” property">device-name</a></td> 62<td class="property_flags">Read</td> 63</tr> 64<tr> 65<td class="property_type"> 66<a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstStructure.html#GstStructure-struct"><span class="type">GstStructure</span></a> *</td> 67<td class="property_name"><a class="link" href="gst-plugins-good-plugins-pulsesrc.html#GstPulseSrc--stream-properties" title="The “stream-properties” property">stream-properties</a></td> 68<td class="property_flags">Read / Write</td> 69</tr> 70<tr> 71<td class="property_type"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td> 72<td class="property_name"><a class="link" href="gst-plugins-good-plugins-pulsesrc.html#GstPulseSrc--mute" title="The “mute” property">mute</a></td> 73<td class="property_flags">Read / Write</td> 74</tr> 75<tr> 76<td class="property_type"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a></td> 77<td class="property_name"><a class="link" href="gst-plugins-good-plugins-pulsesrc.html#GstPulseSrc--source-output-index" title="The “source-output-index” property">source-output-index</a></td> 78<td class="property_flags">Read</td> 79</tr> 80<tr> 81<td class="property_type"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a></td> 82<td class="property_name"><a class="link" href="gst-plugins-good-plugins-pulsesrc.html#GstPulseSrc--volume" title="The “volume” property">volume</a></td> 83<td class="property_flags">Read / Write</td> 84</tr> 85<tr> 86<td class="property_type"> 87<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</td> 88<td class="property_name"><a class="link" href="gst-plugins-good-plugins-pulsesrc.html#GstPulseSrc--client-name" title="The “client-name” property">client-name</a></td> 89<td class="property_flags">Read / Write</td> 90</tr> 91<tr> 92<td class="property_type"> 93<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</td> 94<td class="property_name"><a class="link" href="gst-plugins-good-plugins-pulsesrc.html#GstPulseSrc--current-device" title="The “current-device” property">current-device</a></td> 95<td class="property_flags">Read</td> 96</tr> 97</tbody> 98</table></div> 99</div> 100<a name="GstPulseSrc"></a><div class="refsect1"> 101<a name="gst-plugins-good-plugins-pulsesrc.other"></a><h2>Types and Values</h2> 102<div class="informaltable"><table class="informaltable" width="100%" border="0"> 103<colgroup> 104<col width="150px" class="name"> 105<col class="description"> 106</colgroup> 107<tbody><tr> 108<td class="datatype_keyword">struct</td> 109<td class="function_name"><a class="link" href="gst-plugins-good-plugins-pulsesrc.html#GstPulseSrc-struct" title="struct GstPulseSrc">GstPulseSrc</a></td> 110</tr></tbody> 111</table></div> 112</div> 113<div class="refsect1"> 114<a name="gst-plugins-good-plugins-pulsesrc.object-hierarchy"></a><h2>Object Hierarchy</h2> 115<pre class="screen"> <a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GObject-struct">GObject</a> 116 <span class="lineart">╰──</span> <a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a> 117 <span class="lineart">╰──</span> <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstObject.html#GstObject-struct">GstObject</a> 118 <span class="lineart">╰──</span> <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html#GstElement-struct">GstElement</a> 119 <span class="lineart">╰──</span> <a href="/usr/share/gtk-doc/html/gstreamer-libs-1.0/GstBaseSrc.html#GstBaseSrc-struct">GstBaseSrc</a> 120 <span class="lineart">╰──</span> <a href="/usr/share/gtk-doc/html/gstreamer-libs-1.0/GstPushSrc.html#GstPushSrc-struct">GstPushSrc</a> 121 <span class="lineart">╰──</span> <a href="/usr/share/gtk-doc/html/gst-plugins-base-libs-1.0/GstAudioBaseSrc.html#GstAudioBaseSrc-struct">GstAudioBaseSrc</a> 122 <span class="lineart">╰──</span> <a href="/usr/share/gtk-doc/html/gst-plugins-base-libs-1.0/GstAudioSrc.html#GstAudioSrc-struct">GstAudioSrc</a> 123 <span class="lineart">╰──</span> GstPulseSrc 124</pre> 125</div> 126<div class="refsect1"> 127<a name="gst-plugins-good-plugins-pulsesrc.implemented-interfaces"></a><h2>Implemented Interfaces</h2> 128<p> 129GstPulseSrc implements 130 <a href="/usr/share/gtk-doc/html/gst-plugins-base-libs-1.0/GstStreamVolume.html#GstStreamVolume-struct">GstStreamVolume</a>, GstImplementsInterface, GstMixer and GstPropertyProbe.</p> 131</div> 132<div class="refsect1"> 133<a name="gst-plugins-good-plugins-pulsesrc.description"></a><h2>Description</h2> 134<p>This element captures audio from a</p> 135<a class="ulink" href="" target="_top">PulseAudio sound server</a>. 136<div class="refsect2"> 137<a name="id-1.2.117.8.4"></a><h3>Example pipelines</h3> 138<div class="informalexample"> 139 <table class="listing_frame" border="0" cellpadding="0" cellspacing="0"> 140 <tbody> 141 <tr> 142 <td class="listing_lines" align="right"><pre>1</pre></td> 143 <td class="listing_code"><pre class="programlisting">gst<span class="gtkdoc opt">-</span>launch<span class="gtkdoc opt">-</span><span class="number">1.0</span> <span class="gtkdoc opt">-</span>v pulsesrc <span class="gtkdoc opt">!</span> audioconvert <span class="gtkdoc opt">!</span> vorbisenc <span class="gtkdoc opt">!</span> oggmux <span class="gtkdoc opt">!</span> filesink location<span class="gtkdoc opt">=</span>alsasrc<span class="gtkdoc opt">.</span>ogg</pre></td> 144 </tr> 145 </tbody> 146 </table> 147</div> 148 Record from a sound card using pulseaudio and encode to Ogg/Vorbis. 149</div> 150<div class="refsynopsisdiv"> 151<h2>Synopsis</h2> 152<div class="refsect2"> 153<a name="id-1.2.117.8.5.1"></a><h3>Element Information</h3> 154<div class="variablelist"><table border="0" class="variablelist"> 155<colgroup> 156<col align="left" valign="top"> 157<col> 158</colgroup> 159<tbody> 160<tr> 161<td><p><span class="term">plugin</span></p></td> 162<td> 163 <a class="link" href="gst-plugins-good-plugins-plugin-pulseaudio.html#plugin-pulseaudio">pulseaudio</a> 164 </td> 165</tr> 166<tr> 167<td><p><span class="term">author</span></p></td> 168<td>Lennart Poettering</td> 169</tr> 170<tr> 171<td><p><span class="term">class</span></p></td> 172<td>Source/Audio</td> 173</tr> 174</tbody> 175</table></div> 176</div> 177<hr> 178<div class="refsect2"> 179<a name="id-1.2.117.8.5.2"></a><h3>Element Pads</h3> 180<div class="variablelist"><table border="0" class="variablelist"> 181<colgroup> 182<col align="left" valign="top"> 183<col> 184</colgroup> 185<tbody> 186<tr> 187<td><p><span class="term">name</span></p></td> 188<td>src</td> 189</tr> 190<tr> 191<td><p><span class="term">direction</span></p></td> 192<td>source</td> 193</tr> 194<tr> 195<td><p><span class="term">presence</span></p></td> 196<td>always</td> 197</tr> 198<tr> 199<td><p><span class="term">details</span></p></td> 200<td>audio/x-raw, format=(string){ S16LE, S16BE, F32LE, F32BE, S32LE, S32BE, S24LE, S24BE, S24_32LE, S24_32BE, U8 }, layout=(string)interleaved, rate=(int)[ 1, 384000 ], channels=(int)[ 1, 32 ]</td> 201</tr> 202<tr> 203<td><p><span class="term"></span></p></td> 204<td> audio/x-alaw, rate=(int)[ 1, 384000 ], channels=(int)[ 1, 32 ]</td> 205</tr> 206<tr> 207<td><p><span class="term"></span></p></td> 208<td> audio/x-mulaw, rate=(int)[ 1, 384000 ], channels=(int)[ 1, 32 ]</td> 209</tr> 210</tbody> 211</table></div> 212</div> 213</div> 214</div> 215<div class="refsect1"> 216<a name="gst-plugins-good-plugins-pulsesrc.functions_details"></a><h2>Functions</h2> 217<p></p> 218</div> 219<div class="refsect1"> 220<a name="gst-plugins-good-plugins-pulsesrc.other_details"></a><h2>Types and Values</h2> 221<div class="refsect2"> 222<a name="GstPulseSrc-struct"></a><h3>struct GstPulseSrc</h3> 223<pre class="programlisting">struct GstPulseSrc;</pre> 224</div> 225</div> 226<div class="refsect1"> 227<a name="gst-plugins-good-plugins-pulsesrc.property-details"></a><h2>Property Details</h2> 228<div class="refsect2"> 229<a name="GstPulseSrc--device"></a><h3>The <code class="literal">“device”</code> property</h3> 230<pre class="programlisting"> “device” <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</pre> 231<p>The PulseAudio source device to connect to.</p> 232<p>Flags: Read / Write</p> 233<p>Default value: NULL</p> 234</div> 235<hr> 236<div class="refsect2"> 237<a name="GstPulseSrc--server"></a><h3>The <code class="literal">“server”</code> property</h3> 238<pre class="programlisting"> “server” <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</pre> 239<p>The PulseAudio server to connect to.</p> 240<p>Flags: Read / Write</p> 241<p>Default value: NULL</p> 242</div> 243<hr> 244<div class="refsect2"> 245<a name="GstPulseSrc--device-name"></a><h3>The <code class="literal">“device-name”</code> property</h3> 246<pre class="programlisting"> “device-name” <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</pre> 247<p>Human-readable name of the sound device.</p> 248<p>Flags: Read</p> 249<p>Default value: NULL</p> 250</div> 251<hr> 252<div class="refsect2"> 253<a name="GstPulseSrc--stream-properties"></a><h3>The <code class="literal">“stream-properties”</code> property</h3> 254<pre class="programlisting"> “stream-properties” <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstStructure.html#GstStructure-struct"><span class="type">GstStructure</span></a> *</pre> 255<p>List of pulseaudio stream properties. A list of defined properties can be 256found in the <a class="ulink" href="" target="_top">pulseaudio api docs</a>.</p> 257<p>Below is an example for registering as a music application to pulseaudio.</p> 258<div class="informalexample"> 259 <table class="listing_frame" border="0" cellpadding="0" cellspacing="0"> 260 <tbody> 261 <tr> 262 <td class="listing_lines" align="right"><pre>1 2632 2643 2654 2665</pre></td> 267 <td class="listing_code"><pre class="programlisting">GstStructure <span class="gtkdoc opt">*</span>props<span class="gtkdoc opt">;</span> 268 269props <span class="gtkdoc opt">=</span> <span class="function"><a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstStructure.html#gst-structure-from-string">gst_structure_from_string</a></span> <span class="gtkdoc opt">(</span><span class="string">"props,media.role=music"</span><span class="gtkdoc opt">,</span> NULL<span class="gtkdoc opt">);</span> 270<span class="function"><a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#g-object-set">g_object_set</a></span> <span class="gtkdoc opt">(</span>pulse<span class="gtkdoc opt">,</span> <span class="string">"stream-properties"</span><span class="gtkdoc opt">,</span> props<span class="gtkdoc opt">,</span> NULL<span class="gtkdoc opt">);</span> 271<span class="function"><a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstStructure.html#gst-structure-free">gst_structure_free</a></span> <span class="gtkdoc opt">(</span>props<span class="gtkdoc opt">);</span></pre></td> 272 </tr> 273 </tbody> 274 </table> 275</div> 276 277<p></p> 278<p>Flags: Read / Write</p> 279</div> 280<hr> 281<div class="refsect2"> 282<a name="GstPulseSrc--mute"></a><h3>The <code class="literal">“mute”</code> property</h3> 283<pre class="programlisting"> “mute” <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre> 284<p>Whether the stream is muted or not.</p> 285<p>Flags: Read / Write</p> 286<p>Default value: FALSE</p> 287</div> 288<hr> 289<div class="refsect2"> 290<a name="GstPulseSrc--source-output-index"></a><h3>The <code class="literal">“source-output-index”</code> property</h3> 291<pre class="programlisting"> “source-output-index” <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a></pre> 292<p>The index of the PulseAudio source output corresponding to this element.</p> 293<p>Flags: Read</p> 294<p>Default value: 4294967295</p> 295</div> 296<hr> 297<div class="refsect2"> 298<a name="GstPulseSrc--volume"></a><h3>The <code class="literal">“volume”</code> property</h3> 299<pre class="programlisting"> “volume” <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a></pre> 300<p>The volume of the record stream.</p> 301<p>Flags: Read / Write</p> 302<p>Allowed values: [0,10]</p> 303<p>Default value: 1</p> 304</div> 305<hr> 306<div class="refsect2"> 307<a name="GstPulseSrc--client-name"></a><h3>The <code class="literal">“client-name”</code> property</h3> 308<pre class="programlisting"> “client-name” <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</pre> 309<p>The PulseAudio client name to use.</p> 310<p>Flags: Read / Write</p> 311<p>Default value: "gst-plugins-good-plugins-scan"</p> 312</div> 313<hr> 314<div class="refsect2"> 315<a name="GstPulseSrc--current-device"></a><h3>The <code class="literal">“current-device”</code> property</h3> 316<pre class="programlisting"> “current-device” <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</pre> 317<p>The current PulseAudio source device.</p> 318<p>Flags: Read</p> 319<p>Default value: NULL</p> 320</div> 321</div> 322<div class="refsect1"> 323<a name="gst-plugins-good-plugins-pulsesrc.see-also"></a><h2>See Also</h2> 324<p>pulsesink</p> 325</div> 326</div> 327<div class="footer"> 328<hr>Generated by GTK-Doc V1.28</div> 329</body> 330</html>