d0bd13a4997c7ca17d90a864000e6ce1baf46f72
[framework/multimedia/gst-plugins-base0.10.git] / docs / libs / html / gst-plugins-base-libs-gstcolorbalance.html
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>gstcolorbalance</title>
6 <meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
7 <link rel="home" href="index.html" title="GStreamer Base Plugins 0.10 Library Reference Manual">
8 <link rel="up" href="gstreamer-interfaces.html" title="Interfaces Library">
9 <link rel="prev" href="gstreamer-interfaces.html" title="Interfaces Library">
10 <link rel="next" href="gst-plugins-base-libs-gstcolorbalancechannel.html" title="gstcolorbalancechannel">
11 <meta name="generator" content="GTK-Doc V1.17 (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="2">
16 <tr valign="middle">
17 <td><a accesskey="p" href="gstreamer-interfaces.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
18 <td><a accesskey="u" href="gstreamer-interfaces.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
19 <td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
20 <th width="100%" align="center">GStreamer Base Plugins 0.10 Library Reference Manual</th>
21 <td><a accesskey="n" href="gst-plugins-base-libs-gstcolorbalancechannel.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
22 </tr>
23 <tr><td colspan="5" class="shortcuts">
24 <a href="#gst-plugins-base-libs-gstcolorbalance.synopsis" class="shortcut">Top</a>
25                    | 
26                   <a href="#gst-plugins-base-libs-gstcolorbalance.description" class="shortcut">Description</a>
27                    | 
28                   <a href="#gst-plugins-base-libs-gstcolorbalance.object-hierarchy" class="shortcut">Object Hierarchy</a>
29                    | 
30                   <a href="#gst-plugins-base-libs-gstcolorbalance.prerequisites" class="shortcut">Prerequisites</a>
31                    | 
32                   <a href="#gst-plugins-base-libs-gstcolorbalance.signals" class="shortcut">Signals</a>
33 </td></tr>
34 </table>
35 <div class="refentry">
36 <a name="gst-plugins-base-libs-gstcolorbalance"></a><div class="titlepage"></div>
37 <div class="refnamediv"><table width="100%"><tr>
38 <td valign="top">
39 <h2><span class="refentrytitle"><a name="gst-plugins-base-libs-gstcolorbalance.top_of_page"></a>gstcolorbalance</span></h2>
40 <p>gstcolorbalance — Interface for adjusting color balance settings</p>
41 </td>
42 <td valign="top" align="right"></td>
43 </tr></table></div>
44 <div class="refsynopsisdiv">
45 <a name="gst-plugins-base-libs-gstcolorbalance.synopsis"></a><h2>Synopsis</h2>
46 <a name="GstColorBalance"></a><pre class="synopsis">
47 #include &lt;gst/interfaces/color.h&gt;
48
49                     <a class="link" href="gst-plugins-base-libs-gstcolorbalance.html#GstColorBalance-struct" title="GstColorBalance">GstColorBalance</a>;
50 struct              <a class="link" href="gst-plugins-base-libs-gstcolorbalance.html#GstColorBalanceClass" title="struct GstColorBalanceClass">GstColorBalanceClass</a>;
51 enum                <a class="link" href="gst-plugins-base-libs-gstcolorbalance.html#GstColorBalanceType" title="enum GstColorBalanceType">GstColorBalanceType</a>;
52 const <a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *       <a class="link" href="gst-plugins-base-libs-gstcolorbalance.html#gst-color-balance-list-channels" title="gst_color_balance_list_channels ()">gst_color_balance_list_channels</a>     (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-gstcolorbalance.html#GstColorBalance"><span class="type">GstColorBalance</span></a> *balance</code></em>);
53 <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>                <a class="link" href="gst-plugins-base-libs-gstcolorbalance.html#gst-color-balance-get-value" title="gst_color_balance_get_value ()">gst_color_balance_get_value</a>         (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-gstcolorbalance.html#GstColorBalance"><span class="type">GstColorBalance</span></a> *balance</code></em>,
54                                                          <em class="parameter"><code><a class="link" href="gst-plugins-base-libs-gstcolorbalancechannel.html#GstColorBalanceChannel"><span class="type">GstColorBalanceChannel</span></a> *channel</code></em>);
55 <span class="returnvalue">void</span>                <a class="link" href="gst-plugins-base-libs-gstcolorbalance.html#gst-color-balance-set-value" title="gst_color_balance_set_value ()">gst_color_balance_set_value</a>         (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-gstcolorbalance.html#GstColorBalance"><span class="type">GstColorBalance</span></a> *balance</code></em>,
56                                                          <em class="parameter"><code><a class="link" href="gst-plugins-base-libs-gstcolorbalancechannel.html#GstColorBalanceChannel"><span class="type">GstColorBalanceChannel</span></a> *channel</code></em>,
57                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> value</code></em>);
58 <span class="returnvalue">void</span>                <a class="link" href="gst-plugins-base-libs-gstcolorbalance.html#gst-color-balance-value-changed" title="gst_color_balance_value_changed ()">gst_color_balance_value_changed</a>     (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-gstcolorbalance.html#GstColorBalance"><span class="type">GstColorBalance</span></a> *balance</code></em>,
59                                                          <em class="parameter"><code><a class="link" href="gst-plugins-base-libs-gstcolorbalancechannel.html#GstColorBalanceChannel"><span class="type">GstColorBalanceChannel</span></a> *channel</code></em>,
60                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> value</code></em>);
61 <a class="link" href="gst-plugins-base-libs-gstcolorbalance.html#GstColorBalanceType" title="enum GstColorBalanceType"><span class="returnvalue">GstColorBalanceType</span></a>  <a class="link" href="gst-plugins-base-libs-gstcolorbalance.html#gst-color-balance-get-balance-type" title="gst_color_balance_get_balance_type ()">gst_color_balance_get_balance_type</a> (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-gstcolorbalance.html#GstColorBalance"><span class="type">GstColorBalance</span></a> *balance</code></em>);
62 </pre>
63 </div>
64 <div class="refsect1">
65 <a name="gst-plugins-base-libs-gstcolorbalance.object-hierarchy"></a><h2>Object Hierarchy</h2>
66 <pre class="synopsis">
67   GInterface
68    +----GstColorBalance
69 </pre>
70 </div>
71 <div class="refsect1">
72 <a name="gst-plugins-base-libs-gstcolorbalance.prerequisites"></a><h2>Prerequisites</h2>
73 <p>
74 GstColorBalance requires
75  <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstImplementsInterface.html">GstImplementsInterface</a> and  <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html">GstElement</a>.</p>
76 </div>
77 <div class="refsect1">
78 <a name="gst-plugins-base-libs-gstcolorbalance.signals"></a><h2>Signals</h2>
79 <pre class="synopsis">
80   "<a class="link" href="gst-plugins-base-libs-gstcolorbalance.html#GstColorBalance-value-changed" title='The "value-changed" signal'>value-changed</a>"                                  : <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS"><code class="literal">Run Last</code></a>
81 </pre>
82 </div>
83 <div class="refsect1">
84 <a name="gst-plugins-base-libs-gstcolorbalance.description"></a><h2>Description</h2>
85 <p>
86 </p>
87 <div class="refsect2">
88 <a name="idp11606512"></a><p>
89 This interface is implemented by elements which can perform some color
90 balance operation on video frames they process. For example, modifying
91 the brightness, contrast, hue or saturation.
92 </p>
93 <p>
94 Example elements are 'xvimagesink' and 'colorbalance'
95 </p>
96 </div>
97 <p>
98 </p>
99 </div>
100 <div class="refsect1">
101 <a name="gst-plugins-base-libs-gstcolorbalance.details"></a><h2>Details</h2>
102 <div class="refsect2">
103 <a name="GstColorBalance-struct"></a><h3>GstColorBalance</h3>
104 <pre class="programlisting">typedef struct _GstColorBalance GstColorBalance;</pre>
105 </div>
106 <hr>
107 <div class="refsect2">
108 <a name="GstColorBalanceClass"></a><h3>struct GstColorBalanceClass</h3>
109 <pre class="programlisting">struct GstColorBalanceClass {
110   GTypeInterface klass;
111
112   GstColorBalanceType balance_type;
113
114   /* virtual functions */
115   const GList * (* list_channels) (GstColorBalance        *balance);
116
117   void          (* set_value)     (GstColorBalance        *balance,
118                                    GstColorBalanceChannel *channel,
119                                    gint                    value);
120   gint          (* get_value)     (GstColorBalance        *balance,
121                                    GstColorBalanceChannel *channel);
122
123   /* signals */
124   void (* value_changed) (GstColorBalance        *balance,
125                           GstColorBalanceChannel *channel,
126                           gint                    value);
127
128   gpointer _gst_reserved[GST_PADDING];
129 };
130 </pre>
131 </div>
132 <hr>
133 <div class="refsect2">
134 <a name="GstColorBalanceType"></a><h3>enum GstColorBalanceType</h3>
135 <pre class="programlisting">typedef enum
136 {
137   GST_COLOR_BALANCE_HARDWARE,
138   GST_COLOR_BALANCE_SOFTWARE
139 } GstColorBalanceType;
140 </pre>
141 <p>
142 An enumeration indicating whether an element implements color balancing
143 operations in software or in dedicated hardware. In general, dedicated
144 hardware implementations (such as those provided by xvimagesink) are
145 preferred.
146 </p>
147 <div class="variablelist"><table border="0">
148 <col align="left" valign="top">
149 <tbody>
150 <tr>
151 <td><p><a name="GST-COLOR-BALANCE-HARDWARE:CAPS"></a><span class="term"><code class="literal">GST_COLOR_BALANCE_HARDWARE</code></span></p></td>
152 <td>Color balance is implemented with dedicated
153         hardware.
154 </td>
155 </tr>
156 <tr>
157 <td><p><a name="GST-COLOR-BALANCE-SOFTWARE:CAPS"></a><span class="term"><code class="literal">GST_COLOR_BALANCE_SOFTWARE</code></span></p></td>
158 <td>Color balance is implemented via software
159         processing.
160 </td>
161 </tr>
162 </tbody>
163 </table></div>
164 </div>
165 <hr>
166 <div class="refsect2">
167 <a name="gst-color-balance-list-channels"></a><h3>gst_color_balance_list_channels ()</h3>
168 <pre class="programlisting">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> *       gst_color_balance_list_channels     (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-gstcolorbalance.html#GstColorBalance"><span class="type">GstColorBalance</span></a> *balance</code></em>);</pre>
169 <p>
170 Retrieve a list of the available channels.
171 </p>
172 <div class="variablelist"><table border="0">
173 <col align="left" valign="top">
174 <tbody>
175 <tr>
176 <td><p><span class="term"><em class="parameter"><code>balance</code></em> :</span></p></td>
177 <td>A <a class="link" href="gst-plugins-base-libs-gstcolorbalance.html#GstColorBalance"><span class="type">GstColorBalance</span></a> instance</td>
178 </tr>
179 <tr>
180 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
181 <td>A GList containing pointers to <a class="link" href="gst-plugins-base-libs-gstcolorbalancechannel.html#GstColorBalanceChannel"><span class="type">GstColorBalanceChannel</span></a> objects.
182 The list is owned by the <a class="link" href="gst-plugins-base-libs-gstcolorbalance.html#GstColorBalance"><span class="type">GstColorBalance</span></a> instance and must not
183 be freed.</td>
184 </tr>
185 </tbody>
186 </table></div>
187 </div>
188 <hr>
189 <div class="refsect2">
190 <a name="gst-color-balance-get-value"></a><h3>gst_color_balance_get_value ()</h3>
191 <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>                gst_color_balance_get_value         (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-gstcolorbalance.html#GstColorBalance"><span class="type">GstColorBalance</span></a> *balance</code></em>,
192                                                          <em class="parameter"><code><a class="link" href="gst-plugins-base-libs-gstcolorbalancechannel.html#GstColorBalanceChannel"><span class="type">GstColorBalanceChannel</span></a> *channel</code></em>);</pre>
193 <p>
194 Retrieve the current value of the indicated channel, between min_value
195 and max_value.
196 </p>
197 <p>
198 See Also: The <span class="type">"min_value"</span> and
199         <span class="type">"max_value"</span> members of the
200         <a class="link" href="gst-plugins-base-libs-gstcolorbalancechannel.html#GstColorBalanceChannel"><span class="type">GstColorBalanceChannel</span></a> object.
201 </p>
202 <div class="variablelist"><table border="0">
203 <col align="left" valign="top">
204 <tbody>
205 <tr>
206 <td><p><span class="term"><em class="parameter"><code>balance</code></em> :</span></p></td>
207 <td>A <a class="link" href="gst-plugins-base-libs-gstcolorbalance.html#GstColorBalance"><span class="type">GstColorBalance</span></a> instance</td>
208 </tr>
209 <tr>
210 <td><p><span class="term"><em class="parameter"><code>channel</code></em> :</span></p></td>
211 <td>A <a class="link" href="gst-plugins-base-libs-gstcolorbalancechannel.html#GstColorBalanceChannel"><span class="type">GstColorBalanceChannel</span></a> instance</td>
212 </tr>
213 <tr>
214 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
215 <td>The current value of the channel.</td>
216 </tr>
217 </tbody>
218 </table></div>
219 </div>
220 <hr>
221 <div class="refsect2">
222 <a name="gst-color-balance-set-value"></a><h3>gst_color_balance_set_value ()</h3>
223 <pre class="programlisting"><span class="returnvalue">void</span>                gst_color_balance_set_value         (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-gstcolorbalance.html#GstColorBalance"><span class="type">GstColorBalance</span></a> *balance</code></em>,
224                                                          <em class="parameter"><code><a class="link" href="gst-plugins-base-libs-gstcolorbalancechannel.html#GstColorBalanceChannel"><span class="type">GstColorBalanceChannel</span></a> *channel</code></em>,
225                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> value</code></em>);</pre>
226 <p>
227 Sets the current value of the channel to the passed value, which must
228 be between min_value and max_value.
229 </p>
230 <p>
231 See Also: The <span class="type">"min_value"</span> and
232         <span class="type">"max_value"</span> members of the
233         <a class="link" href="gst-plugins-base-libs-gstcolorbalancechannel.html#GstColorBalanceChannel"><span class="type">GstColorBalanceChannel</span></a> object.
234 </p>
235 <div class="variablelist"><table border="0">
236 <col align="left" valign="top">
237 <tbody>
238 <tr>
239 <td><p><span class="term"><em class="parameter"><code>balance</code></em> :</span></p></td>
240 <td>A <a class="link" href="gst-plugins-base-libs-gstcolorbalance.html#GstColorBalance"><span class="type">GstColorBalance</span></a> instance</td>
241 </tr>
242 <tr>
243 <td><p><span class="term"><em class="parameter"><code>channel</code></em> :</span></p></td>
244 <td>A <a class="link" href="gst-plugins-base-libs-gstcolorbalancechannel.html#GstColorBalanceChannel"><span class="type">GstColorBalanceChannel</span></a> instance</td>
245 </tr>
246 <tr>
247 <td><p><span class="term"><em class="parameter"><code>value</code></em> :</span></p></td>
248 <td>The new value for the channel.</td>
249 </tr>
250 </tbody>
251 </table></div>
252 </div>
253 <hr>
254 <div class="refsect2">
255 <a name="gst-color-balance-value-changed"></a><h3>gst_color_balance_value_changed ()</h3>
256 <pre class="programlisting"><span class="returnvalue">void</span>                gst_color_balance_value_changed     (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-gstcolorbalance.html#GstColorBalance"><span class="type">GstColorBalance</span></a> *balance</code></em>,
257                                                          <em class="parameter"><code><a class="link" href="gst-plugins-base-libs-gstcolorbalancechannel.html#GstColorBalanceChannel"><span class="type">GstColorBalanceChannel</span></a> *channel</code></em>,
258                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> value</code></em>);</pre>
259 <p>
260 A helper function called by implementations of the GstColorBalance
261 interface. It fires the <a class="link" href="gst-plugins-base-libs-gstcolorbalance.html#GstColorBalance-value-changed" title='The "value-changed" signal'><span class="type">"value-changed"</span></a> signal on the
262 instance, and the <a class="link" href="gst-plugins-base-libs-gstcolorbalancechannel.html#GstColorBalanceChannel-value-changed" title='The "value-changed" signal'><span class="type">"value-changed"</span></a> signal on the
263 channel object.
264 </p>
265 <div class="variablelist"><table border="0">
266 <col align="left" valign="top">
267 <tbody>
268 <tr>
269 <td><p><span class="term"><em class="parameter"><code>balance</code></em> :</span></p></td>
270 <td>A <a class="link" href="gst-plugins-base-libs-gstcolorbalance.html#GstColorBalance"><span class="type">GstColorBalance</span></a> instance</td>
271 </tr>
272 <tr>
273 <td><p><span class="term"><em class="parameter"><code>channel</code></em> :</span></p></td>
274 <td>A <a class="link" href="gst-plugins-base-libs-gstcolorbalancechannel.html#GstColorBalanceChannel"><span class="type">GstColorBalanceChannel</span></a> whose value has changed</td>
275 </tr>
276 <tr>
277 <td><p><span class="term"><em class="parameter"><code>value</code></em> :</span></p></td>
278 <td>The new value of the channel</td>
279 </tr>
280 </tbody>
281 </table></div>
282 </div>
283 <hr>
284 <div class="refsect2">
285 <a name="gst-color-balance-get-balance-type"></a><h3>gst_color_balance_get_balance_type ()</h3>
286 <pre class="programlisting"><a class="link" href="gst-plugins-base-libs-gstcolorbalance.html#GstColorBalanceType" title="enum GstColorBalanceType"><span class="returnvalue">GstColorBalanceType</span></a>  gst_color_balance_get_balance_type (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-gstcolorbalance.html#GstColorBalance"><span class="type">GstColorBalance</span></a> *balance</code></em>);</pre>
287 <p>
288 Get the <a class="link" href="gst-plugins-base-libs-gstcolorbalance.html#GstColorBalanceType" title="enum GstColorBalanceType"><span class="type">GstColorBalanceType</span></a> of this implementation.
289 </p>
290 <div class="variablelist"><table border="0">
291 <col align="left" valign="top">
292 <tbody>
293 <tr>
294 <td><p><span class="term"><em class="parameter"><code>balance</code></em> :</span></p></td>
295 <td>The <a class="link" href="gst-plugins-base-libs-gstcolorbalance.html#GstColorBalance"><span class="type">GstColorBalance</span></a> implementation</td>
296 </tr>
297 <tr>
298 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
299 <td>A the <a class="link" href="gst-plugins-base-libs-gstcolorbalance.html#GstColorBalanceType" title="enum GstColorBalanceType"><span class="type">GstColorBalanceType</span></a>.</td>
300 </tr>
301 </tbody>
302 </table></div>
303 <p class="since">Since 0.10.24</p>
304 </div>
305 </div>
306 <div class="refsect1">
307 <a name="gst-plugins-base-libs-gstcolorbalance.signal-details"></a><h2>Signal Details</h2>
308 <div class="refsect2">
309 <a name="GstColorBalance-value-changed"></a><h3>The <code class="literal">"value-changed"</code> signal</h3>
310 <pre class="programlisting"><span class="returnvalue">void</span>                user_function                      (<a class="link" href="gst-plugins-base-libs-gstcolorbalance.html#GstColorBalance"><span class="type">GstColorBalance</span></a>        *colorbalance,
311                                                         <a class="link" href="gst-plugins-base-libs-gstcolorbalancechannel.html#GstColorBalanceChannel"><span class="type">GstColorBalanceChannel</span></a> *channel,
312                                                         <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a>                    value,
313                                                         <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>                user_data)         : <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS"><code class="literal">Run Last</code></a></pre>
314 <p>
315 Fired when the value of the indicated channel has changed.
316 </p>
317 <div class="variablelist"><table border="0">
318 <col align="left" valign="top">
319 <tbody>
320 <tr>
321 <td><p><span class="term"><em class="parameter"><code>colorbalance</code></em> :</span></p></td>
322 <td>The GstColorBalance instance</td>
323 </tr>
324 <tr>
325 <td><p><span class="term"><em class="parameter"><code>channel</code></em> :</span></p></td>
326 <td>The <a class="link" href="gst-plugins-base-libs-gstcolorbalancechannel.html#GstColorBalanceChannel"><span class="type">GstColorBalanceChannel</span></a>
327 </td>
328 </tr>
329 <tr>
330 <td><p><span class="term"><em class="parameter"><code>value</code></em> :</span></p></td>
331 <td>The new value</td>
332 </tr>
333 <tr>
334 <td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
335 <td>user data set when the signal handler was connected.</td>
336 </tr>
337 </tbody>
338 </table></div>
339 </div>
340 </div>
341 </div>
342 <div class="footer">
343 <hr>
344           Generated by GTK-Doc V1.17</div>
345 </body>
346 </html>