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>gst-plugins-good Elements: 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="index.html" title="GStreamer Good Plugins 1.0 Plugins Reference Manual"> 9<link rel="prev" href="index.html" title="GStreamer Good Plugins 1.0 Plugins Reference Manual"> 10<link rel="next" href="gst-plugins-good-plugins-3gppmux.html" title="3gppmux"> 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"></td> 17<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td> 18<td><img src="up-insensitive.png" width="16" height="16" border="0"></td> 19<td><a accesskey="p" href="index.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td> 20<td><a accesskey="n" href="gst-plugins-good-plugins-3gppmux.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td> 21</tr></table> 22<div class="chapter"> 23<div class="titlepage"><div><div><h1 class="title"> 24<a name="id-1.2"></a>gst-plugins-good Elements</h1></div></div></div> 25<div class="toc"><dl class="toc"> 26<dt> 27<span class="refentrytitle"><a href="gst-plugins-good-plugins-3gppmux.html">3gppmux</a></span><span class="refpurpose"> — Muxer for 3GPP (.3gp) files</span> 28</dt> 29<dt> 30<span class="refentrytitle"><a href="gst-plugins-good-plugins-aacparse.html">aacparse</a></span><span class="refpurpose"> — AAC parser</span> 31</dt> 32<dt> 33<span class="refentrytitle"><a href="gst-plugins-good-plugins-aasink.html">aasink</a></span><span class="refpurpose"></span> 34</dt> 35<dt> 36<span class="refentrytitle"><a href="gst-plugins-good-plugins-ac3parse.html">ac3parse</a></span><span class="refpurpose"> — AC3 parser</span> 37</dt> 38<dt> 39<span class="refentrytitle"><a href="gst-plugins-good-plugins-agingtv.html">agingtv</a></span><span class="refpurpose"></span> 40</dt> 41<dt> 42<span class="refentrytitle"><a href="gst-plugins-good-plugins-alawdec.html">alawdec</a></span><span class="refpurpose"></span> 43</dt> 44<dt> 45<span class="refentrytitle"><a href="gst-plugins-good-plugins-alawenc.html">alawenc</a></span><span class="refpurpose"></span> 46</dt> 47<dt> 48<span class="refentrytitle"><a href="gst-plugins-good-plugins-alphacolor.html">alphacolor</a></span><span class="refpurpose"></span> 49</dt> 50<dt> 51<span class="refentrytitle"><a href="gst-plugins-good-plugins-alpha.html">alpha</a></span><span class="refpurpose"></span> 52</dt> 53<dt> 54<span class="refentrytitle"><a href="gst-plugins-good-plugins-amrparse.html">amrparse</a></span><span class="refpurpose"> — AMR parser</span> 55</dt> 56<dt> 57<span class="refentrytitle"><a href="gst-plugins-good-plugins-apedemux.html">apedemux</a></span><span class="refpurpose"></span> 58</dt> 59<dt> 60<span class="refentrytitle"><a href="gst-plugins-good-plugins-apev2mux.html">apev2mux</a></span><span class="refpurpose"></span> 61</dt> 62<dt> 63<span class="refentrytitle"><a href="gst-plugins-good-plugins-aspectratiocrop.html">aspectratiocrop</a></span><span class="refpurpose"></span> 64</dt> 65<dt> 66<span class="refentrytitle"><a href="gst-plugins-good-plugins-asteriskh263.html">asteriskh263</a></span><span class="refpurpose"></span> 67</dt> 68<dt> 69<span class="refentrytitle"><a href="gst-plugins-good-plugins-audioamplify.html">audioamplify</a></span><span class="refpurpose"></span> 70</dt> 71<dt> 72<span class="refentrytitle"><a href="gst-plugins-good-plugins-audiochebband.html">audiochebband</a></span><span class="refpurpose"></span> 73</dt> 74<dt> 75<span class="refentrytitle"><a href="gst-plugins-good-plugins-audiocheblimit.html">audiocheblimit</a></span><span class="refpurpose"></span> 76</dt> 77<dt> 78<span class="refentrytitle"><a href="gst-plugins-good-plugins-audiodynamic.html">audiodynamic</a></span><span class="refpurpose"></span> 79</dt> 80<dt> 81<span class="refentrytitle"><a href="gst-plugins-good-plugins-audioecho.html">audioecho</a></span><span class="refpurpose"></span> 82</dt> 83<dt> 84<span class="refentrytitle"><a href="gst-plugins-good-plugins-audiofirfilter.html">audiofirfilter</a></span><span class="refpurpose"></span> 85</dt> 86<dt> 87<span class="refentrytitle"><a href="gst-plugins-good-plugins-audioiirfilter.html">audioiirfilter</a></span><span class="refpurpose"></span> 88</dt> 89<dt> 90<span class="refentrytitle"><a href="gst-plugins-good-plugins-audioinvert.html">audioinvert</a></span><span class="refpurpose"></span> 91</dt> 92<dt> 93<span class="refentrytitle"><a href="gst-plugins-good-plugins-audiokaraoke.html">audiokaraoke</a></span><span class="refpurpose"></span> 94</dt> 95<dt> 96<span class="refentrytitle"><a href="gst-plugins-good-plugins-audiopanorama.html">audiopanorama</a></span><span class="refpurpose"></span> 97</dt> 98<dt> 99<span class="refentrytitle"><a href="gst-plugins-good-plugins-audiowsincband.html">audiowsincband</a></span><span class="refpurpose"></span> 100</dt> 101<dt> 102<span class="refentrytitle"><a href="gst-plugins-good-plugins-audiowsinclimit.html">audiowsinclimit</a></span><span class="refpurpose"></span> 103</dt> 104<dt> 105<span class="refentrytitle"><a href="gst-plugins-good-plugins-auparse.html">auparse</a></span><span class="refpurpose"></span> 106</dt> 107<dt> 108<span class="refentrytitle"><a href="gst-plugins-good-plugins-autoaudiosink.html">autoaudiosink</a></span><span class="refpurpose"></span> 109</dt> 110<dt> 111<span class="refentrytitle"><a href="gst-plugins-good-plugins-autoaudiosrc.html">autoaudiosrc</a></span><span class="refpurpose"></span> 112</dt> 113<dt> 114<span class="refentrytitle"><a href="gst-plugins-good-plugins-autovideosink.html">autovideosink</a></span><span class="refpurpose"></span> 115</dt> 116<dt> 117<span class="refentrytitle"><a href="gst-plugins-good-plugins-autovideosrc.html">autovideosrc</a></span><span class="refpurpose"></span> 118</dt> 119<dt> 120<span class="refentrytitle"><a href="gst-plugins-good-plugins-avidemux.html">avidemux</a></span><span class="refpurpose"></span> 121</dt> 122<dt> 123<span class="refentrytitle"><a href="gst-plugins-good-plugins-avimux.html">avimux</a></span><span class="refpurpose"></span> 124</dt> 125<dt> 126<span class="refentrytitle"><a href="gst-plugins-good-plugins-avisubtitle.html">avisubtitle</a></span><span class="refpurpose"></span> 127</dt> 128<dt> 129<span class="refentrytitle"><a href="gst-plugins-good-plugins-breakmydata.html">breakmydata</a></span><span class="refpurpose"></span> 130</dt> 131<dt> 132<span class="refentrytitle"><a href="gst-plugins-good-plugins-cacasink.html">cacasink</a></span><span class="refpurpose"></span> 133</dt> 134<dt> 135<span class="refentrytitle"><a href="gst-plugins-good-plugins-cairooverlay.html">cairooverlay</a></span><span class="refpurpose"></span> 136</dt> 137<dt> 138<span class="refentrytitle"><a href="gst-plugins-good-plugins-capssetter.html">capssetter</a></span><span class="refpurpose"></span> 139</dt> 140<dt> 141<span class="refentrytitle"><a href="gst-plugins-good-plugins-cpureport.html">cpureport</a></span><span class="refpurpose"></span> 142</dt> 143<dt> 144<span class="refentrytitle"><a href="gst-plugins-good-plugins-cutter.html">cutter</a></span><span class="refpurpose"></span> 145</dt> 146<dt> 147<span class="refentrytitle"><a href="gst-plugins-good-plugins-dcaparse.html">dcaparse</a></span><span class="refpurpose"> — DCA (DTS Coherent Acoustics) parser</span> 148</dt> 149<dt> 150<span class="refentrytitle"><a href="gst-plugins-good-plugins-deinterlace.html">deinterlace</a></span><span class="refpurpose"></span> 151</dt> 152<dt> 153<span class="refentrytitle"><a href="gst-plugins-good-plugins-deinterleave.html">deinterleave</a></span><span class="refpurpose"></span> 154</dt> 155<dt> 156<span class="refentrytitle"><a href="gst-plugins-good-plugins-dicetv.html">dicetv</a></span><span class="refpurpose"></span> 157</dt> 158<dt> 159<span class="refentrytitle"><a href="gst-plugins-good-plugins-directsoundsink.html">directsoundsink</a></span><span class="refpurpose"></span> 160</dt> 161<dt> 162<span class="refentrytitle"><a href="gst-plugins-good-plugins-dtmfsrc.html">dtmfsrc</a></span><span class="refpurpose"></span> 163</dt> 164<dt> 165<span class="refentrytitle"><a href="gst-plugins-good-plugins-dv1394src.html">dv1394src</a></span><span class="refpurpose"></span> 166</dt> 167<dt> 168<span class="refentrytitle"><a href="gst-plugins-good-plugins-dvdec.html">dvdec</a></span><span class="refpurpose"></span> 169</dt> 170<dt> 171<span class="refentrytitle"><a href="gst-plugins-good-plugins-dvdemux.html">dvdemux</a></span><span class="refpurpose"></span> 172</dt> 173<dt> 174<span class="refentrytitle"><a href="gst-plugins-good-plugins-dynudpsink.html">dynudpsink</a></span><span class="refpurpose"></span> 175</dt> 176<dt> 177<span class="refentrytitle"><a href="gst-plugins-good-plugins-edgetv.html">edgetv</a></span><span class="refpurpose"></span> 178</dt> 179<dt> 180<span class="refentrytitle"><a href="gst-plugins-good-plugins-equalizer-10bands.html">equalizer-10bands</a></span><span class="refpurpose"></span> 181</dt> 182<dt> 183<span class="refentrytitle"><a href="gst-plugins-good-plugins-equalizer-3bands.html">equalizer-3bands</a></span><span class="refpurpose"></span> 184</dt> 185<dt> 186<span class="refentrytitle"><a href="gst-plugins-good-plugins-equalizer-nbands.html">equalizer-nbands</a></span><span class="refpurpose"></span> 187</dt> 188<dt> 189<span class="refentrytitle"><a href="gst-plugins-good-plugins-flacdec.html">flacdec</a></span><span class="refpurpose"></span> 190</dt> 191<dt> 192<span class="refentrytitle"><a href="gst-plugins-good-plugins-flacenc.html">flacenc</a></span><span class="refpurpose"></span> 193</dt> 194<dt> 195<span class="refentrytitle"><a href="gst-plugins-good-plugins-flacparse.html">flacparse</a></span><span class="refpurpose"></span> 196</dt> 197<dt> 198<span class="refentrytitle"><a href="gst-plugins-good-plugins-flactag.html">flactag</a></span><span class="refpurpose"></span> 199</dt> 200<dt> 201<span class="refentrytitle"><a href="gst-plugins-good-plugins-flvdemux.html">flvdemux</a></span><span class="refpurpose"></span> 202</dt> 203<dt> 204<span class="refentrytitle"><a href="gst-plugins-good-plugins-flvmux.html">flvmux</a></span><span class="refpurpose"></span> 205</dt> 206<dt> 207<span class="refentrytitle"><a href="gst-plugins-good-plugins-flxdec.html">flxdec</a></span><span class="refpurpose"></span> 208</dt> 209<dt> 210<span class="refentrytitle"><a href="gst-plugins-good-plugins-gamma.html">gamma</a></span><span class="refpurpose"></span> 211</dt> 212<dt> 213<span class="refentrytitle"><a href="gst-plugins-good-plugins-gdkpixbufdec.html">gdkpixbufdec</a></span><span class="refpurpose"></span> 214</dt> 215<dt> 216<span class="refentrytitle"><a href="gst-plugins-good-plugins-gdkpixbufoverlay.html">gdkpixbufoverlay</a></span><span class="refpurpose"></span> 217</dt> 218<dt> 219<span class="refentrytitle"><a href="gst-plugins-good-plugins-gdkpixbufsink.html">gdkpixbufsink</a></span><span class="refpurpose"></span> 220</dt> 221<dt> 222<span class="refentrytitle"><a href="gst-plugins-good-plugins-goom2k1.html">goom2k1</a></span><span class="refpurpose"></span> 223</dt> 224<dt> 225<span class="refentrytitle"><a href="gst-plugins-good-plugins-goom.html">goom</a></span><span class="refpurpose"></span> 226</dt> 227<dt> 228<span class="refentrytitle"><a href="gst-plugins-good-plugins-gtkglsink.html">gtkglsink</a></span><span class="refpurpose"></span> 229</dt> 230<dt> 231<span class="refentrytitle"><a href="gst-plugins-good-plugins-gtksink.html">gtksink</a></span><span class="refpurpose"></span> 232</dt> 233<dt> 234<span class="refentrytitle"><a href="gst-plugins-good-plugins-hdv1394src.html">hdv1394src</a></span><span class="refpurpose"></span> 235</dt> 236<dt> 237<span class="refentrytitle"><a href="gst-plugins-good-plugins-icydemux.html">icydemux</a></span><span class="refpurpose"></span> 238</dt> 239<dt> 240<span class="refentrytitle"><a href="gst-plugins-good-plugins-id3demux.html">id3demux</a></span><span class="refpurpose"></span> 241</dt> 242<dt> 243<span class="refentrytitle"><a href="gst-plugins-good-plugins-id3v2mux.html">id3v2mux</a></span><span class="refpurpose"></span> 244</dt> 245<dt> 246<span class="refentrytitle"><a href="gst-plugins-good-plugins-iirequalizer.html">iirequalizer</a></span><span class="refpurpose"></span> 247</dt> 248<dt> 249<span class="refentrytitle"><a href="gst-plugins-good-plugins-imagefreeze.html">imagefreeze</a></span><span class="refpurpose"></span> 250</dt> 251<dt> 252<span class="refentrytitle"><a href="gst-plugins-good-plugins-interleave.html">interleave</a></span><span class="refpurpose"></span> 253</dt> 254<dt> 255<span class="refentrytitle"><a href="gst-plugins-good-plugins-ismlmux.html">ismlmux</a></span><span class="refpurpose"> — Muxer for ISML smooth streaming (.isml) files</span> 256</dt> 257<dt> 258<span class="refentrytitle"><a href="gst-plugins-good-plugins-jackaudiosink.html">jackaudiosink</a></span><span class="refpurpose"></span> 259</dt> 260<dt> 261<span class="refentrytitle"><a href="gst-plugins-good-plugins-jackaudiosrc.html">jackaudiosrc</a></span><span class="refpurpose"></span> 262</dt> 263<dt> 264<span class="refentrytitle"><a href="gst-plugins-good-plugins-jpegdec.html">jpegdec</a></span><span class="refpurpose"></span> 265</dt> 266<dt> 267<span class="refentrytitle"><a href="gst-plugins-good-plugins-jpegenc.html">jpegenc</a></span><span class="refpurpose"></span> 268</dt> 269<dt> 270<span class="refentrytitle"><a href="gst-plugins-good-plugins-lamemp3enc.html">lamemp3enc</a></span><span class="refpurpose"></span> 271</dt> 272<dt> 273<span class="refentrytitle"><a href="gst-plugins-good-plugins-level.html">level</a></span><span class="refpurpose"></span> 274</dt> 275<dt> 276<span class="refentrytitle"><a href="gst-plugins-good-plugins-matroskademux.html">matroskademux</a></span><span class="refpurpose"></span> 277</dt> 278<dt> 279<span class="refentrytitle"><a href="gst-plugins-good-plugins-matroskamux.html">matroskamux</a></span><span class="refpurpose"></span> 280</dt> 281<dt> 282<span class="refentrytitle"><a href="gst-plugins-good-plugins-matroskaparse.html">matroskaparse</a></span><span class="refpurpose"></span> 283</dt> 284<dt> 285<span class="refentrytitle"><a href="gst-plugins-good-plugins-mj2mux.html">mj2mux</a></span><span class="refpurpose"> — Muxer for Motion JPEG-2000 (.mj2) files</span> 286</dt> 287<dt> 288<span class="refentrytitle"><a href="gst-plugins-good-plugins-monoscope.html">monoscope</a></span><span class="refpurpose"></span> 289</dt> 290<dt> 291<span class="refentrytitle"><a href="gst-plugins-good-plugins-mp4mux.html">mp4mux</a></span><span class="refpurpose"> — Muxer for ISO MPEG-4 (.mp4) files</span> 292</dt> 293<dt> 294<span class="refentrytitle"><a href="gst-plugins-good-plugins-mpegaudioparse.html">mpegaudioparse</a></span><span class="refpurpose"> — MPEG audio parser</span> 295</dt> 296<dt> 297<span class="refentrytitle"><a href="gst-plugins-good-plugins-mpg123audiodec.html">mpg123audiodec</a></span><span class="refpurpose"></span> 298</dt> 299<dt> 300<span class="refentrytitle"><a href="gst-plugins-good-plugins-mulawdec.html">mulawdec</a></span><span class="refpurpose"></span> 301</dt> 302<dt> 303<span class="refentrytitle"><a href="gst-plugins-good-plugins-mulawenc.html">mulawenc</a></span><span class="refpurpose"></span> 304</dt> 305<dt> 306<span class="refentrytitle"><a href="gst-plugins-good-plugins-multifilesink.html">multifilesink</a></span><span class="refpurpose"></span> 307</dt> 308<dt> 309<span class="refentrytitle"><a href="gst-plugins-good-plugins-multifilesrc.html">multifilesrc</a></span><span class="refpurpose"></span> 310</dt> 311<dt> 312<span class="refentrytitle"><a href="gst-plugins-good-plugins-multipartdemux.html">multipartdemux</a></span><span class="refpurpose"></span> 313</dt> 314<dt> 315<span class="refentrytitle"><a href="gst-plugins-good-plugins-multipartmux.html">multipartmux</a></span><span class="refpurpose"></span> 316</dt> 317<dt> 318<span class="refentrytitle"><a href="gst-plugins-good-plugins-multiudpsink.html">multiudpsink</a></span><span class="refpurpose"></span> 319</dt> 320<dt> 321<span class="refentrytitle"><a href="gst-plugins-good-plugins-navigationtest.html">navigationtest</a></span><span class="refpurpose"></span> 322</dt> 323<dt> 324<span class="refentrytitle"><a href="gst-plugins-good-plugins-navseek.html">navseek</a></span><span class="refpurpose"></span> 325</dt> 326<dt> 327<span class="refentrytitle"><a href="gst-plugins-good-plugins-optv.html">optv</a></span><span class="refpurpose"></span> 328</dt> 329<dt> 330<span class="refentrytitle"><a href="gst-plugins-good-plugins-oss4sink.html">oss4sink</a></span><span class="refpurpose"></span> 331</dt> 332<dt> 333<span class="refentrytitle"><a href="gst-plugins-good-plugins-oss4src.html">oss4src</a></span><span class="refpurpose"></span> 334</dt> 335<dt> 336<span class="refentrytitle"><a href="gst-plugins-good-plugins-osssink.html">osssink</a></span><span class="refpurpose"></span> 337</dt> 338<dt> 339<span class="refentrytitle"><a href="gst-plugins-good-plugins-osssrc.html">osssrc</a></span><span class="refpurpose"></span> 340</dt> 341<dt> 342<span class="refentrytitle"><a href="gst-plugins-good-plugins-osxaudiosink.html">osxaudiosink</a></span><span class="refpurpose"></span> 343</dt> 344<dt> 345<span class="refentrytitle"><a href="gst-plugins-good-plugins-osxaudiosrc.html">osxaudiosrc</a></span><span class="refpurpose"></span> 346</dt> 347<dt> 348<span class="refentrytitle"><a href="gst-plugins-good-plugins-osxvideosink.html">osxvideosink</a></span><span class="refpurpose"></span> 349</dt> 350<dt> 351<span class="refentrytitle"><a href="gst-plugins-good-plugins-pngdec.html">pngdec</a></span><span class="refpurpose"></span> 352</dt> 353<dt> 354<span class="refentrytitle"><a href="gst-plugins-good-plugins-pngenc.html">pngenc</a></span><span class="refpurpose"></span> 355</dt> 356<dt> 357<span class="refentrytitle"><a href="gst-plugins-good-plugins-progressreport.html">progressreport</a></span><span class="refpurpose"></span> 358</dt> 359<dt> 360<span class="refentrytitle"><a href="gst-plugins-good-plugins-pulsesink.html">pulsesink</a></span><span class="refpurpose"></span> 361</dt> 362<dt> 363<span class="refentrytitle"><a href="gst-plugins-good-plugins-pulsesrc.html">pulsesrc</a></span><span class="refpurpose"></span> 364</dt> 365<dt> 366<span class="refentrytitle"><a href="gst-plugins-good-plugins-pushfilesrc.html">pushfilesrc</a></span><span class="refpurpose"></span> 367</dt> 368<dt> 369<span class="refentrytitle"><a href="gst-plugins-good-plugins-qmlglsink.html">qmlglsink</a></span><span class="refpurpose"></span> 370</dt> 371<dt> 372<span class="refentrytitle"><a href="gst-plugins-good-plugins-qmlglsrc.html">qmlglsrc</a></span><span class="refpurpose"></span> 373</dt> 374<dt> 375<span class="refentrytitle"><a href="gst-plugins-good-plugins-qtdemux.html">qtdemux</a></span><span class="refpurpose"></span> 376</dt> 377<dt> 378<span class="refentrytitle"><a href="gst-plugins-good-plugins-qtmoovrecover.html">qtmoovrecover</a></span><span class="refpurpose"> — Utility element for recovering unfinished quicktime files</span> 379</dt> 380<dt> 381<span class="refentrytitle"><a href="gst-plugins-good-plugins-qtmux.html">qtmux</a></span><span class="refpurpose"> — Muxer for quicktime(.mov) files</span> 382</dt> 383<dt> 384<span class="refentrytitle"><a href="gst-plugins-good-plugins-quarktv.html">quarktv</a></span><span class="refpurpose"></span> 385</dt> 386<dt> 387<span class="refentrytitle"><a href="gst-plugins-good-plugins-radioactv.html">radioactv</a></span><span class="refpurpose"></span> 388</dt> 389<dt> 390<span class="refentrytitle"><a href="gst-plugins-good-plugins-revtv.html">revtv</a></span><span class="refpurpose"></span> 391</dt> 392<dt> 393<span class="refentrytitle"><a href="gst-plugins-good-plugins-rganalysis.html">rganalysis</a></span><span class="refpurpose"></span> 394</dt> 395<dt> 396<span class="refentrytitle"><a href="gst-plugins-good-plugins-rglimiter.html">rglimiter</a></span><span class="refpurpose"></span> 397</dt> 398<dt> 399<span class="refentrytitle"><a href="gst-plugins-good-plugins-rgvolume.html">rgvolume</a></span><span class="refpurpose"></span> 400</dt> 401<dt> 402<span class="refentrytitle"><a href="gst-plugins-good-plugins-rippletv.html">rippletv</a></span><span class="refpurpose"></span> 403</dt> 404<dt> 405<span class="refentrytitle"><a href="gst-plugins-good-plugins-rndbuffersize.html">rndbuffersize</a></span><span class="refpurpose"></span> 406</dt> 407<dt> 408<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpac3depay.html">rtpac3depay</a></span><span class="refpurpose"></span> 409</dt> 410<dt> 411<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpac3pay.html">rtpac3pay</a></span><span class="refpurpose"></span> 412</dt> 413<dt> 414<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpamrdepay.html">rtpamrdepay</a></span><span class="refpurpose"></span> 415</dt> 416<dt> 417<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpamrpay.html">rtpamrpay</a></span><span class="refpurpose"></span> 418</dt> 419<dt> 420<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpbin.html">rtpbin</a></span><span class="refpurpose"></span> 421</dt> 422<dt> 423<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpbvdepay.html">rtpbvdepay</a></span><span class="refpurpose"></span> 424</dt> 425<dt> 426<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpbvpay.html">rtpbvpay</a></span><span class="refpurpose"></span> 427</dt> 428<dt> 429<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpceltdepay.html">rtpceltdepay</a></span><span class="refpurpose"></span> 430</dt> 431<dt> 432<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpceltpay.html">rtpceltpay</a></span><span class="refpurpose"></span> 433</dt> 434<dt> 435<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpdec.html">rtpdec</a></span><span class="refpurpose"></span> 436</dt> 437<dt> 438<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpdtmfdepay.html">rtpdtmfdepay</a></span><span class="refpurpose"></span> 439</dt> 440<dt> 441<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpdtmfmux.html">rtpdtmfmux</a></span><span class="refpurpose"></span> 442</dt> 443<dt> 444<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpdtmfsrc.html">rtpdtmfsrc</a></span><span class="refpurpose"></span> 445</dt> 446<dt> 447<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpdvdepay.html">rtpdvdepay</a></span><span class="refpurpose"></span> 448</dt> 449<dt> 450<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpdvpay.html">rtpdvpay</a></span><span class="refpurpose"></span> 451</dt> 452<dt> 453<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpg722depay.html">rtpg722depay</a></span><span class="refpurpose"></span> 454</dt> 455<dt> 456<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpg722pay.html">rtpg722pay</a></span><span class="refpurpose"></span> 457</dt> 458<dt> 459<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpg723depay.html">rtpg723depay</a></span><span class="refpurpose"></span> 460</dt> 461<dt> 462<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpg723pay.html">rtpg723pay</a></span><span class="refpurpose"></span> 463</dt> 464<dt> 465<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpg726depay.html">rtpg726depay</a></span><span class="refpurpose"></span> 466</dt> 467<dt> 468<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpg726pay.html">rtpg726pay</a></span><span class="refpurpose"></span> 469</dt> 470<dt> 471<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpg729depay.html">rtpg729depay</a></span><span class="refpurpose"></span> 472</dt> 473<dt> 474<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpg729pay.html">rtpg729pay</a></span><span class="refpurpose"></span> 475</dt> 476<dt> 477<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpgsmdepay.html">rtpgsmdepay</a></span><span class="refpurpose"></span> 478</dt> 479<dt> 480<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpgsmpay.html">rtpgsmpay</a></span><span class="refpurpose"></span> 481</dt> 482<dt> 483<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpgstdepay.html">rtpgstdepay</a></span><span class="refpurpose"></span> 484</dt> 485<dt> 486<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpgstpay.html">rtpgstpay</a></span><span class="refpurpose"></span> 487</dt> 488<dt> 489<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtph261depay.html">rtph261depay</a></span><span class="refpurpose"></span> 490</dt> 491<dt> 492<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtph261pay.html">rtph261pay</a></span><span class="refpurpose"></span> 493</dt> 494<dt> 495<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtph263depay.html">rtph263depay</a></span><span class="refpurpose"></span> 496</dt> 497<dt> 498<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtph263pay.html">rtph263pay</a></span><span class="refpurpose"></span> 499</dt> 500<dt> 501<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtph263pdepay.html">rtph263pdepay</a></span><span class="refpurpose"></span> 502</dt> 503<dt> 504<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtph263ppay.html">rtph263ppay</a></span><span class="refpurpose"></span> 505</dt> 506<dt> 507<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtph264depay.html">rtph264depay</a></span><span class="refpurpose"></span> 508</dt> 509<dt> 510<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtph264pay.html">rtph264pay</a></span><span class="refpurpose"></span> 511</dt> 512<dt> 513<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtph265depay.html">rtph265depay</a></span><span class="refpurpose"></span> 514</dt> 515<dt> 516<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtph265pay.html">rtph265pay</a></span><span class="refpurpose"></span> 517</dt> 518<dt> 519<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpilbcdepay.html">rtpilbcdepay</a></span><span class="refpurpose"></span> 520</dt> 521<dt> 522<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpilbcpay.html">rtpilbcpay</a></span><span class="refpurpose"></span> 523</dt> 524<dt> 525<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpj2kdepay.html">rtpj2kdepay</a></span><span class="refpurpose"></span> 526</dt> 527<dt> 528<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpj2kpay.html">rtpj2kpay</a></span><span class="refpurpose"></span> 529</dt> 530<dt> 531<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpjitterbuffer.html">rtpjitterbuffer</a></span><span class="refpurpose"></span> 532</dt> 533<dt> 534<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpjpegdepay.html">rtpjpegdepay</a></span><span class="refpurpose"></span> 535</dt> 536<dt> 537<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpjpegpay.html">rtpjpegpay</a></span><span class="refpurpose"></span> 538</dt> 539<dt> 540<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpklvdepay.html">rtpklvdepay</a></span><span class="refpurpose"></span> 541</dt> 542<dt> 543<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpklvpay.html">rtpklvpay</a></span><span class="refpurpose"></span> 544</dt> 545<dt> 546<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpL8depay.html">rtpL8depay</a></span><span class="refpurpose"></span> 547</dt> 548<dt> 549<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpL8pay.html">rtpL8pay</a></span><span class="refpurpose"></span> 550</dt> 551<dt> 552<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpL16depay.html">rtpL16depay</a></span><span class="refpurpose"></span> 553</dt> 554<dt> 555<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpL16pay.html">rtpL16pay</a></span><span class="refpurpose"></span> 556</dt> 557<dt> 558<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpL24depay.html">rtpL24depay</a></span><span class="refpurpose"></span> 559</dt> 560<dt> 561<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpL24pay.html">rtpL24pay</a></span><span class="refpurpose"></span> 562</dt> 563<dt> 564<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpmp1sdepay.html">rtpmp1sdepay</a></span><span class="refpurpose"></span> 565</dt> 566<dt> 567<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpmp2tdepay.html">rtpmp2tdepay</a></span><span class="refpurpose"></span> 568</dt> 569<dt> 570<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpmp2tpay.html">rtpmp2tpay</a></span><span class="refpurpose"></span> 571</dt> 572<dt> 573<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpmp4adepay.html">rtpmp4adepay</a></span><span class="refpurpose"></span> 574</dt> 575<dt> 576<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpmp4apay.html">rtpmp4apay</a></span><span class="refpurpose"></span> 577</dt> 578<dt> 579<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpmp4gdepay.html">rtpmp4gdepay</a></span><span class="refpurpose"></span> 580</dt> 581<dt> 582<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpmp4gpay.html">rtpmp4gpay</a></span><span class="refpurpose"></span> 583</dt> 584<dt> 585<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpmp4vdepay.html">rtpmp4vdepay</a></span><span class="refpurpose"></span> 586</dt> 587<dt> 588<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpmp4vpay.html">rtpmp4vpay</a></span><span class="refpurpose"></span> 589</dt> 590<dt> 591<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpmpadepay.html">rtpmpadepay</a></span><span class="refpurpose"></span> 592</dt> 593<dt> 594<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpmpapay.html">rtpmpapay</a></span><span class="refpurpose"></span> 595</dt> 596<dt> 597<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpmparobustdepay.html">rtpmparobustdepay</a></span><span class="refpurpose"></span> 598</dt> 599<dt> 600<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpmpvdepay.html">rtpmpvdepay</a></span><span class="refpurpose"></span> 601</dt> 602<dt> 603<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpmpvpay.html">rtpmpvpay</a></span><span class="refpurpose"></span> 604</dt> 605<dt> 606<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpmux.html">rtpmux</a></span><span class="refpurpose"></span> 607</dt> 608<dt> 609<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpopusdepay.html">rtpopusdepay</a></span><span class="refpurpose"></span> 610</dt> 611<dt> 612<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpopuspay.html">rtpopuspay</a></span><span class="refpurpose"></span> 613</dt> 614<dt> 615<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtppcmadepay.html">rtppcmadepay</a></span><span class="refpurpose"></span> 616</dt> 617<dt> 618<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtppcmapay.html">rtppcmapay</a></span><span class="refpurpose"></span> 619</dt> 620<dt> 621<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtppcmudepay.html">rtppcmudepay</a></span><span class="refpurpose"></span> 622</dt> 623<dt> 624<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtppcmupay.html">rtppcmupay</a></span><span class="refpurpose"></span> 625</dt> 626<dt> 627<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpptdemux.html">rtpptdemux</a></span><span class="refpurpose"></span> 628</dt> 629<dt> 630<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpqcelpdepay.html">rtpqcelpdepay</a></span><span class="refpurpose"></span> 631</dt> 632<dt> 633<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpqdm2depay.html">rtpqdm2depay</a></span><span class="refpurpose"></span> 634</dt> 635<dt> 636<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpreddec.html">rtpreddec</a></span><span class="refpurpose"> — RTP Redundant Audio Data (RED) decoder</span> 637</dt> 638<dt> 639<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpredenc.html">rtpredenc</a></span><span class="refpurpose"> — RTP Redundant Audio Data (RED) encoder</span> 640</dt> 641<dt> 642<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtprtxqueue.html">rtprtxqueue</a></span><span class="refpurpose"></span> 643</dt> 644<dt> 645<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtprtxreceive.html">rtprtxreceive</a></span><span class="refpurpose"></span> 646</dt> 647<dt> 648<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtprtxsend.html">rtprtxsend</a></span><span class="refpurpose"></span> 649</dt> 650<dt> 651<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpsbcdepay.html">rtpsbcdepay</a></span><span class="refpurpose"></span> 652</dt> 653<dt> 654<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpsbcpay.html">rtpsbcpay</a></span><span class="refpurpose"></span> 655</dt> 656<dt> 657<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpsession.html">rtpsession</a></span><span class="refpurpose"></span> 658</dt> 659<dt> 660<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpsirendepay.html">rtpsirendepay</a></span><span class="refpurpose"></span> 661</dt> 662<dt> 663<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpsirenpay.html">rtpsirenpay</a></span><span class="refpurpose"></span> 664</dt> 665<dt> 666<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpspeexdepay.html">rtpspeexdepay</a></span><span class="refpurpose"></span> 667</dt> 668<dt> 669<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpspeexpay.html">rtpspeexpay</a></span><span class="refpurpose"></span> 670</dt> 671<dt> 672<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpssrcdemux.html">rtpssrcdemux</a></span><span class="refpurpose"></span> 673</dt> 674<dt> 675<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpstorage.html">rtpstorage</a></span><span class="refpurpose"> — RTP storage for forward error correction (FEC) in rtpbin</span> 676</dt> 677<dt> 678<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpstreamdepay.html">rtpstreamdepay</a></span><span class="refpurpose"></span> 679</dt> 680<dt> 681<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpstreampay.html">rtpstreampay</a></span><span class="refpurpose"></span> 682</dt> 683<dt> 684<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpsv3vdepay.html">rtpsv3vdepay</a></span><span class="refpurpose"></span> 685</dt> 686<dt> 687<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtptheoradepay.html">rtptheoradepay</a></span><span class="refpurpose"></span> 688</dt> 689<dt> 690<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtptheorapay.html">rtptheorapay</a></span><span class="refpurpose"></span> 691</dt> 692<dt> 693<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpulpfecdec.html">rtpulpfecdec</a></span><span class="refpurpose"> — Generic RTP Forward Error Correction (FEC) decoder</span> 694</dt> 695<dt> 696<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpulpfecenc.html">rtpulpfecenc</a></span><span class="refpurpose"> — Generic RTP Forward Error Correction (FEC) encoder</span> 697</dt> 698<dt> 699<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpvorbisdepay.html">rtpvorbisdepay</a></span><span class="refpurpose"></span> 700</dt> 701<dt> 702<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpvorbispay.html">rtpvorbispay</a></span><span class="refpurpose"></span> 703</dt> 704<dt> 705<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpvp8depay.html">rtpvp8depay</a></span><span class="refpurpose"></span> 706</dt> 707<dt> 708<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpvp8pay.html">rtpvp8pay</a></span><span class="refpurpose"></span> 709</dt> 710<dt> 711<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpvp9depay.html">rtpvp9depay</a></span><span class="refpurpose"></span> 712</dt> 713<dt> 714<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpvp9pay.html">rtpvp9pay</a></span><span class="refpurpose"></span> 715</dt> 716<dt> 717<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpvrawdepay.html">rtpvrawdepay</a></span><span class="refpurpose"></span> 718</dt> 719<dt> 720<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpvrawpay.html">rtpvrawpay</a></span><span class="refpurpose"></span> 721</dt> 722<dt> 723<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtpxqtdepay.html">rtpxqtdepay</a></span><span class="refpurpose"></span> 724</dt> 725<dt> 726<span class="refentrytitle"><a href="gst-plugins-good-plugins-rtspsrc.html">rtspsrc</a></span><span class="refpurpose"></span> 727</dt> 728<dt> 729<span class="refentrytitle"><a href="gst-plugins-good-plugins-sbcparse.html">sbcparse</a></span><span class="refpurpose"></span> 730</dt> 731<dt> 732<span class="refentrytitle"><a href="gst-plugins-good-plugins-scaletempo.html">scaletempo</a></span><span class="refpurpose"></span> 733</dt> 734<dt> 735<span class="refentrytitle"><a href="gst-plugins-good-plugins-shagadelictv.html">shagadelictv</a></span><span class="refpurpose"></span> 736</dt> 737<dt> 738<span class="refentrytitle"><a href="gst-plugins-good-plugins-shapewipe.html">shapewipe</a></span><span class="refpurpose"></span> 739</dt> 740<dt> 741<span class="refentrytitle"><a href="gst-plugins-good-plugins-shout2send.html">shout2send</a></span><span class="refpurpose"></span> 742</dt> 743<dt> 744<span class="refentrytitle"><a href="gst-plugins-good-plugins-smptealpha.html">smptealpha</a></span><span class="refpurpose"></span> 745</dt> 746<dt> 747<span class="refentrytitle"><a href="gst-plugins-good-plugins-smpte.html">smpte</a></span><span class="refpurpose"></span> 748</dt> 749<dt> 750<span class="refentrytitle"><a href="gst-plugins-good-plugins-souphttpclientsink.html">souphttpclientsink</a></span><span class="refpurpose"></span> 751</dt> 752<dt> 753<span class="refentrytitle"><a href="gst-plugins-good-plugins-souphttpsrc.html">souphttpsrc</a></span><span class="refpurpose"></span> 754</dt> 755<dt> 756<span class="refentrytitle"><a href="gst-plugins-good-plugins-spectrum.html">spectrum</a></span><span class="refpurpose"></span> 757</dt> 758<dt> 759<span class="refentrytitle"><a href="gst-plugins-good-plugins-speexdec.html">speexdec</a></span><span class="refpurpose"></span> 760</dt> 761<dt> 762<span class="refentrytitle"><a href="gst-plugins-good-plugins-speexenc.html">speexenc</a></span><span class="refpurpose"></span> 763</dt> 764<dt> 765<span class="refentrytitle"><a href="gst-plugins-good-plugins-splitfilesrc.html">splitfilesrc</a></span><span class="refpurpose"></span> 766</dt> 767<dt> 768<span class="refentrytitle"><a href="gst-plugins-good-plugins-splitmuxsink.html">splitmuxsink</a></span><span class="refpurpose"> — Muxer wrapper for splitting output stream by size or time</span> 769</dt> 770<dt> 771<span class="refentrytitle"><a href="gst-plugins-good-plugins-splitmuxsrc.html">splitmuxsrc</a></span><span class="refpurpose"> — Split Demuxer bin that recombines files created by 772the splitmuxsink element.</span> 773</dt> 774<dt> 775<span class="refentrytitle"><a href="gst-plugins-good-plugins-streaktv.html">streaktv</a></span><span class="refpurpose"></span> 776</dt> 777<dt> 778<span class="refentrytitle"><a href="gst-plugins-good-plugins-taginject.html">taginject</a></span><span class="refpurpose"></span> 779</dt> 780<dt> 781<span class="refentrytitle"><a href="gst-plugins-good-plugins-testsink.html">testsink</a></span><span class="refpurpose"></span> 782</dt> 783<dt> 784<span class="refentrytitle"><a href="gst-plugins-good-plugins-twolamemp2enc.html">twolamemp2enc</a></span><span class="refpurpose"></span> 785</dt> 786<dt> 787<span class="refentrytitle"><a href="gst-plugins-good-plugins-udpsink.html">udpsink</a></span><span class="refpurpose"></span> 788</dt> 789<dt> 790<span class="refentrytitle"><a href="gst-plugins-good-plugins-udpsrc.html">udpsrc</a></span><span class="refpurpose"></span> 791</dt> 792<dt> 793<span class="refentrytitle"><a href="gst-plugins-good-plugins-v4l2radio.html">v4l2radio</a></span><span class="refpurpose"></span> 794</dt> 795<dt> 796<span class="refentrytitle"><a href="gst-plugins-good-plugins-v4l2sink.html">v4l2sink</a></span><span class="refpurpose"></span> 797</dt> 798<dt> 799<span class="refentrytitle"><a href="gst-plugins-good-plugins-v4l2src.html">v4l2src</a></span><span class="refpurpose"></span> 800</dt> 801<dt> 802<span class="refentrytitle"><a href="gst-plugins-good-plugins-vertigotv.html">vertigotv</a></span><span class="refpurpose"></span> 803</dt> 804<dt> 805<span class="refentrytitle"><a href="gst-plugins-good-plugins-videobalance.html">videobalance</a></span><span class="refpurpose"></span> 806</dt> 807<dt> 808<span class="refentrytitle"><a href="gst-plugins-good-plugins-videobox.html">videobox</a></span><span class="refpurpose"></span> 809</dt> 810<dt> 811<span class="refentrytitle"><a href="gst-plugins-good-plugins-videocrop.html">videocrop</a></span><span class="refpurpose"></span> 812</dt> 813<dt> 814<span class="refentrytitle"><a href="gst-plugins-good-plugins-videoflip.html">videoflip</a></span><span class="refpurpose"></span> 815</dt> 816<dt> 817<span class="refentrytitle"><a href="gst-plugins-good-plugins-videomedian.html">videomedian</a></span><span class="refpurpose"></span> 818</dt> 819<dt> 820<span class="refentrytitle"><a href="gst-plugins-good-plugins-videomixer.html">videomixer</a></span><span class="refpurpose"></span> 821</dt> 822<dt> 823<span class="refentrytitle"><a href="gst-plugins-good-plugins-vp8dec.html">vp8dec</a></span><span class="refpurpose"></span> 824</dt> 825<dt> 826<span class="refentrytitle"><a href="gst-plugins-good-plugins-vp8enc.html">vp8enc</a></span><span class="refpurpose"></span> 827</dt> 828<dt> 829<span class="refentrytitle"><a href="gst-plugins-good-plugins-vp9dec.html">vp9dec</a></span><span class="refpurpose"></span> 830</dt> 831<dt> 832<span class="refentrytitle"><a href="gst-plugins-good-plugins-vp9enc.html">vp9enc</a></span><span class="refpurpose"></span> 833</dt> 834<dt> 835<span class="refentrytitle"><a href="gst-plugins-good-plugins-warptv.html">warptv</a></span><span class="refpurpose"></span> 836</dt> 837<dt> 838<span class="refentrytitle"><a href="gst-plugins-good-plugins-waveformsink.html">waveformsink</a></span><span class="refpurpose"></span> 839</dt> 840<dt> 841<span class="refentrytitle"><a href="gst-plugins-good-plugins-wavenc.html">wavenc</a></span><span class="refpurpose"></span> 842</dt> 843<dt> 844<span class="refentrytitle"><a href="gst-plugins-good-plugins-wavpackdec.html">wavpackdec</a></span><span class="refpurpose"></span> 845</dt> 846<dt> 847<span class="refentrytitle"><a href="gst-plugins-good-plugins-wavpackenc.html">wavpackenc</a></span><span class="refpurpose"></span> 848</dt> 849<dt> 850<span class="refentrytitle"><a href="gst-plugins-good-plugins-wavpackparse.html">wavpackparse</a></span><span class="refpurpose"> — Wavpack parser</span> 851</dt> 852<dt> 853<span class="refentrytitle"><a href="gst-plugins-good-plugins-wavparse.html">wavparse</a></span><span class="refpurpose"></span> 854</dt> 855<dt> 856<span class="refentrytitle"><a href="gst-plugins-good-plugins-webmmux.html">webmmux</a></span><span class="refpurpose"></span> 857</dt> 858<dt> 859<span class="refentrytitle"><a href="gst-plugins-good-plugins-ximagesrc.html">ximagesrc</a></span><span class="refpurpose"></span> 860</dt> 861<dt> 862<span class="refentrytitle"><a href="gst-plugins-good-plugins-y4menc.html">y4menc</a></span><span class="refpurpose"></span> 863</dt> 864</dl></div> 865<pre class="programlisting"> 866/* GStreamer 867 * Copyright (C) 2009 Sebastian Droege <sebastian.droege@collabora.co.uk> 868 * 869 * This library is free software; you can redistribute it and/or 870 * modify it under the terms of the GNU Library General Public 871 * License as published by the Free Software Foundation; either 872 * version 2 of the License, or (at your option) any later version. 873 * 874 * This library is distributed in the hope that it will be useful, 875 * but WITHOUT ANY WARRANTY; without even the implied warranty of 876 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 877 * Library General Public License for more details. 878 * 879 * You should have received a copy of the GNU Library General Public 880 * License along with this library; if not, write to the 881 * Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, 882 * Boston, MA 02110-1301, USA. 883 */ 884 885/* This small sample application creates a bandpass FIR filter 886 * by transforming the frequency response to the filter kernel. 887 */ 888 889/* FIXME 0.11: suppress warnings for deprecated API such as GValueArray 890 * with newer GLib versions (>= 2.31.0) */ 891#define GLIB_DISABLE_DEPRECATION_WARNINGS 892 893#include <string.h> 894#include <math.h> 895 896#include <gst/gst.h> 897#include <gst/fft/gstfftf64.h> 898 899static gboolean 900on_message (GstBus * bus, GstMessage * message, gpointer user_data) 901{ 902 GMainLoop *loop = (GMainLoop *) user_data; 903 904 switch (GST_MESSAGE_TYPE (message)) { 905 case GST_MESSAGE_ERROR: 906 g_error ("Got ERROR"); 907 g_main_loop_quit (loop); 908 break; 909 case GST_MESSAGE_WARNING: 910 g_warning ("Got WARNING"); 911 g_main_loop_quit (loop); 912 break; 913 case GST_MESSAGE_EOS: 914 g_main_loop_quit (loop); 915 break; 916 default: 917 break; 918 } 919 920 return TRUE; 921} 922 923static void 924on_rate_changed (GstElement * element, gint rate, gpointer user_data) 925{ 926 GValueArray *va; 927 GValue v = { 0, }; 928 GstFFTF64 *fft; 929 GstFFTF64Complex frequency_response[17]; 930 gdouble tmp[32]; 931 gdouble filter_kernel[32]; 932 guint i; 933 934 /* Create the frequency response: zero outside 935 * a small frequency band */ 936 for (i = 0; i < 17; i++) { 937 if (i < 5 || i > 11) 938 frequency_response[i].r = 0.0; 939 else 940 frequency_response[i].r = 1.0; 941 942 frequency_response[i].i = 0.0; 943 } 944 945 /* Calculate the inverse FT of the frequency response */ 946 fft = gst_fft_f64_new (32, TRUE); 947 gst_fft_f64_inverse_fft (fft, frequency_response, tmp); 948 gst_fft_f64_free (fft); 949 950 /* Shift the inverse FT of the frequency response by 16, 951 * i.e. the half of the kernel length to get the 952 * impulse response. See http://www.dspguide.com/ch17/1.htm 953 * for more information. 954 */ 955 for (i = 0; i < 32; i++) 956 filter_kernel[i] = tmp[(i + 16) % 32]; 957 958 /* Apply the hamming window to the impulse response to get 959 * a better result than given from the rectangular window 960 */ 961 for (i = 0; i < 32; i++) 962 filter_kernel[i] *= (0.54 - 0.46 * cos (2 * G_PI * i / 32)); 963 964 va = g_value_array_new (1); 965 966 g_value_init (&v, G_TYPE_DOUBLE); 967 for (i = 0; i < 32; i++) { 968 g_value_set_double (&v, filter_kernel[i]); 969 g_value_array_append (va, &v); 970 g_value_reset (&v); 971 } 972 g_object_set (G_OBJECT (element), "kernel", va, NULL); 973 /* Latency is 1/2 of the kernel length for this method of 974 * calculating a filter kernel from the frequency response 975 */ 976 g_object_set (G_OBJECT (element), "latency", (gint64) (32 / 2), NULL); 977 g_value_array_free (va); 978} 979 980gint 981main (gint argc, gchar * argv[]) 982{ 983 GstElement *pipeline, *src, *filter, *conv, *sink; 984 GstBus *bus; 985 GMainLoop *loop; 986 987 gst_init (NULL, NULL); 988 989 pipeline = gst_element_factory_make ("pipeline", NULL); 990 991 src = gst_element_factory_make ("audiotestsrc", NULL); 992 g_object_set (G_OBJECT (src), "wave", 5, NULL); 993 994 filter = gst_element_factory_make ("audiofirfilter", NULL); 995 g_signal_connect (G_OBJECT (filter), "rate-changed", 996 G_CALLBACK (on_rate_changed), NULL); 997 998 conv = gst_element_factory_make ("audioconvert", NULL); 999 1000 sink = gst_element_factory_make ("autoaudiosink", NULL); 1001 g_return_val_if_fail (sink != NULL, -1); 1002 1003 gst_bin_add_many (GST_BIN (pipeline), src, filter, conv, sink, NULL); 1004 if (!gst_element_link_many (src, filter, conv, sink, NULL)) { 1005 g_error ("Failed to link elements"); 1006 return -2; 1007 } 1008 1009 loop = g_main_loop_new (NULL, FALSE); 1010 1011 bus = gst_pipeline_get_bus (GST_PIPELINE (pipeline)); 1012 gst_bus_add_signal_watch (bus); 1013 g_signal_connect (G_OBJECT (bus), "message", G_CALLBACK (on_message), loop); 1014 gst_object_unref (GST_OBJECT (bus)); 1015 1016 if (gst_element_set_state (pipeline, 1017 GST_STATE_PLAYING) == GST_STATE_CHANGE_FAILURE) { 1018 g_error ("Failed to go into PLAYING state"); 1019 return -3; 1020 } 1021 1022 g_main_loop_run (loop); 1023 1024 gst_element_set_state (pipeline, GST_STATE_NULL); 1025 1026 g_main_loop_unref (loop); 1027 gst_object_unref (pipeline); 1028 1029 return 0; 1030} 1031 1032</pre> 1033<pre class="programlisting"> 1034/* GStreamer 1035 * Copyright (C) 2009 Sebastian Droege <sebastian.droege@collabora.co.uk> 1036 * 1037 * This library is free software; you can redistribute it and/or 1038 * modify it under the terms of the GNU Library General Public 1039 * License as published by the Free Software Foundation; either 1040 * version 2 of the License, or (at your option) any later version. 1041 * 1042 * This library is distributed in the hope that it will be useful, 1043 * but WITHOUT ANY WARRANTY; without even the implied warranty of 1044 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 1045 * Library General Public License for more details. 1046 * 1047 * You should have received a copy of the GNU Library General Public 1048 * License along with this library; if not, write to the 1049 * Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, 1050 * Boston, MA 02110-1301, USA. 1051 */ 1052 1053/* This small sample application creates a lowpass IIR filter 1054 * and applies it to white noise. 1055 * See http://www.dspguide.com/ch19/2.htm for a description 1056 * of the IIR filter that is used. 1057 */ 1058 1059/* FIXME 0.11: suppress warnings for deprecated API such as GValueArray 1060 * with newer GLib versions (>= 2.31.0) */ 1061#define GLIB_DISABLE_DEPRECATION_WARNINGS 1062 1063#include <string.h> 1064#include <math.h> 1065 1066#include <gst/gst.h> 1067 1068/* Cutoff of 4000 Hz */ 1069#define CUTOFF (4000.0) 1070 1071static gboolean 1072on_message (GstBus * bus, GstMessage * message, gpointer user_data) 1073{ 1074 GMainLoop *loop = (GMainLoop *) user_data; 1075 1076 switch (GST_MESSAGE_TYPE (message)) { 1077 case GST_MESSAGE_ERROR: 1078 g_error ("Got ERROR"); 1079 g_main_loop_quit (loop); 1080 break; 1081 case GST_MESSAGE_WARNING: 1082 g_warning ("Got WARNING"); 1083 g_main_loop_quit (loop); 1084 break; 1085 case GST_MESSAGE_EOS: 1086 g_main_loop_quit (loop); 1087 break; 1088 default: 1089 break; 1090 } 1091 1092 return TRUE; 1093} 1094 1095static void 1096on_rate_changed (GstElement * element, gint rate, gpointer user_data) 1097{ 1098 GValueArray *va; 1099 GValue v = { 0, }; 1100 gdouble x; 1101 1102 if (rate / 2.0 > CUTOFF) 1103 x = exp (-2.0 * G_PI * (CUTOFF / rate)); 1104 else 1105 x = 0.0; 1106 1107 va = g_value_array_new (1); 1108 1109 g_value_init (&v, G_TYPE_DOUBLE); 1110 g_value_set_double (&v, 1.0 - x); 1111 g_value_array_append (va, &v); 1112 g_value_reset (&v); 1113 g_object_set (G_OBJECT (element), "a", va, NULL); 1114 g_value_array_free (va); 1115 1116 va = g_value_array_new (1); 1117 g_value_set_double (&v, x); 1118 g_value_array_append (va, &v); 1119 g_value_reset (&v); 1120 g_object_set (G_OBJECT (element), "b", va, NULL); 1121 g_value_array_free (va); 1122} 1123 1124gint 1125main (gint argc, gchar * argv[]) 1126{ 1127 GstElement *pipeline, *src, *filter, *conv, *sink; 1128 GstBus *bus; 1129 GMainLoop *loop; 1130 1131 gst_init (NULL, NULL); 1132 1133 pipeline = gst_element_factory_make ("pipeline", NULL); 1134 1135 src = gst_element_factory_make ("audiotestsrc", NULL); 1136 g_object_set (G_OBJECT (src), "wave", 5, NULL); 1137 1138 filter = gst_element_factory_make ("audioiirfilter", NULL); 1139 g_signal_connect (G_OBJECT (filter), "rate-changed", 1140 G_CALLBACK (on_rate_changed), NULL); 1141 1142 conv = gst_element_factory_make ("audioconvert", NULL); 1143 1144 sink = gst_element_factory_make ("autoaudiosink", NULL); 1145 g_return_val_if_fail (sink != NULL, -1); 1146 1147 gst_bin_add_many (GST_BIN (pipeline), src, filter, conv, sink, NULL); 1148 if (!gst_element_link_many (src, filter, conv, sink, NULL)) { 1149 g_error ("Failed to link elements"); 1150 return -2; 1151 } 1152 1153 loop = g_main_loop_new (NULL, FALSE); 1154 1155 bus = gst_pipeline_get_bus (GST_PIPELINE (pipeline)); 1156 gst_bus_add_signal_watch (bus); 1157 g_signal_connect (G_OBJECT (bus), "message", G_CALLBACK (on_message), loop); 1158 gst_object_unref (GST_OBJECT (bus)); 1159 1160 if (gst_element_set_state (pipeline, 1161 GST_STATE_PLAYING) == GST_STATE_CHANGE_FAILURE) { 1162 g_error ("Failed to go into PLAYING state"); 1163 return -3; 1164 } 1165 1166 g_main_loop_run (loop); 1167 1168 gst_element_set_state (pipeline, GST_STATE_NULL); 1169 1170 g_main_loop_unref (loop); 1171 gst_object_unref (pipeline); 1172 1173 return 0; 1174} 1175 1176</pre> 1177<pre class="programlisting"> 1178/* GStreamer 1179 * Copyright (C) 2000,2001,2002,2003,2005 1180 * Thomas Vander Stichele <thomas at apestaart dot org> 1181 * 1182 * This library is free software; you can redistribute it and/or 1183 * modify it under the terms of the GNU Library General Public 1184 * License as published by the Free Software Foundation; either 1185 * version 2 of the License, or (at your option) any later version. 1186 * 1187 * This library is distributed in the hope that it will be useful, 1188 * but WITHOUT ANY WARRANTY; without even the implied warranty of 1189 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 1190 * Library General Public License for more details. 1191 * 1192 * You should have received a copy of the GNU Library General Public 1193 * License along with this library; if not, write to the 1194 * Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, 1195 * Boston, MA 02110-1301, USA. 1196 */ 1197 1198#include <string.h> 1199#include <math.h> 1200 1201#define GLIB_DISABLE_DEPRECATION_WARNINGS 1202 1203#include <gst/gst.h> 1204 1205static gboolean 1206message_handler (GstBus * bus, GstMessage * message, gpointer data) 1207{ 1208 1209 if (message->type == GST_MESSAGE_ELEMENT) { 1210 const GstStructure *s = gst_message_get_structure (message); 1211 const gchar *name = gst_structure_get_name (s); 1212 1213 if (strcmp (name, "level") == 0) { 1214 gint channels; 1215 GstClockTime endtime; 1216 gdouble rms_dB, peak_dB, decay_dB; 1217 gdouble rms; 1218 const GValue *array_val; 1219 const GValue *value; 1220 GValueArray *rms_arr, *peak_arr, *decay_arr; 1221 gint i; 1222 1223 if (!gst_structure_get_clock_time (s, "endtime", &endtime)) 1224 g_warning ("Could not parse endtime"); 1225 1226 /* the values are packed into GValueArrays with the value per channel */ 1227 array_val = gst_structure_get_value (s, "rms"); 1228 rms_arr = (GValueArray *) g_value_get_boxed (array_val); 1229 1230 array_val = gst_structure_get_value (s, "peak"); 1231 peak_arr = (GValueArray *) g_value_get_boxed (array_val); 1232 1233 array_val = gst_structure_get_value (s, "decay"); 1234 decay_arr = (GValueArray *) g_value_get_boxed (array_val); 1235 1236 /* we can get the number of channels as the length of any of the value 1237 * arrays */ 1238 channels = rms_arr->n_values; 1239 g_print ("endtime: %" GST_TIME_FORMAT ", channels: %d\n", 1240 GST_TIME_ARGS (endtime), channels); 1241 for (i = 0; i < channels; ++i) { 1242 1243 g_print ("channel %d\n", i); 1244 value = g_value_array_get_nth (rms_arr, i); 1245 rms_dB = g_value_get_double (value); 1246 1247 value = g_value_array_get_nth (peak_arr, i); 1248 peak_dB = g_value_get_double (value); 1249 1250 value = g_value_array_get_nth (decay_arr, i); 1251 decay_dB = g_value_get_double (value); 1252 g_print (" RMS: %f dB, peak: %f dB, decay: %f dB\n", 1253 rms_dB, peak_dB, decay_dB); 1254 1255 /* converting from dB to normal gives us a value between 0.0 and 1.0 */ 1256 rms = pow (10, rms_dB / 20); 1257 g_print (" normalized rms value: %f\n", rms); 1258 } 1259 } 1260 } 1261 /* we handled the message we want, and ignored the ones we didn't want. 1262 * so the core can unref the message for us */ 1263 return TRUE; 1264} 1265 1266int 1267main (int argc, char *argv[]) 1268{ 1269 GstElement *audiotestsrc, *audioconvert, *level, *fakesink; 1270 GstElement *pipeline; 1271 GstCaps *caps; 1272 GstBus *bus; 1273 guint watch_id; 1274 GMainLoop *loop; 1275 1276 gst_init (&argc, &argv); 1277 1278 caps = gst_caps_from_string ("audio/x-raw,channels=2"); 1279 1280 pipeline = gst_pipeline_new (NULL); 1281 g_assert (pipeline); 1282 audiotestsrc = gst_element_factory_make ("audiotestsrc", NULL); 1283 g_assert (audiotestsrc); 1284 audioconvert = gst_element_factory_make ("audioconvert", NULL); 1285 g_assert (audioconvert); 1286 level = gst_element_factory_make ("level", NULL); 1287 g_assert (level); 1288 fakesink = gst_element_factory_make ("fakesink", NULL); 1289 g_assert (fakesink); 1290 1291 gst_bin_add_many (GST_BIN (pipeline), audiotestsrc, audioconvert, level, 1292 fakesink, NULL); 1293 if (!gst_element_link (audiotestsrc, audioconvert)) 1294 g_error ("Failed to link audiotestsrc and audioconvert"); 1295 if (!gst_element_link_filtered (audioconvert, level, caps)) 1296 g_error ("Failed to link audioconvert and level"); 1297 if (!gst_element_link (level, fakesink)) 1298 g_error ("Failed to link level and fakesink"); 1299 1300 /* make sure we'll get messages */ 1301 g_object_set (G_OBJECT (level), "post-messages", TRUE, NULL); 1302 /* run synced and not as fast as we can */ 1303 g_object_set (G_OBJECT (fakesink), "sync", TRUE, NULL); 1304 1305 bus = gst_element_get_bus (pipeline); 1306 watch_id = gst_bus_add_watch (bus, message_handler, NULL); 1307 1308 gst_element_set_state (pipeline, GST_STATE_PLAYING); 1309 1310 /* we need to run a GLib main loop to get the messages */ 1311 loop = g_main_loop_new (NULL, FALSE); 1312 g_main_loop_run (loop); 1313 1314 g_source_remove (watch_id); 1315 g_main_loop_unref (loop); 1316 return 0; 1317} 1318 1319</pre> 1320<pre class="programlisting"> 1321/* GStreamer 1322 * Copyright (C) 2006 Stefan Kost <ensonic@users.sf.net> 1323 * Copyright (C) 2008 Jan Schmidt <jan.schmidt@sun.com> 1324 * 1325 * This library is free software; you can redistribute it and/or 1326 * modify it under the terms of the GNU Library General Public 1327 * License as published by the Free Software Foundation; either 1328 * version 2 of the License, or (at your option) any later version. 1329 * 1330 * This library is distributed in the hope that it will be useful, 1331 * but WITHOUT ANY WARRANTY; without even the implied warranty of 1332 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 1333 * Library General Public License for more details. 1334 * 1335 * You should have received a copy of the GNU Library General Public 1336 * License along with this library; if not, write to the 1337 * Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, 1338 * Boston, MA 02110-1301, USA. 1339 */ 1340 1341#include <stdio.h> 1342#include <string.h> 1343#include <stdlib.h> 1344#include <gst/gst.h> 1345 1346static guint spect_bands = 20; 1347 1348#define AUDIOFREQ 32000 1349 1350/* receive spectral data from element message */ 1351static gboolean 1352message_handler (GstBus * bus, GstMessage * message, gpointer data) 1353{ 1354 if (message->type == GST_MESSAGE_ELEMENT) { 1355 const GstStructure *s = gst_message_get_structure (message); 1356 const gchar *name = gst_structure_get_name (s); 1357 GstClockTime endtime; 1358 1359 if (strcmp (name, "spectrum") == 0) { 1360 const GValue *magnitudes; 1361 const GValue *phases; 1362 const GValue *mag, *phase; 1363 gdouble freq; 1364 guint i; 1365 1366 if (!gst_structure_get_clock_time (s, "endtime", &endtime)) 1367 endtime = GST_CLOCK_TIME_NONE; 1368 1369 g_print ("New spectrum message, endtime %" GST_TIME_FORMAT "\n", 1370 GST_TIME_ARGS (endtime)); 1371 1372 magnitudes = gst_structure_get_value (s, "magnitude"); 1373 phases = gst_structure_get_value (s, "phase"); 1374 1375 for (i = 0; i < spect_bands; ++i) { 1376 freq = (gdouble) ((AUDIOFREQ / 2) * i + AUDIOFREQ / 4) / spect_bands; 1377 mag = gst_value_list_get_value (magnitudes, i); 1378 phase = gst_value_list_get_value (phases, i); 1379 1380 if (mag != NULL && phase != NULL) { 1381 g_print ("band %d (freq %g): magnitude %f dB phase %f\n", i, freq, 1382 g_value_get_float (mag), g_value_get_float (phase)); 1383 } 1384 } 1385 g_print ("\n"); 1386 } 1387 } 1388 return TRUE; 1389} 1390 1391int 1392main (int argc, char *argv[]) 1393{ 1394 GstElement *bin; 1395 GstElement *src, *audioconvert, *spectrum, *sink; 1396 GstBus *bus; 1397 GstCaps *caps; 1398 GMainLoop *loop; 1399 1400 gst_init (&argc, &argv); 1401 1402 bin = gst_pipeline_new ("bin"); 1403 1404 src = gst_element_factory_make ("audiotestsrc", "src"); 1405 g_object_set (G_OBJECT (src), "wave", 0, "freq", 6000.0, NULL); 1406 audioconvert = gst_element_factory_make ("audioconvert", NULL); 1407 g_assert (audioconvert); 1408 1409 spectrum = gst_element_factory_make ("spectrum", "spectrum"); 1410 g_object_set (G_OBJECT (spectrum), "bands", spect_bands, "threshold", -80, 1411 "post-messages", TRUE, "message-phase", TRUE, NULL); 1412 1413 sink = gst_element_factory_make ("fakesink", "sink"); 1414 g_object_set (G_OBJECT (sink), "sync", TRUE, NULL); 1415 1416 gst_bin_add_many (GST_BIN (bin), src, audioconvert, spectrum, sink, NULL); 1417 1418 caps = gst_caps_new_simple ("audio/x-raw", 1419 "rate", G_TYPE_INT, AUDIOFREQ, NULL); 1420 1421 if (!gst_element_link (src, audioconvert) || 1422 !gst_element_link_filtered (audioconvert, spectrum, caps) || 1423 !gst_element_link (spectrum, sink)) { 1424 fprintf (stderr, "can't link elements\n"); 1425 exit (1); 1426 } 1427 gst_caps_unref (caps); 1428 1429 bus = gst_element_get_bus (bin); 1430 gst_bus_add_watch (bus, message_handler, NULL); 1431 gst_object_unref (bus); 1432 1433 gst_element_set_state (bin, GST_STATE_PLAYING); 1434 1435 /* we need to run a GLib main loop to get the messages */ 1436 loop = g_main_loop_new (NULL, FALSE); 1437 g_main_loop_run (loop); 1438 1439 gst_element_set_state (bin, GST_STATE_NULL); 1440 1441 gst_object_unref (bin); 1442 1443 return 0; 1444} 1445 1446</pre> 1447</div> 1448<div class="footer"> 1449<hr>Generated by GTK-Doc V1.28</div> 1450</body> 1451</html>