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>GstAudioVisualizer: GStreamer Base Plugins 1.0 Library Reference Manual</title> 6<meta name="generator" content="DocBook XSL Stylesheets V1.79.1"> 7<link rel="home" href="index.html" title="GStreamer Base Plugins 1.0 Library Reference Manual"> 8<link rel="up" href="gstreamer-base-utils.html" title="Base Utils Library"> 9<link rel="prev" href="GstEncodingProfile.html" title="GstEncodingProfile"> 10<link rel="next" href="gstreamer-video.html" title="Video Library"> 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="#GstAudioVisualizer.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 19 <a href="#GstAudioVisualizer.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties"> <span class="dim">|</span> 20 <a href="#GstAudioVisualizer.properties" class="shortcut">Properties</a></span> 21</td> 22<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td> 23<td><a accesskey="u" href="gstreamer-base-utils.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td> 24<td><a accesskey="p" href="GstEncodingProfile.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td> 25<td><a accesskey="n" href="gstreamer-video.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td> 26</tr></table> 27<div class="refentry"> 28<a name="GstAudioVisualizer"></a><div class="titlepage"></div> 29<div class="refnamediv"><table width="100%"><tr> 30<td valign="top"> 31<h2><span class="refentrytitle"><a name="GstAudioVisualizer.top_of_page"></a>GstAudioVisualizer</span></h2> 32<p>GstAudioVisualizer — Base class for visualizers.</p> 33</td> 34<td class="gallery_image" valign="top" align="right"></td> 35</tr></table></div> 36<div class="refsect1"> 37<a name="GstAudioVisualizer.functions"></a><h2>Functions</h2> 38<div class="informaltable"><table class="informaltable" width="100%" border="0"> 39<colgroup> 40<col width="150px" class="functions_return"> 41<col class="functions_name"> 42</colgroup> 43<tbody><tr> 44<td class="function_type"> 45<span class="returnvalue">void</span> 46</td> 47<td class="function_name"> 48<span class="c_punctuation">(</span><a class="link" href="GstAudioVisualizer.html#GstAudioVisualizerShaderFunc" title="GstAudioVisualizerShaderFunc ()">*GstAudioVisualizerShaderFunc</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span> 49</td> 50</tr></tbody> 51</table></div> 52</div> 53<div class="refsect1"> 54<a name="GstAudioVisualizer.properties"></a><h2>Properties</h2> 55<div class="informaltable"><table class="informaltable" border="0"> 56<colgroup> 57<col width="150px" class="properties_type"> 58<col width="300px" class="properties_name"> 59<col width="200px" class="properties_flags"> 60</colgroup> 61<tbody> 62<tr> 63<td class="property_type"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a></td> 64<td class="property_name"><a class="link" href="GstAudioVisualizer.html#GstAudioVisualizer--shade-amount" title="The “shade-amount” property">shade-amount</a></td> 65<td class="property_flags">Read / Write</td> 66</tr> 67<tr> 68<td class="property_type"><a class="link" href="GstAudioVisualizer.html#GstAudioVisualizerShader" title="enum GstAudioVisualizerShader"><span class="type">GstAudioVisualizerShader</span></a></td> 69<td class="property_name"><a class="link" href="GstAudioVisualizer.html#GstAudioVisualizer--shader" title="The “shader” property">shader</a></td> 70<td class="property_flags">Read / Write</td> 71</tr> 72</tbody> 73</table></div> 74</div> 75<div class="refsect1"> 76<a name="GstAudioVisualizer.other"></a><h2>Types and Values</h2> 77<div class="informaltable"><table class="informaltable" width="100%" border="0"> 78<colgroup> 79<col width="150px" class="name"> 80<col class="description"> 81</colgroup> 82<tbody> 83<tr> 84<td class="datatype_keyword">struct</td> 85<td class="function_name"><a class="link" href="GstAudioVisualizer.html#GstAudioVisualizer-struct" title="struct GstAudioVisualizer">GstAudioVisualizer</a></td> 86</tr> 87<tr> 88<td class="datatype_keyword">struct</td> 89<td class="function_name"><a class="link" href="GstAudioVisualizer.html#GstAudioVisualizerClass" title="struct GstAudioVisualizerClass">GstAudioVisualizerClass</a></td> 90</tr> 91<tr> 92<td class="datatype_keyword">enum</td> 93<td class="function_name"><a class="link" href="GstAudioVisualizer.html#GstAudioVisualizerShader" title="enum GstAudioVisualizerShader">GstAudioVisualizerShader</a></td> 94</tr> 95</tbody> 96</table></div> 97</div> 98<div class="refsect1"> 99<a name="GstAudioVisualizer.object-hierarchy"></a><h2>Object Hierarchy</h2> 100<pre class="screen"> <a href="/usr/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html">GEnum</a> 101 <span class="lineart">╰──</span> GstAudioVisualizerShader 102 <a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GObject-struct">GObject</a> 103 <span class="lineart">╰──</span> <a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a> 104 <span class="lineart">╰──</span> <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstObject.html#GstObject-struct">GstObject</a> 105 <span class="lineart">╰──</span> <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html#GstElement-struct">GstElement</a> 106 <span class="lineart">╰──</span> GstAudioVisualizer 107</pre> 108</div> 109<div class="refsect1"> 110<a name="GstAudioVisualizer.includes"></a><h2>Includes</h2> 111<pre class="synopsis">#include <gst/pbutils/pbutils.h> 112</pre> 113</div> 114<div class="refsect1"> 115<a name="GstAudioVisualizer.description"></a><h2>Description</h2> 116<p>A baseclass for scopes (visualizers). It takes care of re-fitting the 117audio-rate to video-rate and handles renegotiation (downstream video size 118changes).</p> 119<p>It also provides several background shading effects. These effects are 120applied to a previous picture before the <code class="function">render()</code> implementation can draw a 121new frame.</p> 122</div> 123<div class="refsect1"> 124<a name="GstAudioVisualizer.functions_details"></a><h2>Functions</h2> 125<div class="refsect2"> 126<a name="GstAudioVisualizerShaderFunc"></a><h3>GstAudioVisualizerShaderFunc ()</h3> 127<pre class="programlisting"><span class="returnvalue">void</span> 128<span class="c_punctuation">(</span>*GstAudioVisualizerShaderFunc<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="GstAudioVisualizer.html" title="GstAudioVisualizer"><span class="type">GstAudioVisualizer</span></a> *scope</code></em>, 129 <em class="parameter"><code>const <a class="link" href="gst-plugins-base-libs-GstVideo.html#GstVideoFrame" title="struct GstVideoFrame"><span class="type">GstVideoFrame</span></a> *s</code></em>, 130 <em class="parameter"><code><a class="link" href="gst-plugins-base-libs-GstVideo.html#GstVideoFrame" title="struct GstVideoFrame"><span class="type">GstVideoFrame</span></a> *d</code></em>);</pre> 131</div> 132</div> 133<div class="refsect1"> 134<a name="GstAudioVisualizer.other_details"></a><h2>Types and Values</h2> 135<div class="refsect2"> 136<a name="GstAudioVisualizer-struct"></a><h3>struct GstAudioVisualizer</h3> 137<pre class="programlisting">struct GstAudioVisualizer;</pre> 138</div> 139<hr> 140<div class="refsect2"> 141<a name="GstAudioVisualizerClass"></a><h3>struct GstAudioVisualizerClass</h3> 142<pre class="programlisting">struct GstAudioVisualizerClass { 143 /* virtual function, called whenever the format changes */ 144 gboolean (*setup) (GstAudioVisualizer * scope); 145 146 /* virtual function for rendering a frame */ 147 gboolean (*render) (GstAudioVisualizer * scope, GstBuffer * audio, GstVideoFrame * video); 148 149 gboolean (*decide_allocation) (GstAudioVisualizer * scope, GstQuery *query); 150}; 151</pre> 152</div> 153<hr> 154<div class="refsect2"> 155<a name="GstAudioVisualizerShader"></a><h3>enum GstAudioVisualizerShader</h3> 156<p>Different types of supported background shading functions.</p> 157<div class="refsect3"> 158<a name="GstAudioVisualizerShader.members"></a><h4>Members</h4> 159<div class="informaltable"><table class="informaltable" width="100%" border="0"> 160<colgroup> 161<col width="300px" class="enum_members_name"> 162<col class="enum_members_description"> 163<col width="200px" class="enum_members_annotations"> 164</colgroup> 165<tbody> 166<tr> 167<td class="enum_member_name"><p><a name="GST-AUDIO-VISUALIZER-SHADER-NONE:CAPS"></a>GST_AUDIO_VISUALIZER_SHADER_NONE</p></td> 168<td class="enum_member_description"> 169<p>no shading</p> 170</td> 171<td class="enum_member_annotations"> </td> 172</tr> 173<tr> 174<td class="enum_member_name"><p><a name="GST-AUDIO-VISUALIZER-SHADER-FADE:CAPS"></a>GST_AUDIO_VISUALIZER_SHADER_FADE</p></td> 175<td class="enum_member_description"> 176<p>plain fading</p> 177</td> 178<td class="enum_member_annotations"> </td> 179</tr> 180<tr> 181<td class="enum_member_name"><p><a name="GST-AUDIO-VISUALIZER-SHADER-FADE-AND-MOVE-UP:CAPS"></a>GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_UP</p></td> 182<td class="enum_member_description"> 183<p>fade and move up</p> 184</td> 185<td class="enum_member_annotations"> </td> 186</tr> 187<tr> 188<td class="enum_member_name"><p><a name="GST-AUDIO-VISUALIZER-SHADER-FADE-AND-MOVE-DOWN:CAPS"></a>GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_DOWN</p></td> 189<td class="enum_member_description"> 190<p>fade and move down</p> 191</td> 192<td class="enum_member_annotations"> </td> 193</tr> 194<tr> 195<td class="enum_member_name"><p><a name="GST-AUDIO-VISUALIZER-SHADER-FADE-AND-MOVE-LEFT:CAPS"></a>GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_LEFT</p></td> 196<td class="enum_member_description"> 197<p>fade and move left</p> 198</td> 199<td class="enum_member_annotations"> </td> 200</tr> 201<tr> 202<td class="enum_member_name"><p><a name="GST-AUDIO-VISUALIZER-SHADER-FADE-AND-MOVE-RIGHT:CAPS"></a>GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_RIGHT</p></td> 203<td class="enum_member_description"> 204<p>fade and move right</p> 205</td> 206<td class="enum_member_annotations"> </td> 207</tr> 208<tr> 209<td class="enum_member_name"><p><a name="GST-AUDIO-VISUALIZER-SHADER-FADE-AND-MOVE-HORIZ-OUT:CAPS"></a>GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_HORIZ_OUT</p></td> 210<td class="enum_member_description"> 211<p>fade and move horizontally out</p> 212</td> 213<td class="enum_member_annotations"> </td> 214</tr> 215<tr> 216<td class="enum_member_name"><p><a name="GST-AUDIO-VISUALIZER-SHADER-FADE-AND-MOVE-HORIZ-IN:CAPS"></a>GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_HORIZ_IN</p></td> 217<td class="enum_member_description"> 218<p>fade and move horizontally in</p> 219</td> 220<td class="enum_member_annotations"> </td> 221</tr> 222<tr> 223<td class="enum_member_name"><p><a name="GST-AUDIO-VISUALIZER-SHADER-FADE-AND-MOVE-VERT-OUT:CAPS"></a>GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_VERT_OUT</p></td> 224<td class="enum_member_description"> 225<p>fade and move vertically out</p> 226</td> 227<td class="enum_member_annotations"> </td> 228</tr> 229<tr> 230<td class="enum_member_name"><p><a name="GST-AUDIO-VISUALIZER-SHADER-FADE-AND-MOVE-VERT-IN:CAPS"></a>GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_VERT_IN</p></td> 231<td class="enum_member_description"> 232<p>fade and move vertically in</p> 233</td> 234<td class="enum_member_annotations"> </td> 235</tr> 236</tbody> 237</table></div> 238</div> 239</div> 240</div> 241<div class="refsect1"> 242<a name="GstAudioVisualizer.property-details"></a><h2>Property Details</h2> 243<div class="refsect2"> 244<a name="GstAudioVisualizer--shade-amount"></a><h3>The <code class="literal">“shade-amount”</code> property</h3> 245<pre class="programlisting"> “shade-amount” <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a></pre> 246<p>Shading color to use (big-endian ARGB).</p> 247<p>Flags: Read / Write</p> 248<p>Default value: 657930</p> 249</div> 250<hr> 251<div class="refsect2"> 252<a name="GstAudioVisualizer--shader"></a><h3>The <code class="literal">“shader”</code> property</h3> 253<pre class="programlisting"> “shader” <a class="link" href="GstAudioVisualizer.html#GstAudioVisualizerShader" title="enum GstAudioVisualizerShader"><span class="type">GstAudioVisualizerShader</span></a></pre> 254<p>Shader function to apply on each frame.</p> 255<p>Flags: Read / Write</p> 256<p>Default value: GST_AUDIO_VISUALIZER_SHADER_FADE</p> 257</div> 258</div> 259</div> 260<div class="footer"> 261<hr>Generated by GTK-Doc V1.28</div> 262</body> 263</html>