]> gitweb.factorcode.org Git - factor.git/blob - unmaintained/gstreamer/plugins/interfaces/GstInterfaces-0.10.gir
tools.test: Make the flag public. Finish porting tester changes to fuzzer.
[factor.git] / unmaintained / gstreamer / plugins / interfaces / GstInterfaces-0.10.gir
1 <?xml version="1.0"?>
2 <!-- This file was automatically generated from C sources - DO NOT EDIT!
3 To affect the contents of this file, edit the original C definitions,
4 and/or use gtk-doc annotations.  -->
5 <repository version="1.2"
6             xmlns="http://www.gtk.org/introspection/core/1.0"
7             xmlns:c="http://www.gtk.org/introspection/c/1.0"
8             xmlns:glib="http://www.gtk.org/introspection/glib/1.0">
9   <include name="GLib" version="2.0"/>
10   <include name="GModule" version="2.0"/>
11   <include name="GObject" version="2.0"/>
12   <include name="Gst" version="0.10"/>
13   <include name="libxml2" version="2.0"/>
14   <package name="gstreamer-interfaces-0.10"/>
15   <c:include name="gst/interfaces/colorbalance.h"/>
16   <c:include name="gst/interfaces/colorbalancechannel.h"/>
17   <c:include name="gst/interfaces/interfaces-enumtypes.h"/>
18   <c:include name="gst/interfaces/mixer.h"/>
19   <c:include name="gst/interfaces/mixeroptions.h"/>
20   <c:include name="gst/interfaces/mixertrack.h"/>
21   <c:include name="gst/interfaces/navigation.h"/>
22   <c:include name="gst/interfaces/propertyprobe.h"/>
23   <c:include name="gst/interfaces/streamvolume.h"/>
24   <c:include name="gst/interfaces/tuner.h"/>
25   <c:include name="gst/interfaces/tunerchannel.h"/>
26   <c:include name="gst/interfaces/tunernorm.h"/>
27   <c:include name="gst/interfaces/videoorientation.h"/>
28   <c:include name="gst/interfaces/xoverlay.h"/>
29   <namespace name="GstInterfaces"
30              version="0.10"
31              shared-library="libgstinterfaces-0.10.so.0"
32              c:identifier-prefixes="Gst"
33              c:symbol-prefixes="gst">
34     <interface name="ColorBalance"
35                c:symbol-prefix="color_balance"
36                c:type="GstColorBalance"
37                glib:type-name="GstColorBalance"
38                glib:get-type="gst_color_balance_get_type">
39       <prerequisite name="Gst.Element"/>
40       <prerequisite name="Gst.ImplementsInterface"/>
41       <method name="get_balance_type"
42               c:identifier="gst_color_balance_get_balance_type"
43               version="0.10.24">
44         <doc xml:whitespace="preserve">Get the #GstColorBalanceType of this implementation.</doc>
45         <return-value transfer-ownership="none">
46           <doc xml:whitespace="preserve">A the #GstColorBalanceType.</doc>
47           <type name="ColorBalanceType" c:type="GstColorBalanceType"/>
48         </return-value>
49       </method>
50       <method name="get_value" c:identifier="gst_color_balance_get_value">
51         <doc xml:whitespace="preserve">Retrieve the current value of the indicated channel, between min_value
52 and max_value.
53 #GstColorBalanceChannel::max_value members of the
54 #GstColorBalanceChannel object.</doc>
55         <return-value transfer-ownership="none">
56           <doc xml:whitespace="preserve">The current value of the channel.</doc>
57           <type name="gint" c:type="gint"/>
58         </return-value>
59         <parameters>
60           <parameter name="channel" transfer-ownership="none">
61             <doc xml:whitespace="preserve">A #GstColorBalanceChannel instance</doc>
62             <type name="ColorBalanceChannel" c:type="GstColorBalanceChannel*"/>
63           </parameter>
64         </parameters>
65       </method>
66       <method name="list_channels"
67               c:identifier="gst_color_balance_list_channels">
68         <doc xml:whitespace="preserve">Retrieve a list of the available channels.
69 The list is owned by the #GstColorBalance instance and must not
70 be freed.</doc>
71         <return-value transfer-ownership="none">
72           <doc xml:whitespace="preserve">A GList containing pointers to #GstColorBalanceChannel objects.</doc>
73           <type name="GLib.List" c:type="GList*">
74             <type name="gpointer" c:type="gpointer"/>
75           </type>
76         </return-value>
77       </method>
78       <method name="set_value" c:identifier="gst_color_balance_set_value">
79         <doc xml:whitespace="preserve">Sets the current value of the channel to the passed value, which must
80 be between min_value and max_value.
81 #GstColorBalanceChannel::max_value members of the
82 #GstColorBalanceChannel object.</doc>
83         <return-value transfer-ownership="none">
84           <type name="none" c:type="void"/>
85         </return-value>
86         <parameters>
87           <parameter name="channel" transfer-ownership="none">
88             <doc xml:whitespace="preserve">A #GstColorBalanceChannel instance</doc>
89             <type name="ColorBalanceChannel" c:type="GstColorBalanceChannel*"/>
90           </parameter>
91           <parameter name="value" transfer-ownership="none">
92             <doc xml:whitespace="preserve">The new value for the channel.</doc>
93             <type name="gint" c:type="gint"/>
94           </parameter>
95         </parameters>
96       </method>
97       <method name="value_changed"
98               c:identifier="gst_color_balance_value_changed">
99         <doc xml:whitespace="preserve">A helper function called by implementations of the GstColorBalance
100 interface. It fires the #GstColorBalance::value-changed signal on the
101 instance, and the #GstColorBalanceChannel::value-changed signal on the
102 channel object.</doc>
103         <return-value transfer-ownership="none">
104           <type name="none" c:type="void"/>
105         </return-value>
106         <parameters>
107           <parameter name="channel" transfer-ownership="none">
108             <doc xml:whitespace="preserve">A #GstColorBalanceChannel whose value has changed</doc>
109             <type name="ColorBalanceChannel" c:type="GstColorBalanceChannel*"/>
110           </parameter>
111           <parameter name="value" transfer-ownership="none">
112             <doc xml:whitespace="preserve">The new value of the channel</doc>
113             <type name="gint" c:type="gint"/>
114           </parameter>
115         </parameters>
116       </method>
117       <glib:signal name="value-changed">
118         <doc xml:whitespace="preserve">Fired when the value of the indicated channel has changed.</doc>
119         <return-value transfer-ownership="none">
120           <type name="none"/>
121         </return-value>
122         <parameters>
123           <parameter name="object" transfer-ownership="none">
124             <doc xml:whitespace="preserve">The #GstColorBalanceChannel</doc>
125             <type name="ColorBalanceChannel"/>
126           </parameter>
127           <parameter name="p0" transfer-ownership="none">
128             <doc xml:whitespace="preserve">The new value</doc>
129             <type name="gint"/>
130           </parameter>
131         </parameters>
132       </glib:signal>
133     </interface>
134     <class name="ColorBalanceChannel"
135            c:symbol-prefix="color_balance_channel"
136            c:type="GstColorBalanceChannel"
137            parent="GObject.Object"
138            glib:type-name="GstColorBalanceChannel"
139            glib:get-type="gst_color_balance_channel_get_type"
140            glib:type-struct="ColorBalanceChannelClass">
141       <field name="parent">
142         <type name="GObject.Object" c:type="GObject"/>
143       </field>
144       <field name="label">
145         <type name="utf8" c:type="gchar*"/>
146       </field>
147       <field name="min_value">
148         <type name="gint" c:type="gint"/>
149       </field>
150       <field name="max_value">
151         <type name="gint" c:type="gint"/>
152       </field>
153       <glib:signal name="value-changed">
154         <doc xml:whitespace="preserve">Fired when the value of the indicated channel has changed.</doc>
155         <return-value transfer-ownership="none">
156           <type name="none"/>
157         </return-value>
158         <parameters>
159           <parameter name="object" transfer-ownership="none">
160             <doc xml:whitespace="preserve">The new value</doc>
161             <type name="gint"/>
162           </parameter>
163         </parameters>
164       </glib:signal>
165     </class>
166     <record name="ColorBalanceChannelClass"
167             c:type="GstColorBalanceChannelClass"
168             glib:is-gtype-struct-for="ColorBalanceChannel">
169       <field name="parent">
170         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
171       </field>
172       <field name="value_changed">
173         <callback name="value_changed">
174           <return-value transfer-ownership="none">
175             <type name="none" c:type="void"/>
176           </return-value>
177           <parameters>
178             <parameter name="channel" transfer-ownership="none">
179               <type name="ColorBalanceChannel"
180                     c:type="GstColorBalanceChannel*"/>
181             </parameter>
182             <parameter name="value" transfer-ownership="none">
183               <type name="gint" c:type="gint"/>
184             </parameter>
185           </parameters>
186         </callback>
187       </field>
188       <field name="_gst_reserved">
189         <array zero-terminated="0" c:type="gpointer" fixed-size="4">
190           <type name="gpointer" c:type="gpointer"/>
191         </array>
192       </field>
193     </record>
194     <record name="ColorBalanceClass" c:type="GstColorBalanceClass">
195       <field name="klass" writable="1">
196         <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
197       </field>
198       <field name="balance_type" writable="1">
199         <type name="ColorBalanceType" c:type="GstColorBalanceType"/>
200       </field>
201       <field name="list_channels">
202         <callback name="list_channels">
203           <return-value transfer-ownership="none">
204             <type name="GLib.List" c:type="GList*">
205               <type name="gpointer" c:type="gpointer"/>
206             </type>
207           </return-value>
208           <parameters>
209             <parameter name="balance" transfer-ownership="none">
210               <type name="ColorBalance" c:type="GstColorBalance*"/>
211             </parameter>
212           </parameters>
213         </callback>
214       </field>
215       <field name="set_value">
216         <callback name="set_value">
217           <return-value transfer-ownership="none">
218             <type name="none" c:type="void"/>
219           </return-value>
220           <parameters>
221             <parameter name="balance" transfer-ownership="none">
222               <type name="ColorBalance" c:type="GstColorBalance*"/>
223             </parameter>
224             <parameter name="channel" transfer-ownership="none">
225               <type name="ColorBalanceChannel"
226                     c:type="GstColorBalanceChannel*"/>
227             </parameter>
228             <parameter name="value" transfer-ownership="none">
229               <type name="gint" c:type="gint"/>
230             </parameter>
231           </parameters>
232         </callback>
233       </field>
234       <field name="get_value">
235         <callback name="get_value">
236           <return-value transfer-ownership="none">
237             <type name="gint" c:type="gint"/>
238           </return-value>
239           <parameters>
240             <parameter name="balance" transfer-ownership="none">
241               <type name="ColorBalance" c:type="GstColorBalance*"/>
242             </parameter>
243             <parameter name="channel" transfer-ownership="none">
244               <type name="ColorBalanceChannel"
245                     c:type="GstColorBalanceChannel*"/>
246             </parameter>
247           </parameters>
248         </callback>
249       </field>
250       <field name="value_changed">
251         <callback name="value_changed">
252           <return-value transfer-ownership="none">
253             <type name="none" c:type="void"/>
254           </return-value>
255           <parameters>
256             <parameter name="balance" transfer-ownership="none">
257               <type name="ColorBalance" c:type="GstColorBalance*"/>
258             </parameter>
259             <parameter name="channel" transfer-ownership="none">
260               <type name="ColorBalanceChannel"
261                     c:type="GstColorBalanceChannel*"/>
262             </parameter>
263             <parameter name="value" transfer-ownership="none">
264               <type name="gint" c:type="gint"/>
265             </parameter>
266           </parameters>
267         </callback>
268       </field>
269       <field name="_gst_reserved" writable="1">
270         <array zero-terminated="0" c:type="gpointer" fixed-size="4">
271           <type name="gpointer" c:type="gpointer"/>
272         </array>
273       </field>
274     </record>
275     <enumeration name="ColorBalanceType"
276                  glib:type-name="GstColorBalanceType"
277                  glib:get-type="gst_color_balance_type_get_type"
278                  c:type="GstColorBalanceType">
279       <doc xml:whitespace="preserve">An enumeration indicating whether an element implements color balancing
280 operations in software or in dedicated hardware. In general, dedicated
281 hardware implementations (such as those provided by xvimagesink) are
282 preferred.</doc>
283       <member name="hardware"
284               value="0"
285               c:identifier="GST_COLOR_BALANCE_HARDWARE"
286               glib:nick="hardware"/>
287       <member name="software"
288               value="1"
289               c:identifier="GST_COLOR_BALANCE_SOFTWARE"
290               glib:nick="software"/>
291     </enumeration>
292     <interface name="Mixer"
293                c:symbol-prefix="mixer"
294                c:type="GstMixer"
295                glib:type-name="GstMixer"
296                glib:get-type="gst_mixer_get_type">
297       <prerequisite name="Gst.Element"/>
298       <prerequisite name="Gst.ImplementsInterface"/>
299       <method name="get_mixer_flags" c:identifier="gst_mixer_get_mixer_flags">
300         <doc xml:whitespace="preserve">Get the set of supported flags for this mixer implementation.</doc>
301         <return-value transfer-ownership="none">
302           <doc xml:whitespace="preserve">A set of or-ed GstMixerFlags for supported features.</doc>
303           <type name="MixerFlags" c:type="GstMixerFlags"/>
304         </return-value>
305       </method>
306       <method name="get_mixer_type"
307               c:identifier="gst_mixer_get_mixer_type"
308               version="0.10.24">
309         <doc xml:whitespace="preserve">Get the #GstMixerType of this mixer implementation.</doc>
310         <return-value transfer-ownership="none">
311           <doc xml:whitespace="preserve">A the #GstMixerType.</doc>
312           <type name="MixerType" c:type="GstMixerType"/>
313         </return-value>
314       </method>
315       <method name="get_option" c:identifier="gst_mixer_get_option">
316         <doc xml:whitespace="preserve">Get the current value of a name/value option in the mixer.</doc>
317         <return-value transfer-ownership="none">
318           <doc xml:whitespace="preserve">current value of the name/value option.</doc>
319           <type name="utf8" c:type="gchar*"/>
320         </return-value>
321         <parameters>
322           <parameter name="opts" transfer-ownership="none">
323             <doc xml:whitespace="preserve">The #GstMixerOptions that we operate on.</doc>
324             <type name="MixerOptions" c:type="GstMixerOptions*"/>
325           </parameter>
326         </parameters>
327       </method>
328       <method name="get_volume" c:identifier="gst_mixer_get_volume">
329         <doc xml:whitespace="preserve">Get the current volume(s) on the given track.</doc>
330         <return-value transfer-ownership="none">
331           <type name="none" c:type="void"/>
332         </return-value>
333         <parameters>
334           <parameter name="track" transfer-ownership="none">
335             <doc xml:whitespace="preserve">the GstMixerTrack to get the volume from.</doc>
336             <type name="MixerTrack" c:type="GstMixerTrack*"/>
337           </parameter>
338           <parameter name="volumes" transfer-ownership="none">
339             <doc xml:whitespace="preserve">a pre-allocated array of integers (of size track-&gt;num_channels) to store the current volume of each channel in the given track in.</doc>
340             <type name="gint" c:type="gint*"/>
341           </parameter>
342         </parameters>
343       </method>
344       <method name="list_tracks" c:identifier="gst_mixer_list_tracks">
345         <doc xml:whitespace="preserve">Returns a list of available tracks for this mixer/element. Note
346 that it is allowed for sink (output) elements to only provide
347 the output tracks in this list. Likewise, for sources (inputs),
348 it is allowed to only provide input elements in this list.
349 The list is owned by the #GstMixer instance and must not be freed
350 or modified.</doc>
351         <return-value transfer-ownership="none">
352           <doc xml:whitespace="preserve">A #GList consisting of zero or more #GstMixerTracks.</doc>
353           <type name="GLib.List" c:type="GList*">
354             <type name="gpointer" c:type="gpointer"/>
355           </type>
356         </return-value>
357       </method>
358       <method name="mixer_changed"
359               c:identifier="gst_mixer_mixer_changed"
360               version="0.10.18">
361         <doc xml:whitespace="preserve">This function is called by the mixer implementation to produce
362 a notification message on the bus indicating that the list of available
363 mixer tracks for a given mixer object has changed. Applications should
364 rebuild their interface when they receive this message.
365 This function only works for GstElements that are implementing the
366 GstMixer interface, and the element needs to have been provided a bus.</doc>
367         <return-value transfer-ownership="none">
368           <type name="none" c:type="void"/>
369         </return-value>
370       </method>
371       <method name="mute_toggled" c:identifier="gst_mixer_mute_toggled">
372         <doc xml:whitespace="preserve">This function is called by the mixer implementation to produce
373 a notification message on the bus indicating that the given track
374 has changed mute state.
375 This function only works for GstElements that are implementing the
376 GstMixer interface, and the element needs to have been provided a bus.</doc>
377         <return-value transfer-ownership="none">
378           <type name="none" c:type="void"/>
379         </return-value>
380         <parameters>
381           <parameter name="track" transfer-ownership="none">
382             <doc xml:whitespace="preserve">the GstMixerTrack that has change mute state.</doc>
383             <type name="MixerTrack" c:type="GstMixerTrack*"/>
384           </parameter>
385           <parameter name="mute" transfer-ownership="none">
386             <doc xml:whitespace="preserve">the new state of the mute flag on the track</doc>
387             <type name="gboolean" c:type="gboolean"/>
388           </parameter>
389         </parameters>
390       </method>
391       <method name="option_changed" c:identifier="gst_mixer_option_changed">
392         <doc xml:whitespace="preserve">This function is called by the mixer implementation to produce
393 a notification message on the bus indicating that the given options
394 object has changed state. 
395 This function only works for GstElements that are implementing the
396 GstMixer interface, and the element needs to have been provided a bus.</doc>
397         <return-value transfer-ownership="none">
398           <type name="none" c:type="void"/>
399         </return-value>
400         <parameters>
401           <parameter name="opts" transfer-ownership="none">
402             <doc xml:whitespace="preserve">the GstMixerOptions that has changed value.</doc>
403             <type name="MixerOptions" c:type="GstMixerOptions*"/>
404           </parameter>
405           <parameter name="value" transfer-ownership="none">
406             <doc xml:whitespace="preserve">the new value of the GstMixerOptions.</doc>
407             <type name="utf8" c:type="gchar*"/>
408           </parameter>
409         </parameters>
410       </method>
411       <method name="options_list_changed"
412               c:identifier="gst_mixer_options_list_changed"
413               version="0.10.18">
414         <doc xml:whitespace="preserve">This function is called by the mixer implementation to produce
415 a notification message on the bus indicating that the list of possible
416 options of a given options object has changed.
417 The new options are not contained in the message on purpose. Applications
418 should call gst_mixer_option_get_values() on @opts to make @opts update
419 its internal state and obtain the new list of values.
420 This function only works for GstElements that are implementing the
421 GstMixer interface, and the element needs to have been provided a bus
422 for this to work.</doc>
423         <return-value transfer-ownership="none">
424           <type name="none" c:type="void"/>
425         </return-value>
426         <parameters>
427           <parameter name="opts" transfer-ownership="none">
428             <doc xml:whitespace="preserve">the GstMixerOptions whose list of values has changed</doc>
429             <type name="MixerOptions" c:type="GstMixerOptions*"/>
430           </parameter>
431         </parameters>
432       </method>
433       <method name="record_toggled" c:identifier="gst_mixer_record_toggled">
434         <doc xml:whitespace="preserve">This function is called by the mixer implementation to produce
435 a notification message on the bus indicating that the given track
436 has changed recording state.
437 This function only works for GstElements that are implementing the
438 GstMixer interface, and the element needs to have been provided a bus.</doc>
439         <return-value transfer-ownership="none">
440           <type name="none" c:type="void"/>
441         </return-value>
442         <parameters>
443           <parameter name="track" transfer-ownership="none">
444             <doc xml:whitespace="preserve">the GstMixerTrack that has changed recording state.</doc>
445             <type name="MixerTrack" c:type="GstMixerTrack*"/>
446           </parameter>
447           <parameter name="record" transfer-ownership="none">
448             <doc xml:whitespace="preserve">the new state of the record flag on the track</doc>
449             <type name="gboolean" c:type="gboolean"/>
450           </parameter>
451         </parameters>
452       </method>
453       <method name="set_mute" c:identifier="gst_mixer_set_mute">
454         <doc xml:whitespace="preserve">Mutes or unmutes the given channel. To find out whether a
455 track is currently muted, use GST_MIXER_TRACK_HAS_FLAG ().</doc>
456         <return-value transfer-ownership="none">
457           <type name="none" c:type="void"/>
458         </return-value>
459         <parameters>
460           <parameter name="track" transfer-ownership="none">
461             <doc xml:whitespace="preserve">the #GstMixerTrack to operate on.</doc>
462             <type name="MixerTrack" c:type="GstMixerTrack*"/>
463           </parameter>
464           <parameter name="mute" transfer-ownership="none">
465             <doc xml:whitespace="preserve">a boolean value indicating whether to turn on or off muting.</doc>
466             <type name="gboolean" c:type="gboolean"/>
467           </parameter>
468         </parameters>
469       </method>
470       <method name="set_option" c:identifier="gst_mixer_set_option">
471         <doc xml:whitespace="preserve">Sets a name/value option in the mixer to the requested value.</doc>
472         <return-value transfer-ownership="none">
473           <type name="none" c:type="void"/>
474         </return-value>
475         <parameters>
476           <parameter name="opts" transfer-ownership="none">
477             <doc xml:whitespace="preserve">The #GstMixerOptions that we operate on.</doc>
478             <type name="MixerOptions" c:type="GstMixerOptions*"/>
479           </parameter>
480           <parameter name="value" transfer-ownership="none">
481             <doc xml:whitespace="preserve">The requested new option value.</doc>
482             <type name="utf8" c:type="gchar*"/>
483           </parameter>
484         </parameters>
485       </method>
486       <method name="set_record" c:identifier="gst_mixer_set_record">
487         <doc xml:whitespace="preserve">Enables or disables recording on the given track. Note that
488 this is only possible on input tracks, not on output tracks
489 (see GST_MIXER_TRACK_HAS_FLAG () and the GST_MIXER_TRACK_INPUT
490 flag).</doc>
491         <return-value transfer-ownership="none">
492           <type name="none" c:type="void"/>
493         </return-value>
494         <parameters>
495           <parameter name="track" transfer-ownership="none">
496             <doc xml:whitespace="preserve">the #GstMixerTrack to operate on.</doc>
497             <type name="MixerTrack" c:type="GstMixerTrack*"/>
498           </parameter>
499           <parameter name="record" transfer-ownership="none">
500             <doc xml:whitespace="preserve">a boolean value that indicates whether to turn on or off recording.</doc>
501             <type name="gboolean" c:type="gboolean"/>
502           </parameter>
503         </parameters>
504       </method>
505       <method name="set_volume" c:identifier="gst_mixer_set_volume">
506         <doc xml:whitespace="preserve">Sets the volume on each channel in a track. Short note about
507 the mixer/element, such as 'Line-in' or 'Microphone'. A
508 channel is said to be a mono-stream inside this track. A
509 stereo track thus contains two channels.</doc>
510         <return-value transfer-ownership="none">
511           <type name="none" c:type="void"/>
512         </return-value>
513         <parameters>
514           <parameter name="track" transfer-ownership="none">
515             <doc xml:whitespace="preserve">The #GstMixerTrack to set the volume on.</doc>
516             <type name="MixerTrack" c:type="GstMixerTrack*"/>
517           </parameter>
518           <parameter name="volumes" transfer-ownership="none">
519             <doc xml:whitespace="preserve">an array of integers (of size track-&gt;num_channels) that gives the wanted volume for each channel in this track.</doc>
520             <type name="gint" c:type="gint*"/>
521           </parameter>
522         </parameters>
523       </method>
524       <method name="volume_changed" c:identifier="gst_mixer_volume_changed">
525         <doc xml:whitespace="preserve">This function is called by the mixer implementation to produce
526 a notification message on the bus indicating that the volume(s) for the
527 given track have changed.
528 This function only works for GstElements that are implementing the
529 GstMixer interface, and the element needs to have been provided a bus.</doc>
530         <return-value transfer-ownership="none">
531           <type name="none" c:type="void"/>
532         </return-value>
533         <parameters>
534           <parameter name="track" transfer-ownership="none">
535             <doc xml:whitespace="preserve">the GstMixerTrack that has changed.</doc>
536             <type name="MixerTrack" c:type="GstMixerTrack*"/>
537           </parameter>
538           <parameter name="volumes" transfer-ownership="none">
539             <doc xml:whitespace="preserve">Array of volume values, one per channel on the mixer track.</doc>
540             <type name="gint" c:type="gint*"/>
541           </parameter>
542         </parameters>
543       </method>
544       <glib:signal name="mute-toggled">
545         <return-value transfer-ownership="none">
546           <type name="none"/>
547         </return-value>
548         <parameters>
549           <parameter name="object" transfer-ownership="none">
550             <type name="MixerTrack"/>
551           </parameter>
552           <parameter name="p0" transfer-ownership="none">
553             <type name="gboolean"/>
554           </parameter>
555         </parameters>
556       </glib:signal>
557       <glib:signal name="option-changed">
558         <return-value transfer-ownership="none">
559           <type name="none"/>
560         </return-value>
561         <parameters>
562           <parameter name="object" transfer-ownership="none">
563             <type name="MixerOptions"/>
564           </parameter>
565           <parameter name="p0" transfer-ownership="none">
566             <type name="utf8"/>
567           </parameter>
568         </parameters>
569       </glib:signal>
570       <glib:signal name="record-toggled">
571         <return-value transfer-ownership="none">
572           <type name="none"/>
573         </return-value>
574         <parameters>
575           <parameter name="object" transfer-ownership="none">
576             <type name="MixerTrack"/>
577           </parameter>
578           <parameter name="p0" transfer-ownership="none">
579             <type name="gboolean"/>
580           </parameter>
581         </parameters>
582       </glib:signal>
583       <glib:signal name="volume-changed">
584         <return-value transfer-ownership="none">
585           <type name="none"/>
586         </return-value>
587         <parameters>
588           <parameter name="object" transfer-ownership="none">
589             <type name="MixerTrack"/>
590           </parameter>
591           <parameter name="p0" transfer-ownership="none">
592             <type name="gpointer"/>
593           </parameter>
594         </parameters>
595       </glib:signal>
596     </interface>
597     <record name="MixerClass" c:type="GstMixerClass">
598       <field name="klass" writable="1">
599         <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
600       </field>
601       <field name="mixer_type" writable="1">
602         <type name="MixerType" c:type="GstMixerType"/>
603       </field>
604       <field name="list_tracks">
605         <callback name="list_tracks">
606           <return-value transfer-ownership="none">
607             <type name="GLib.List" c:type="GList*">
608               <type name="gpointer" c:type="gpointer"/>
609             </type>
610           </return-value>
611           <parameters>
612             <parameter name="mixer" transfer-ownership="none">
613               <type name="Mixer" c:type="GstMixer*"/>
614             </parameter>
615           </parameters>
616         </callback>
617       </field>
618       <field name="set_volume">
619         <callback name="set_volume">
620           <return-value transfer-ownership="none">
621             <type name="none" c:type="void"/>
622           </return-value>
623           <parameters>
624             <parameter name="mixer" transfer-ownership="none">
625               <type name="Mixer" c:type="GstMixer*"/>
626             </parameter>
627             <parameter name="track" transfer-ownership="none">
628               <type name="MixerTrack" c:type="GstMixerTrack*"/>
629             </parameter>
630             <parameter name="volumes" transfer-ownership="none">
631               <type name="gint" c:type="gint*"/>
632             </parameter>
633           </parameters>
634         </callback>
635       </field>
636       <field name="get_volume">
637         <callback name="get_volume">
638           <return-value transfer-ownership="none">
639             <type name="none" c:type="void"/>
640           </return-value>
641           <parameters>
642             <parameter name="mixer" transfer-ownership="none">
643               <type name="Mixer" c:type="GstMixer*"/>
644             </parameter>
645             <parameter name="track" transfer-ownership="none">
646               <type name="MixerTrack" c:type="GstMixerTrack*"/>
647             </parameter>
648             <parameter name="volumes" transfer-ownership="none">
649               <type name="gint" c:type="gint*"/>
650             </parameter>
651           </parameters>
652         </callback>
653       </field>
654       <field name="set_mute">
655         <callback name="set_mute">
656           <return-value transfer-ownership="none">
657             <type name="none" c:type="void"/>
658           </return-value>
659           <parameters>
660             <parameter name="mixer" transfer-ownership="none">
661               <type name="Mixer" c:type="GstMixer*"/>
662             </parameter>
663             <parameter name="track" transfer-ownership="none">
664               <type name="MixerTrack" c:type="GstMixerTrack*"/>
665             </parameter>
666             <parameter name="mute" transfer-ownership="none">
667               <type name="gboolean" c:type="gboolean"/>
668             </parameter>
669           </parameters>
670         </callback>
671       </field>
672       <field name="set_record">
673         <callback name="set_record">
674           <return-value transfer-ownership="none">
675             <type name="none" c:type="void"/>
676           </return-value>
677           <parameters>
678             <parameter name="mixer" transfer-ownership="none">
679               <type name="Mixer" c:type="GstMixer*"/>
680             </parameter>
681             <parameter name="track" transfer-ownership="none">
682               <type name="MixerTrack" c:type="GstMixerTrack*"/>
683             </parameter>
684             <parameter name="record" transfer-ownership="none">
685               <type name="gboolean" c:type="gboolean"/>
686             </parameter>
687           </parameters>
688         </callback>
689       </field>
690       <field name="mute_toggled">
691         <callback name="mute_toggled">
692           <return-value transfer-ownership="none">
693             <type name="none" c:type="void"/>
694           </return-value>
695           <parameters>
696             <parameter name="mixer" transfer-ownership="none">
697               <type name="Mixer" c:type="GstMixer*"/>
698             </parameter>
699             <parameter name="channel" transfer-ownership="none">
700               <type name="MixerTrack" c:type="GstMixerTrack*"/>
701             </parameter>
702             <parameter name="mute" transfer-ownership="none">
703               <type name="gboolean" c:type="gboolean"/>
704             </parameter>
705           </parameters>
706         </callback>
707       </field>
708       <field name="record_toggled">
709         <callback name="record_toggled">
710           <return-value transfer-ownership="none">
711             <type name="none" c:type="void"/>
712           </return-value>
713           <parameters>
714             <parameter name="mixer" transfer-ownership="none">
715               <type name="Mixer" c:type="GstMixer*"/>
716             </parameter>
717             <parameter name="channel" transfer-ownership="none">
718               <type name="MixerTrack" c:type="GstMixerTrack*"/>
719             </parameter>
720             <parameter name="record" transfer-ownership="none">
721               <type name="gboolean" c:type="gboolean"/>
722             </parameter>
723           </parameters>
724         </callback>
725       </field>
726       <field name="volume_changed">
727         <callback name="volume_changed">
728           <return-value transfer-ownership="none">
729             <type name="none" c:type="void"/>
730           </return-value>
731           <parameters>
732             <parameter name="mixer" transfer-ownership="none">
733               <type name="Mixer" c:type="GstMixer*"/>
734             </parameter>
735             <parameter name="channel" transfer-ownership="none">
736               <type name="MixerTrack" c:type="GstMixerTrack*"/>
737             </parameter>
738             <parameter name="volumes" transfer-ownership="none">
739               <type name="gint" c:type="gint*"/>
740             </parameter>
741           </parameters>
742         </callback>
743       </field>
744       <field name="set_option">
745         <callback name="set_option">
746           <return-value transfer-ownership="none">
747             <type name="none" c:type="void"/>
748           </return-value>
749           <parameters>
750             <parameter name="mixer" transfer-ownership="none">
751               <type name="Mixer" c:type="GstMixer*"/>
752             </parameter>
753             <parameter name="opts" transfer-ownership="none">
754               <type name="MixerOptions" c:type="GstMixerOptions*"/>
755             </parameter>
756             <parameter name="value" transfer-ownership="none">
757               <type name="utf8" c:type="gchar*"/>
758             </parameter>
759           </parameters>
760         </callback>
761       </field>
762       <field name="get_option">
763         <callback name="get_option">
764           <return-value transfer-ownership="none">
765             <type name="utf8" c:type="gchar*"/>
766           </return-value>
767           <parameters>
768             <parameter name="mixer" transfer-ownership="none">
769               <type name="Mixer" c:type="GstMixer*"/>
770             </parameter>
771             <parameter name="opts" transfer-ownership="none">
772               <type name="MixerOptions" c:type="GstMixerOptions*"/>
773             </parameter>
774           </parameters>
775         </callback>
776       </field>
777       <field name="option_changed">
778         <callback name="option_changed">
779           <return-value transfer-ownership="none">
780             <type name="none" c:type="void"/>
781           </return-value>
782           <parameters>
783             <parameter name="mixer" transfer-ownership="none">
784               <type name="Mixer" c:type="GstMixer*"/>
785             </parameter>
786             <parameter name="opts" transfer-ownership="none">
787               <type name="MixerOptions" c:type="GstMixerOptions*"/>
788             </parameter>
789             <parameter name="option" transfer-ownership="none">
790               <type name="utf8" c:type="gchar*"/>
791             </parameter>
792           </parameters>
793         </callback>
794       </field>
795       <field name="get_mixer_flags">
796         <callback name="get_mixer_flags">
797           <return-value transfer-ownership="none">
798             <type name="MixerFlags" c:type="GstMixerFlags"/>
799           </return-value>
800           <parameters>
801             <parameter name="mixer" transfer-ownership="none">
802               <type name="Mixer" c:type="GstMixer*"/>
803             </parameter>
804           </parameters>
805         </callback>
806       </field>
807       <field name="_gst_reserved" writable="1">
808         <array zero-terminated="0" c:type="gpointer" fixed-size="3">
809           <type name="gpointer" c:type="gpointer"/>
810         </array>
811       </field>
812     </record>
813     <bitfield name="MixerFlags"
814               version="0.10.14"
815               glib:type-name="GstMixerFlags"
816               glib:get-type="gst_mixer_flags_get_type"
817               c:type="GstMixerFlags">
818       <doc xml:whitespace="preserve">Flags indicating which optional features are supported by a mixer
819 implementation.</doc>
820       <member name="none"
821               value="0"
822               c:identifier="GST_MIXER_FLAG_NONE"
823               glib:nick="none"/>
824       <member name="auto_notifications"
825               value="1"
826               c:identifier="GST_MIXER_FLAG_AUTO_NOTIFICATIONS"
827               glib:nick="auto-notifications"/>
828       <member name="has_whitelist"
829               value="2"
830               c:identifier="GST_MIXER_FLAG_HAS_WHITELIST"
831               glib:nick="has-whitelist"/>
832       <member name="grouping"
833               value="4"
834               c:identifier="GST_MIXER_FLAG_GROUPING"
835               glib:nick="grouping"/>
836     </bitfield>
837     <enumeration name="MixerMessageType"
838                  version="0.10.14"
839                  glib:type-name="GstMixerMessageType"
840                  glib:get-type="gst_mixer_message_type_get_type"
841                  c:type="GstMixerMessageType">
842       <doc xml:whitespace="preserve">An enumeration for the type of a GstMixer message received on the bus</doc>
843       <member name="invalid"
844               value="0"
845               c:identifier="GST_MIXER_MESSAGE_INVALID"
846               glib:nick="invalid"/>
847       <member name="mute_toggled"
848               value="1"
849               c:identifier="GST_MIXER_MESSAGE_MUTE_TOGGLED"
850               glib:nick="mute-toggled"/>
851       <member name="record_toggled"
852               value="2"
853               c:identifier="GST_MIXER_MESSAGE_RECORD_TOGGLED"
854               glib:nick="record-toggled"/>
855       <member name="volume_changed"
856               value="3"
857               c:identifier="GST_MIXER_MESSAGE_VOLUME_CHANGED"
858               glib:nick="volume-changed"/>
859       <member name="option_changed"
860               value="4"
861               c:identifier="GST_MIXER_MESSAGE_OPTION_CHANGED"
862               glib:nick="option-changed"/>
863       <member name="options_list_changed"
864               value="5"
865               c:identifier="GST_MIXER_MESSAGE_OPTIONS_LIST_CHANGED"
866               glib:nick="options-list-changed"/>
867       <member name="mixer_changed"
868               value="6"
869               c:identifier="GST_MIXER_MESSAGE_MIXER_CHANGED"
870               glib:nick="mixer-changed"/>
871     </enumeration>
872     <class name="MixerOptions"
873            c:symbol-prefix="mixer_options"
874            c:type="GstMixerOptions"
875            parent="MixerTrack"
876            glib:type-name="GstMixerOptions"
877            glib:get-type="gst_mixer_options_get_type"
878            glib:type-struct="MixerOptionsClass">
879       <virtual-method name="get_values"
880                       invoker="get_values"
881                       introspectable="0">
882         <doc xml:whitespace="preserve">Get the values for the mixer option.
883 option. You must not free or modify the list or its contents, it belongs
884 to the @mixer_options object.</doc>
885         <return-value>
886           <doc xml:whitespace="preserve">A list of strings with all the possible values for the mixer</doc>
887           <type name="GLib.List" c:type="GList*">
888             <type name="gpointer" c:type="gpointer"/>
889           </type>
890         </return-value>
891       </virtual-method>
892       <method name="get_values"
893               c:identifier="gst_mixer_options_get_values"
894               introspectable="0">
895         <doc xml:whitespace="preserve">Get the values for the mixer option.
896 option. You must not free or modify the list or its contents, it belongs
897 to the @mixer_options object.</doc>
898         <return-value>
899           <doc xml:whitespace="preserve">A list of strings with all the possible values for the mixer</doc>
900           <type name="GLib.List" c:type="GList*">
901             <type name="gpointer" c:type="gpointer"/>
902           </type>
903         </return-value>
904       </method>
905       <field name="parent">
906         <type name="MixerTrack" c:type="GstMixerTrack"/>
907       </field>
908       <field name="values">
909         <type name="GLib.List" c:type="GList*">
910           <type name="gpointer" c:type="gpointer"/>
911         </type>
912       </field>
913       <field name="_gst_reserved">
914         <array zero-terminated="0" c:type="gpointer" fixed-size="4">
915           <type name="gpointer" c:type="gpointer"/>
916         </array>
917       </field>
918     </class>
919     <record name="MixerOptionsClass"
920             c:type="GstMixerOptionsClass"
921             glib:is-gtype-struct-for="MixerOptions">
922       <field name="parent">
923         <type name="MixerTrackClass" c:type="GstMixerTrackClass"/>
924       </field>
925       <field name="get_values" introspectable="0">
926         <callback name="get_values" introspectable="0">
927           <return-value>
928             <doc xml:whitespace="preserve">A list of strings with all the possible values for the mixer</doc>
929             <type name="GLib.List" c:type="GList*">
930               <type name="gpointer" c:type="gpointer"/>
931             </type>
932           </return-value>
933           <parameters>
934             <parameter name="opts" transfer-ownership="none">
935               <type name="MixerOptions" c:type="GstMixerOptions*"/>
936             </parameter>
937           </parameters>
938         </callback>
939       </field>
940       <field name="_gst_reserved">
941         <array zero-terminated="0" c:type="gpointer" fixed-size="3">
942           <type name="gpointer" c:type="gpointer"/>
943         </array>
944       </field>
945     </record>
946     <class name="MixerTrack"
947            c:symbol-prefix="mixer_track"
948            c:type="GstMixerTrack"
949            parent="GObject.Object"
950            glib:type-name="GstMixerTrack"
951            glib:get-type="gst_mixer_track_get_type"
952            glib:type-struct="MixerTrackClass">
953       <property name="flags" transfer-ownership="none">
954         <type name="guint"/>
955       </property>
956       <property name="index"
957                 writable="1"
958                 construct-only="1"
959                 transfer-ownership="none">
960         <type name="guint"/>
961       </property>
962       <property name="label" transfer-ownership="none">
963         <type name="utf8"/>
964       </property>
965       <property name="max-volume" transfer-ownership="none">
966         <type name="gint"/>
967       </property>
968       <property name="min-volume" transfer-ownership="none">
969         <type name="gint"/>
970       </property>
971       <property name="num-channels" transfer-ownership="none">
972         <type name="gint"/>
973       </property>
974       <property name="untranslated-label"
975                 writable="1"
976                 construct-only="1"
977                 transfer-ownership="none">
978         <type name="utf8"/>
979       </property>
980       <field name="parent">
981         <type name="GObject.Object" c:type="GObject"/>
982       </field>
983       <field name="label">
984         <type name="utf8" c:type="gchar*"/>
985       </field>
986       <field name="flags">
987         <type name="MixerTrackFlags" c:type="GstMixerTrackFlags"/>
988       </field>
989       <field name="num_channels">
990         <type name="gint" c:type="gint"/>
991       </field>
992       <field name="min_volume">
993         <type name="gint" c:type="gint"/>
994       </field>
995       <field name="max_volume">
996         <type name="gint" c:type="gint"/>
997       </field>
998     </class>
999     <record name="MixerTrackClass"
1000             c:type="GstMixerTrackClass"
1001             glib:is-gtype-struct-for="MixerTrack">
1002       <field name="parent">
1003         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
1004       </field>
1005       <field name="_gst_reserved">
1006         <array zero-terminated="0" c:type="gpointer" fixed-size="4">
1007           <type name="gpointer" c:type="gpointer"/>
1008         </array>
1009       </field>
1010     </record>
1011     <bitfield name="MixerTrackFlags"
1012               glib:type-name="GstMixerTrackFlags"
1013               glib:get-type="gst_mixer_track_flags_get_type"
1014               c:type="GstMixerTrackFlags">
1015       <doc xml:whitespace="preserve">Mixer track flags.</doc>
1016       <member name="input"
1017               value="1"
1018               c:identifier="GST_MIXER_TRACK_INPUT"
1019               glib:nick="input"/>
1020       <member name="output"
1021               value="2"
1022               c:identifier="GST_MIXER_TRACK_OUTPUT"
1023               glib:nick="output"/>
1024       <member name="mute"
1025               value="4"
1026               c:identifier="GST_MIXER_TRACK_MUTE"
1027               glib:nick="mute"/>
1028       <member name="record"
1029               value="8"
1030               c:identifier="GST_MIXER_TRACK_RECORD"
1031               glib:nick="record"/>
1032       <member name="master"
1033               value="16"
1034               c:identifier="GST_MIXER_TRACK_MASTER"
1035               glib:nick="master"/>
1036       <member name="software"
1037               value="32"
1038               c:identifier="GST_MIXER_TRACK_SOFTWARE"
1039               glib:nick="software"/>
1040       <member name="no_record"
1041               value="64"
1042               c:identifier="GST_MIXER_TRACK_NO_RECORD"
1043               glib:nick="no-record"/>
1044       <member name="no_mute"
1045               value="128"
1046               c:identifier="GST_MIXER_TRACK_NO_MUTE"
1047               glib:nick="no-mute"/>
1048       <member name="whitelist"
1049               value="256"
1050               c:identifier="GST_MIXER_TRACK_WHITELIST"
1051               glib:nick="whitelist"/>
1052       <member name="readonly"
1053               value="512"
1054               c:identifier="GST_MIXER_TRACK_READONLY"
1055               glib:nick="readonly"/>
1056       <member name="writeonly"
1057               value="1024"
1058               c:identifier="GST_MIXER_TRACK_WRITEONLY"
1059               glib:nick="writeonly"/>
1060     </bitfield>
1061     <enumeration name="MixerType"
1062                  glib:type-name="GstMixerType"
1063                  glib:get-type="gst_mixer_type_get_type"
1064                  c:type="GstMixerType">
1065       <member name="hardware"
1066               value="0"
1067               c:identifier="GST_MIXER_HARDWARE"
1068               glib:nick="hardware"/>
1069       <member name="software"
1070               value="1"
1071               c:identifier="GST_MIXER_SOFTWARE"
1072               glib:nick="software"/>
1073     </enumeration>
1074     <interface name="Navigation"
1075                c:symbol-prefix="navigation"
1076                c:type="GstNavigation"
1077                glib:type-name="GstNavigation"
1078                glib:get-type="gst_navigation_get_type"
1079                glib:type-struct="NavigationInterface">
1080       <virtual-method name="send_event" invoker="send_event">
1081         <return-value transfer-ownership="none">
1082           <type name="none" c:type="void"/>
1083         </return-value>
1084         <parameters>
1085           <parameter name="structure" transfer-ownership="none">
1086             <type name="Gst.Structure" c:type="GstStructure*"/>
1087           </parameter>
1088         </parameters>
1089       </virtual-method>
1090       <method name="send_command"
1091               c:identifier="gst_navigation_send_command"
1092               version="0.10.23">
1093         <doc xml:whitespace="preserve">Sends the indicated command to the navigation interface.</doc>
1094         <return-value transfer-ownership="none">
1095           <type name="none" c:type="void"/>
1096         </return-value>
1097         <parameters>
1098           <parameter name="command" transfer-ownership="none">
1099             <doc xml:whitespace="preserve">The command to issue</doc>
1100             <type name="NavigationCommand" c:type="GstNavigationCommand"/>
1101           </parameter>
1102         </parameters>
1103       </method>
1104       <method name="send_event" c:identifier="gst_navigation_send_event">
1105         <return-value transfer-ownership="none">
1106           <type name="none" c:type="void"/>
1107         </return-value>
1108         <parameters>
1109           <parameter name="structure" transfer-ownership="none">
1110             <type name="Gst.Structure" c:type="GstStructure*"/>
1111           </parameter>
1112         </parameters>
1113       </method>
1114       <method name="send_key_event"
1115               c:identifier="gst_navigation_send_key_event">
1116         <return-value transfer-ownership="none">
1117           <type name="none" c:type="void"/>
1118         </return-value>
1119         <parameters>
1120           <parameter name="event" transfer-ownership="none">
1121             <doc xml:whitespace="preserve">The type of the key event. Recognised values are "key-press" and "key-release"</doc>
1122             <type name="utf8" c:type="char*"/>
1123           </parameter>
1124           <parameter name="key" transfer-ownership="none">
1125             <doc xml:whitespace="preserve">Character representation of the key. This is typically as produced by XKeysymToString.</doc>
1126             <type name="utf8" c:type="char*"/>
1127           </parameter>
1128         </parameters>
1129       </method>
1130       <method name="send_mouse_event"
1131               c:identifier="gst_navigation_send_mouse_event">
1132         <doc xml:whitespace="preserve">Sends a mouse event to the navigation interface. Mouse event coordinates
1133 are sent relative to the display space of the related output area. This is
1134 usually the size in pixels of the window associated with the element
1135 implementing the #GstNavigation interface.</doc>
1136         <return-value transfer-ownership="none">
1137           <type name="none" c:type="void"/>
1138         </return-value>
1139         <parameters>
1140           <parameter name="event" transfer-ownership="none">
1141             <doc xml:whitespace="preserve">The type of mouse event, as a text string. Recognised values are "mouse-button-press", "mouse-button-release" and "mouse-move".</doc>
1142             <type name="utf8" c:type="char*"/>
1143           </parameter>
1144           <parameter name="button" transfer-ownership="none">
1145             <doc xml:whitespace="preserve">The button number of the button being pressed or released. Pass 0 for mouse-move events.</doc>
1146             <type name="gint" c:type="int"/>
1147           </parameter>
1148           <parameter name="x" transfer-ownership="none">
1149             <doc xml:whitespace="preserve">The x coordinate of the mouse event.</doc>
1150             <type name="gdouble" c:type="double"/>
1151           </parameter>
1152           <parameter name="y" transfer-ownership="none">
1153             <doc xml:whitespace="preserve">The y coordinate of the mouse event.</doc>
1154             <type name="gdouble" c:type="double"/>
1155           </parameter>
1156         </parameters>
1157       </method>
1158     </interface>
1159     <enumeration name="NavigationCommand"
1160                  version="0.10.23"
1161                  glib:type-name="GstNavigationCommand"
1162                  glib:get-type="gst_navigation_command_get_type"
1163                  c:type="GstNavigationCommand">
1164       <doc xml:whitespace="preserve">A set of commands that may be issued to an element providing the
1165 #GstNavigation interface. The available commands can be queried via
1166 the gst_navigation_query_new_commands() query.
1167 For convenience in handling DVD navigation, the MENU commands are aliased as:
1168 GST_NAVIGATION_COMMAND_DVD_MENU            = @GST_NAVIGATION_COMMAND_MENU1
1169 GST_NAVIGATION_COMMAND_DVD_TITLE_MENU      = @GST_NAVIGATION_COMMAND_MENU2
1170 GST_NAVIGATION_COMMAND_DVD_ROOT_MENU       = @GST_NAVIGATION_COMMAND_MENU3
1171 GST_NAVIGATION_COMMAND_DVD_SUBPICTURE_MENU = @GST_NAVIGATION_COMMAND_MENU4
1172 GST_NAVIGATION_COMMAND_DVD_AUDIO_MENU      = @GST_NAVIGATION_COMMAND_MENU5
1173 GST_NAVIGATION_COMMAND_DVD_ANGLE_MENU      = @GST_NAVIGATION_COMMAND_MENU6
1174 GST_NAVIGATION_COMMAND_DVD_CHAPTER_MENU    = @GST_NAVIGATION_COMMAND_MENU7</doc>
1175       <member name="invalid"
1176               value="0"
1177               c:identifier="GST_NAVIGATION_COMMAND_INVALID"
1178               glib:nick="invalid"/>
1179       <member name="menu1"
1180               value="1"
1181               c:identifier="GST_NAVIGATION_COMMAND_MENU1"
1182               glib:nick="menu1"/>
1183       <member name="menu2"
1184               value="2"
1185               c:identifier="GST_NAVIGATION_COMMAND_MENU2"
1186               glib:nick="menu2"/>
1187       <member name="menu3"
1188               value="3"
1189               c:identifier="GST_NAVIGATION_COMMAND_MENU3"
1190               glib:nick="menu3"/>
1191       <member name="menu4"
1192               value="4"
1193               c:identifier="GST_NAVIGATION_COMMAND_MENU4"
1194               glib:nick="menu4"/>
1195       <member name="menu5"
1196               value="5"
1197               c:identifier="GST_NAVIGATION_COMMAND_MENU5"
1198               glib:nick="menu5"/>
1199       <member name="menu6"
1200               value="6"
1201               c:identifier="GST_NAVIGATION_COMMAND_MENU6"
1202               glib:nick="menu6"/>
1203       <member name="menu7"
1204               value="7"
1205               c:identifier="GST_NAVIGATION_COMMAND_MENU7"
1206               glib:nick="menu7"/>
1207       <member name="left"
1208               value="20"
1209               c:identifier="GST_NAVIGATION_COMMAND_LEFT"
1210               glib:nick="left"/>
1211       <member name="right"
1212               value="21"
1213               c:identifier="GST_NAVIGATION_COMMAND_RIGHT"
1214               glib:nick="right"/>
1215       <member name="up"
1216               value="22"
1217               c:identifier="GST_NAVIGATION_COMMAND_UP"
1218               glib:nick="up"/>
1219       <member name="down"
1220               value="23"
1221               c:identifier="GST_NAVIGATION_COMMAND_DOWN"
1222               glib:nick="down"/>
1223       <member name="activate"
1224               value="24"
1225               c:identifier="GST_NAVIGATION_COMMAND_ACTIVATE"
1226               glib:nick="activate"/>
1227       <member name="prev_angle"
1228               value="30"
1229               c:identifier="GST_NAVIGATION_COMMAND_PREV_ANGLE"
1230               glib:nick="prev-angle"/>
1231       <member name="next_angle"
1232               value="31"
1233               c:identifier="GST_NAVIGATION_COMMAND_NEXT_ANGLE"
1234               glib:nick="next-angle"/>
1235     </enumeration>
1236     <enumeration name="NavigationEventType"
1237                  version="0.10.23"
1238                  glib:type-name="GstNavigationEventType"
1239                  glib:get-type="gst_navigation_event_type_get_type"
1240                  c:type="GstNavigationEventType">
1241       <doc xml:whitespace="preserve">Enum values for the various events that an element implementing the
1242 GstNavigation interface might send up the pipeline.</doc>
1243       <member name="invalid"
1244               value="0"
1245               c:identifier="GST_NAVIGATION_EVENT_INVALID"
1246               glib:nick="invalid"/>
1247       <member name="key_press"
1248               value="1"
1249               c:identifier="GST_NAVIGATION_EVENT_KEY_PRESS"
1250               glib:nick="key-press"/>
1251       <member name="key_release"
1252               value="2"
1253               c:identifier="GST_NAVIGATION_EVENT_KEY_RELEASE"
1254               glib:nick="key-release"/>
1255       <member name="mouse_button_press"
1256               value="3"
1257               c:identifier="GST_NAVIGATION_EVENT_MOUSE_BUTTON_PRESS"
1258               glib:nick="mouse-button-press"/>
1259       <member name="mouse_button_release"
1260               value="4"
1261               c:identifier="GST_NAVIGATION_EVENT_MOUSE_BUTTON_RELEASE"
1262               glib:nick="mouse-button-release"/>
1263       <member name="mouse_move"
1264               value="5"
1265               c:identifier="GST_NAVIGATION_EVENT_MOUSE_MOVE"
1266               glib:nick="mouse-move"/>
1267       <member name="command"
1268               value="6"
1269               c:identifier="GST_NAVIGATION_EVENT_COMMAND"
1270               glib:nick="command"/>
1271     </enumeration>
1272     <record name="NavigationInterface"
1273             c:type="GstNavigationInterface"
1274             glib:is-gtype-struct-for="Navigation">
1275       <field name="g_iface">
1276         <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
1277       </field>
1278       <field name="send_event">
1279         <callback name="send_event">
1280           <return-value transfer-ownership="none">
1281             <type name="none" c:type="void"/>
1282           </return-value>
1283           <parameters>
1284             <parameter name="navigation" transfer-ownership="none">
1285               <type name="Navigation" c:type="GstNavigation*"/>
1286             </parameter>
1287             <parameter name="structure" transfer-ownership="none">
1288               <type name="Gst.Structure" c:type="GstStructure*"/>
1289             </parameter>
1290           </parameters>
1291         </callback>
1292       </field>
1293       <field name="_gst_reserved">
1294         <array zero-terminated="0" c:type="gpointer" fixed-size="4">
1295           <type name="gpointer" c:type="gpointer"/>
1296         </array>
1297       </field>
1298     </record>
1299     <enumeration name="NavigationMessageType"
1300                  version="0.10.23"
1301                  glib:type-name="GstNavigationMessageType"
1302                  glib:get-type="gst_navigation_message_type_get_type"
1303                  c:type="GstNavigationMessageType">
1304       <doc xml:whitespace="preserve">A set of notifications that may be received on the bus when navigation
1305 related status changes.</doc>
1306       <member name="invalid"
1307               value="0"
1308               c:identifier="GST_NAVIGATION_MESSAGE_INVALID"
1309               glib:nick="invalid"/>
1310       <member name="mouse_over"
1311               value="1"
1312               c:identifier="GST_NAVIGATION_MESSAGE_MOUSE_OVER"
1313               glib:nick="mouse-over"/>
1314       <member name="commands_changed"
1315               value="2"
1316               c:identifier="GST_NAVIGATION_MESSAGE_COMMANDS_CHANGED"
1317               glib:nick="commands-changed"/>
1318       <member name="angles_changed"
1319               value="3"
1320               c:identifier="GST_NAVIGATION_MESSAGE_ANGLES_CHANGED"
1321               glib:nick="angles-changed"/>
1322     </enumeration>
1323     <enumeration name="NavigationQueryType"
1324                  glib:type-name="GstNavigationQueryType"
1325                  glib:get-type="gst_navigation_query_type_get_type"
1326                  c:type="GstNavigationQueryType">
1327       <member name="invalid"
1328               value="0"
1329               c:identifier="GST_NAVIGATION_QUERY_INVALID"
1330               glib:nick="invalid"/>
1331       <member name="commands"
1332               value="1"
1333               c:identifier="GST_NAVIGATION_QUERY_COMMANDS"
1334               glib:nick="commands"/>
1335       <member name="angles"
1336               value="2"
1337               c:identifier="GST_NAVIGATION_QUERY_ANGLES"
1338               glib:nick="angles"/>
1339     </enumeration>
1340     <interface name="PropertyProbe"
1341                c:symbol-prefix="property_probe"
1342                c:type="GstPropertyProbe"
1343                glib:type-name="GstPropertyProbe"
1344                glib:get-type="gst_property_probe_get_type"
1345                glib:type-struct="PropertyProbeInterface">
1346       <doc xml:whitespace="preserve">Opaque #GstPropertyProbe data structure.</doc>
1347       <virtual-method name="get_properties" invoker="get_properties">
1348         <doc xml:whitespace="preserve">Get a list of properties for which probing is supported.
1349 by this element.</doc>
1350         <return-value transfer-ownership="none">
1351           <doc xml:whitespace="preserve">the list of properties for which probing is supported</doc>
1352           <type name="GLib.List" c:type="GList*">
1353             <type name="gpointer" c:type="gpointer"/>
1354           </type>
1355         </return-value>
1356       </virtual-method>
1357       <virtual-method name="get_values">
1358         <return-value transfer-ownership="full">
1359           <type name="GObject.ValueArray" c:type="GValueArray*"/>
1360         </return-value>
1361         <parameters>
1362           <parameter name="prop_id" transfer-ownership="none">
1363             <type name="guint" c:type="guint"/>
1364           </parameter>
1365           <parameter name="pspec" transfer-ownership="none">
1366             <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
1367           </parameter>
1368         </parameters>
1369       </virtual-method>
1370       <virtual-method name="needs_probe">
1371         <return-value transfer-ownership="none">
1372           <type name="gboolean" c:type="gboolean"/>
1373         </return-value>
1374         <parameters>
1375           <parameter name="prop_id" transfer-ownership="none">
1376             <type name="guint" c:type="guint"/>
1377           </parameter>
1378           <parameter name="pspec" transfer-ownership="none">
1379             <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
1380           </parameter>
1381         </parameters>
1382       </virtual-method>
1383       <virtual-method name="probe_property">
1384         <return-value transfer-ownership="none">
1385           <type name="none" c:type="void"/>
1386         </return-value>
1387         <parameters>
1388           <parameter name="prop_id" transfer-ownership="none">
1389             <type name="guint" c:type="guint"/>
1390           </parameter>
1391           <parameter name="pspec" transfer-ownership="none">
1392             <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
1393           </parameter>
1394         </parameters>
1395       </virtual-method>
1396       <method name="get_properties"
1397               c:identifier="gst_property_probe_get_properties">
1398         <doc xml:whitespace="preserve">Get a list of properties for which probing is supported.
1399 by this element.</doc>
1400         <return-value transfer-ownership="none">
1401           <doc xml:whitespace="preserve">the list of properties for which probing is supported</doc>
1402           <type name="GLib.List" c:type="GList*">
1403             <type name="gpointer" c:type="gpointer"/>
1404           </type>
1405         </return-value>
1406       </method>
1407       <method name="get_property"
1408               c:identifier="gst_property_probe_get_property">
1409         <doc xml:whitespace="preserve">Get #GParamSpec for a property for which probing is supported.</doc>
1410         <return-value transfer-ownership="none">
1411           <doc xml:whitespace="preserve">the #GParamSpec of %NULL.</doc>
1412           <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
1413         </return-value>
1414         <parameters>
1415           <parameter name="name" transfer-ownership="none">
1416             <doc xml:whitespace="preserve">name of the property.</doc>
1417             <type name="utf8" c:type="gchar*"/>
1418           </parameter>
1419         </parameters>
1420       </method>
1421       <method name="get_values" c:identifier="gst_property_probe_get_values">
1422         <doc xml:whitespace="preserve">Gets the possible (probed) values for the given property,
1423 requires the property to have been probed before.</doc>
1424         <return-value transfer-ownership="full">
1425           <doc xml:whitespace="preserve">A list of valid values for the given property.</doc>
1426           <type name="GObject.ValueArray" c:type="GValueArray*"/>
1427         </return-value>
1428         <parameters>
1429           <parameter name="pspec" transfer-ownership="none">
1430             <doc xml:whitespace="preserve">the #GParamSpec property identifier.</doc>
1431             <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
1432           </parameter>
1433         </parameters>
1434       </method>
1435       <method name="get_values_name"
1436               c:identifier="gst_property_probe_get_values_name">
1437         <doc xml:whitespace="preserve">Same as gst_property_probe_get_values ().</doc>
1438         <return-value transfer-ownership="full">
1439           <doc xml:whitespace="preserve">A list of valid values for the given property.</doc>
1440           <type name="GObject.ValueArray" c:type="GValueArray*"/>
1441         </return-value>
1442         <parameters>
1443           <parameter name="name" transfer-ownership="none">
1444             <doc xml:whitespace="preserve">the name of the property to get values for.</doc>
1445             <type name="utf8" c:type="gchar*"/>
1446           </parameter>
1447         </parameters>
1448       </method>
1449       <method name="needs_probe" c:identifier="gst_property_probe_needs_probe">
1450         <doc xml:whitespace="preserve">Checks whether a property needs a probe. This might be because
1451 the property wasn't initialized before, or because host setup
1452 changed. This might be, for example, because a new device was
1453 added, and thus device probing needs to be refreshed to display
1454 the new device.</doc>
1455         <return-value transfer-ownership="none">
1456           <doc xml:whitespace="preserve">TRUE if the property needs a new probe, FALSE if not.</doc>
1457           <type name="gboolean" c:type="gboolean"/>
1458         </return-value>
1459         <parameters>
1460           <parameter name="pspec" transfer-ownership="none">
1461             <doc xml:whitespace="preserve">a #GParamSpec that identifies the property to check.</doc>
1462             <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
1463           </parameter>
1464         </parameters>
1465       </method>
1466       <method name="needs_probe_name"
1467               c:identifier="gst_property_probe_needs_probe_name">
1468         <doc xml:whitespace="preserve">Same as gst_property_probe_needs_probe ().</doc>
1469         <return-value transfer-ownership="none">
1470           <doc xml:whitespace="preserve">TRUE if the property needs a new probe, FALSE if not.</doc>
1471           <type name="gboolean" c:type="gboolean"/>
1472         </return-value>
1473         <parameters>
1474           <parameter name="name" transfer-ownership="none">
1475             <doc xml:whitespace="preserve">the name of the property to check.</doc>
1476             <type name="utf8" c:type="gchar*"/>
1477           </parameter>
1478         </parameters>
1479       </method>
1480       <method name="probe_and_get_values"
1481               c:identifier="gst_property_probe_probe_and_get_values">
1482         <doc xml:whitespace="preserve">Check whether the given property requires a new probe. If so,
1483 fo the probe. After that, retrieve a value list. Meant as a
1484 utility function that wraps the above functions.</doc>
1485         <return-value transfer-ownership="full">
1486           <doc xml:whitespace="preserve">the list of valid values for this property.</doc>
1487           <type name="GObject.ValueArray" c:type="GValueArray*"/>
1488         </return-value>
1489         <parameters>
1490           <parameter name="pspec" transfer-ownership="none">
1491             <doc xml:whitespace="preserve">The #GParamSpec property identifier.</doc>
1492             <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
1493           </parameter>
1494         </parameters>
1495       </method>
1496       <method name="probe_and_get_values_name"
1497               c:identifier="gst_property_probe_probe_and_get_values_name">
1498         <doc xml:whitespace="preserve">Same as gst_property_probe_probe_and_get_values ().</doc>
1499         <return-value transfer-ownership="full">
1500           <doc xml:whitespace="preserve">the list of valid values for this property.</doc>
1501           <type name="GObject.ValueArray" c:type="GValueArray*"/>
1502         </return-value>
1503         <parameters>
1504           <parameter name="name" transfer-ownership="none">
1505             <doc xml:whitespace="preserve">the name of the property to get values for.</doc>
1506             <type name="utf8" c:type="gchar*"/>
1507           </parameter>
1508         </parameters>
1509       </method>
1510       <method name="probe_property"
1511               c:identifier="gst_property_probe_probe_property">
1512         <doc xml:whitespace="preserve">Runs a probe on the property specified by @pspec</doc>
1513         <return-value transfer-ownership="none">
1514           <type name="none" c:type="void"/>
1515         </return-value>
1516         <parameters>
1517           <parameter name="pspec" transfer-ownership="none">
1518             <doc xml:whitespace="preserve">#GParamSpec of the property.</doc>
1519             <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
1520           </parameter>
1521         </parameters>
1522       </method>
1523       <method name="probe_property_name"
1524               c:identifier="gst_property_probe_probe_property_name">
1525         <doc xml:whitespace="preserve">Runs a probe on the property specified by @name.</doc>
1526         <return-value transfer-ownership="none">
1527           <type name="none" c:type="void"/>
1528         </return-value>
1529         <parameters>
1530           <parameter name="name" transfer-ownership="none">
1531             <doc xml:whitespace="preserve">name of the property.</doc>
1532             <type name="utf8" c:type="gchar*"/>
1533           </parameter>
1534         </parameters>
1535       </method>
1536       <glib:signal name="probe-needed">
1537         <return-value transfer-ownership="none">
1538           <type name="none"/>
1539         </return-value>
1540         <parameters>
1541           <parameter name="object" transfer-ownership="none">
1542             <type name="gpointer"/>
1543           </parameter>
1544         </parameters>
1545       </glib:signal>
1546     </interface>
1547     <record name="PropertyProbeInterface"
1548             c:type="GstPropertyProbeInterface"
1549             glib:is-gtype-struct-for="PropertyProbe">
1550       <doc xml:whitespace="preserve">#GstPropertyProbe interface.</doc>
1551       <field name="klass">
1552         <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
1553       </field>
1554       <field name="probe_needed">
1555         <callback name="probe_needed">
1556           <return-value transfer-ownership="none">
1557             <type name="none" c:type="void"/>
1558           </return-value>
1559           <parameters>
1560             <parameter name="probe" transfer-ownership="none">
1561               <type name="PropertyProbe" c:type="GstPropertyProbe*"/>
1562             </parameter>
1563             <parameter name="pspec" transfer-ownership="none">
1564               <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
1565             </parameter>
1566           </parameters>
1567         </callback>
1568       </field>
1569       <field name="get_properties">
1570         <callback name="get_properties">
1571           <return-value transfer-ownership="none">
1572             <doc xml:whitespace="preserve">the list of properties for which probing is supported</doc>
1573             <type name="GLib.List" c:type="GList*">
1574               <type name="gpointer" c:type="gpointer"/>
1575             </type>
1576           </return-value>
1577           <parameters>
1578             <parameter name="probe" transfer-ownership="none">
1579               <type name="PropertyProbe" c:type="GstPropertyProbe*"/>
1580             </parameter>
1581           </parameters>
1582         </callback>
1583       </field>
1584       <field name="needs_probe">
1585         <callback name="needs_probe">
1586           <return-value transfer-ownership="none">
1587             <type name="gboolean" c:type="gboolean"/>
1588           </return-value>
1589           <parameters>
1590             <parameter name="probe" transfer-ownership="none">
1591               <type name="PropertyProbe" c:type="GstPropertyProbe*"/>
1592             </parameter>
1593             <parameter name="prop_id" transfer-ownership="none">
1594               <type name="guint" c:type="guint"/>
1595             </parameter>
1596             <parameter name="pspec" transfer-ownership="none">
1597               <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
1598             </parameter>
1599           </parameters>
1600         </callback>
1601       </field>
1602       <field name="probe_property">
1603         <callback name="probe_property">
1604           <return-value transfer-ownership="none">
1605             <type name="none" c:type="void"/>
1606           </return-value>
1607           <parameters>
1608             <parameter name="probe" transfer-ownership="none">
1609               <type name="PropertyProbe" c:type="GstPropertyProbe*"/>
1610             </parameter>
1611             <parameter name="prop_id" transfer-ownership="none">
1612               <type name="guint" c:type="guint"/>
1613             </parameter>
1614             <parameter name="pspec" transfer-ownership="none">
1615               <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
1616             </parameter>
1617           </parameters>
1618         </callback>
1619       </field>
1620       <field name="get_values">
1621         <callback name="get_values">
1622           <return-value transfer-ownership="full">
1623             <type name="GObject.ValueArray" c:type="GValueArray*"/>
1624           </return-value>
1625           <parameters>
1626             <parameter name="probe" transfer-ownership="none">
1627               <type name="PropertyProbe" c:type="GstPropertyProbe*"/>
1628             </parameter>
1629             <parameter name="prop_id" transfer-ownership="none">
1630               <type name="guint" c:type="guint"/>
1631             </parameter>
1632             <parameter name="pspec" transfer-ownership="none">
1633               <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
1634             </parameter>
1635           </parameters>
1636         </callback>
1637       </field>
1638       <field name="_gst_reserved">
1639         <array zero-terminated="0" c:type="gpointer" fixed-size="4">
1640           <type name="gpointer" c:type="gpointer"/>
1641         </array>
1642       </field>
1643     </record>
1644     <interface name="StreamVolume"
1645                c:symbol-prefix="stream_volume"
1646                c:type="GstStreamVolume"
1647                glib:type-name="GstStreamVolume"
1648                glib:get-type="gst_stream_volume_get_type"
1649                glib:type-struct="StreamVolumeInterface">
1650       <method name="get_mute"
1651               c:identifier="gst_stream_volume_get_mute"
1652               version="0.10.25">
1653         <return-value transfer-ownership="none">
1654           <doc xml:whitespace="preserve">Returns %TRUE if the stream is muted</doc>
1655           <type name="gboolean" c:type="gboolean"/>
1656         </return-value>
1657       </method>
1658       <method name="get_volume"
1659               c:identifier="gst_stream_volume_get_volume"
1660               version="0.10.25">
1661         <return-value transfer-ownership="none">
1662           <doc xml:whitespace="preserve">The current stream volume as linear factor</doc>
1663           <type name="gdouble" c:type="gdouble"/>
1664         </return-value>
1665         <parameters>
1666           <parameter name="format" transfer-ownership="none">
1667             <doc xml:whitespace="preserve">#GstStreamVolumeFormat which should be returned</doc>
1668             <type name="StreamVolumeFormat" c:type="GstStreamVolumeFormat"/>
1669           </parameter>
1670         </parameters>
1671       </method>
1672       <method name="set_mute"
1673               c:identifier="gst_stream_volume_set_mute"
1674               version="0.10.25">
1675         <return-value transfer-ownership="none">
1676           <type name="none" c:type="void"/>
1677         </return-value>
1678         <parameters>
1679           <parameter name="mute" transfer-ownership="none">
1680             <doc xml:whitespace="preserve">Mute state that should be set</doc>
1681             <type name="gboolean" c:type="gboolean"/>
1682           </parameter>
1683         </parameters>
1684       </method>
1685       <method name="set_volume"
1686               c:identifier="gst_stream_volume_set_volume"
1687               version="0.10.25">
1688         <return-value transfer-ownership="none">
1689           <type name="none" c:type="void"/>
1690         </return-value>
1691         <parameters>
1692           <parameter name="format" transfer-ownership="none">
1693             <doc xml:whitespace="preserve">#GstStreamVolumeFormat of @val</doc>
1694             <type name="StreamVolumeFormat" c:type="GstStreamVolumeFormat"/>
1695           </parameter>
1696           <parameter name="val" transfer-ownership="none">
1697             <doc xml:whitespace="preserve">Linear volume factor that should be set</doc>
1698             <type name="gdouble" c:type="gdouble"/>
1699           </parameter>
1700         </parameters>
1701       </method>
1702       <property name="mute" writable="1" transfer-ownership="none">
1703         <type name="gboolean"/>
1704       </property>
1705       <property name="volume" writable="1" transfer-ownership="none">
1706         <type name="gdouble"/>
1707       </property>
1708     </interface>
1709     <enumeration name="StreamVolumeFormat"
1710                  version="0.10.25"
1711                  glib:type-name="GstStreamVolumeFormat"
1712                  glib:get-type="gst_stream_volume_format_get_type"
1713                  c:type="GstStreamVolumeFormat">
1714       <doc xml:whitespace="preserve">Different representations of a stream volume. gst_stream_volume_convert()
1715 allows to convert between the different representations.
1716 Formulas to convert from a linear to a cubic or dB volume are
1717 cbrt(val) and 20 * log10 (val).</doc>
1718       <member name="linear"
1719               value="0"
1720               c:identifier="GST_STREAM_VOLUME_FORMAT_LINEAR"
1721               glib:nick="linear"/>
1722       <member name="cubic"
1723               value="1"
1724               c:identifier="GST_STREAM_VOLUME_FORMAT_CUBIC"
1725               glib:nick="cubic"/>
1726       <member name="db"
1727               value="2"
1728               c:identifier="GST_STREAM_VOLUME_FORMAT_DB"
1729               glib:nick="db"/>
1730     </enumeration>
1731     <record name="StreamVolumeInterface"
1732             c:type="GstStreamVolumeInterface"
1733             glib:is-gtype-struct-for="StreamVolume">
1734       <field name="parent">
1735         <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
1736       </field>
1737       <field name="_gst_reserved">
1738         <array zero-terminated="0" c:type="gpointer" fixed-size="4">
1739           <type name="gpointer" c:type="gpointer"/>
1740         </array>
1741       </field>
1742     </record>
1743     <interface name="Tuner"
1744                c:symbol-prefix="tuner"
1745                c:type="GstTuner"
1746                glib:type-name="GstTuner"
1747                glib:get-type="gst_tuner_get_type">
1748       <prerequisite name="Gst.Element"/>
1749       <prerequisite name="Gst.ImplementsInterface"/>
1750       <method name="channel_changed" c:identifier="gst_tuner_channel_changed">
1751         <doc xml:whitespace="preserve">Called by elements implementing the #GstTuner interface when the
1752 current channel changes. Fires the #GstTuner::channel-changed signal.</doc>
1753         <return-value transfer-ownership="none">
1754           <type name="none" c:type="void"/>
1755         </return-value>
1756         <parameters>
1757           <parameter name="channel" transfer-ownership="none">
1758             <doc xml:whitespace="preserve">A #GstTunerChannel instance</doc>
1759             <type name="TunerChannel" c:type="GstTunerChannel*"/>
1760           </parameter>
1761         </parameters>
1762       </method>
1763       <method name="find_channel_by_name"
1764               c:identifier="gst_tuner_find_channel_by_name"
1765               introspectable="0">
1766         <doc xml:whitespace="preserve">Look up a #GstTunerChannel by name.
1767 is available.</doc>
1768         <return-value>
1769           <doc xml:whitespace="preserve">A #GstTunerChannel, or NULL if no channel with the provided name</doc>
1770           <type name="TunerChannel" c:type="GstTunerChannel*"/>
1771         </return-value>
1772         <parameters>
1773           <parameter name="channel" transfer-ownership="none">
1774             <doc xml:whitespace="preserve">A string containing the name of a #GstTunerChannel</doc>
1775             <type name="utf8" c:type="gchar*"/>
1776           </parameter>
1777         </parameters>
1778       </method>
1779       <method name="find_norm_by_name"
1780               c:identifier="gst_tuner_find_norm_by_name"
1781               introspectable="0">
1782         <doc xml:whitespace="preserve">Look up a #GstTunerNorm by name.
1783 is available.</doc>
1784         <return-value>
1785           <doc xml:whitespace="preserve">A #GstTunerNorm, or NULL if no norm with the provided name</doc>
1786           <type name="TunerNorm" c:type="GstTunerNorm*"/>
1787         </return-value>
1788         <parameters>
1789           <parameter name="norm" transfer-ownership="none">
1790             <doc xml:whitespace="preserve">A string containing the name of a #GstTunerNorm</doc>
1791             <type name="utf8" c:type="gchar*"/>
1792           </parameter>
1793         </parameters>
1794       </method>
1795       <method name="frequency_changed"
1796               c:identifier="gst_tuner_frequency_changed">
1797         <doc xml:whitespace="preserve">Called by elements implementing the #GstTuner interface when the
1798 configured frequency changes. Fires the #GstTuner::frequency-changed
1799 signal on the tuner, and the #GstTunerChannel::frequency-changed signal
1800 on the channel.</doc>
1801         <return-value transfer-ownership="none">
1802           <type name="none" c:type="void"/>
1803         </return-value>
1804         <parameters>
1805           <parameter name="channel" transfer-ownership="none">
1806             <doc xml:whitespace="preserve">The current #GstTunerChannel</doc>
1807             <type name="TunerChannel" c:type="GstTunerChannel*"/>
1808           </parameter>
1809           <parameter name="frequency" transfer-ownership="none">
1810             <doc xml:whitespace="preserve">The new frequency setting</doc>
1811             <type name="gulong" c:type="gulong"/>
1812           </parameter>
1813         </parameters>
1814       </method>
1815       <method name="get_channel"
1816               c:identifier="gst_tuner_get_channel"
1817               introspectable="0">
1818         <doc xml:whitespace="preserve">Retrieve the current channel from the tuner.</doc>
1819         <return-value>
1820           <doc xml:whitespace="preserve">the current channel of the tuner object.</doc>
1821           <type name="TunerChannel" c:type="GstTunerChannel*"/>
1822         </return-value>
1823       </method>
1824       <method name="get_frequency" c:identifier="gst_tuner_get_frequency">
1825         <doc xml:whitespace="preserve">Retrieve the current frequency from the given channel. As for
1826 gst_tuner_set_frequency(), the #GstTunerChannel must support frequency
1827 operations, as indicated by the GST_TUNER_CHANNEL_FREQUENCY flag.</doc>
1828         <return-value transfer-ownership="none">
1829           <doc xml:whitespace="preserve">The current frequency, or 0 on error.</doc>
1830           <type name="gulong" c:type="gulong"/>
1831         </return-value>
1832         <parameters>
1833           <parameter name="channel" transfer-ownership="none">
1834             <doc xml:whitespace="preserve">The #GstTunerChannel to retrieve the frequency from.</doc>
1835             <type name="TunerChannel" c:type="GstTunerChannel*"/>
1836           </parameter>
1837         </parameters>
1838       </method>
1839       <method name="get_norm"
1840               c:identifier="gst_tuner_get_norm"
1841               introspectable="0">
1842         <doc xml:whitespace="preserve">Get the current video norm from the given tuner object for the
1843 currently selected channel.</doc>
1844         <return-value>
1845           <doc xml:whitespace="preserve">the current norm.</doc>
1846           <type name="TunerNorm" c:type="GstTunerNorm*"/>
1847         </return-value>
1848       </method>
1849       <method name="list_channels" c:identifier="gst_tuner_list_channels">
1850         <doc xml:whitespace="preserve">Retrieve a #GList of #GstTunerChannels available
1851 (e.g. 'composite', 's-video', ...) from the given tuner object.
1852 owned by the GstTuner and must not be freed.</doc>
1853         <return-value transfer-ownership="none">
1854           <doc xml:whitespace="preserve">A list of channels available on this tuner. The list is</doc>
1855           <type name="GLib.List" c:type="GList*">
1856             <type name="gpointer" c:type="gpointer"/>
1857           </type>
1858         </return-value>
1859       </method>
1860       <method name="list_norms" c:identifier="gst_tuner_list_norms">
1861         <doc xml:whitespace="preserve">Retrieve a GList of available #GstTunerNorm settings for the currently
1862 tuned channel on the given tuner object.
1863 tuner object. The list is owned by the GstTuner and must not
1864 be freed.</doc>
1865         <return-value transfer-ownership="none">
1866           <doc xml:whitespace="preserve">A list of norms available on the current channel for this</doc>
1867           <type name="GLib.List" c:type="GList*">
1868             <type name="gpointer" c:type="gpointer"/>
1869           </type>
1870         </return-value>
1871       </method>
1872       <method name="norm_changed" c:identifier="gst_tuner_norm_changed">
1873         <doc xml:whitespace="preserve">Called by elements implementing the #GstTuner interface when the
1874 current norm changes. Fires the #GstTuner::norm-changed signal.</doc>
1875         <return-value transfer-ownership="none">
1876           <type name="none" c:type="void"/>
1877         </return-value>
1878         <parameters>
1879           <parameter name="norm" transfer-ownership="none">
1880             <doc xml:whitespace="preserve">A #GstTunerNorm instance</doc>
1881             <type name="TunerNorm" c:type="GstTunerNorm*"/>
1882           </parameter>
1883         </parameters>
1884       </method>
1885       <method name="set_channel" c:identifier="gst_tuner_set_channel">
1886         <doc xml:whitespace="preserve">Tunes the object to the given channel, which should be one of the
1887 channels returned by gst_tuner_list_channels().</doc>
1888         <return-value transfer-ownership="none">
1889           <type name="none" c:type="void"/>
1890         </return-value>
1891         <parameters>
1892           <parameter name="channel" transfer-ownership="none">
1893             <doc xml:whitespace="preserve">the channel to tune to.</doc>
1894             <type name="TunerChannel" c:type="GstTunerChannel*"/>
1895           </parameter>
1896         </parameters>
1897       </method>
1898       <method name="set_frequency" c:identifier="gst_tuner_set_frequency">
1899         <doc xml:whitespace="preserve">Sets a tuning frequency on the given tuner/channel. Note that this
1900 requires the given channel to be a "tuning" channel, which can be
1901 checked using GST_TUNER_CHANNEL_HAS_FLAG (), with the proper flag
1902 being GST_TUNER_CHANNEL_FREQUENCY.
1903 The frequency is in Hz, with minimum steps indicated by the 
1904 frequency_multiplicator provided in the #GstTunerChannel. The
1905 valid range is provided in the min_frequency and max_frequency properties
1906 of the #GstTunerChannel.</doc>
1907         <return-value transfer-ownership="none">
1908           <type name="none" c:type="void"/>
1909         </return-value>
1910         <parameters>
1911           <parameter name="channel" transfer-ownership="none">
1912             <doc xml:whitespace="preserve">The #GstTunerChannel to set the frequency on.</doc>
1913             <type name="TunerChannel" c:type="GstTunerChannel*"/>
1914           </parameter>
1915           <parameter name="frequency" transfer-ownership="none">
1916             <doc xml:whitespace="preserve">The frequency to tune in to.</doc>
1917             <type name="gulong" c:type="gulong"/>
1918           </parameter>
1919         </parameters>
1920       </method>
1921       <method name="set_norm" c:identifier="gst_tuner_set_norm">
1922         <doc xml:whitespace="preserve">Changes the video norm on this tuner to the given norm, which should be
1923 one of the norms returned by gst_tuner_list_norms().</doc>
1924         <return-value transfer-ownership="none">
1925           <type name="none" c:type="void"/>
1926         </return-value>
1927         <parameters>
1928           <parameter name="norm" transfer-ownership="none">
1929             <doc xml:whitespace="preserve">the norm to use for the current channel.</doc>
1930             <type name="TunerNorm" c:type="GstTunerNorm*"/>
1931           </parameter>
1932         </parameters>
1933       </method>
1934       <method name="signal_changed" c:identifier="gst_tuner_signal_changed">
1935         <doc xml:whitespace="preserve">Called by elements implementing the #GstTuner interface when the
1936 incoming signal strength changes. Fires the #GstTuner::signal-changed
1937 signal on the tuner and the #GstTunerChannel::signal-changed signal on 
1938 the channel.</doc>
1939         <return-value transfer-ownership="none">
1940           <type name="none" c:type="void"/>
1941         </return-value>
1942         <parameters>
1943           <parameter name="channel" transfer-ownership="none">
1944             <doc xml:whitespace="preserve">The current #GstTunerChannel</doc>
1945             <type name="TunerChannel" c:type="GstTunerChannel*"/>
1946           </parameter>
1947           <parameter name="signal" transfer-ownership="none">
1948             <doc xml:whitespace="preserve">The new signal strength</doc>
1949             <type name="gint" c:type="gint"/>
1950           </parameter>
1951         </parameters>
1952       </method>
1953       <method name="signal_strength" c:identifier="gst_tuner_signal_strength">
1954         <doc xml:whitespace="preserve">Get the strength of the signal on this channel. Note that this
1955 requires the current channel to be a "tuning" channel, i.e. a
1956 channel on which frequency can be set. This can be checked using
1957 GST_TUNER_CHANNEL_HAS_FLAG (), and the appropriate flag to check
1958 for is GST_TUNER_CHANNEL_FREQUENCY.
1959 The valid range of the signal strength is indicated in the 
1960 min_signal and max_signal properties of the #GstTunerChannel.</doc>
1961         <return-value transfer-ownership="none">
1962           <doc xml:whitespace="preserve">Signal strength, or 0 on error.</doc>
1963           <type name="gint" c:type="gint"/>
1964         </return-value>
1965         <parameters>
1966           <parameter name="channel" transfer-ownership="none">
1967             <doc xml:whitespace="preserve">the #GstTunerChannel to get the signal strength from.</doc>
1968             <type name="TunerChannel" c:type="GstTunerChannel*"/>
1969           </parameter>
1970         </parameters>
1971       </method>
1972       <glib:signal name="channel-changed">
1973         <doc xml:whitespace="preserve">Reports that the current #GstTunerChannel has changed.</doc>
1974         <return-value transfer-ownership="none">
1975           <type name="none"/>
1976         </return-value>
1977         <parameters>
1978           <parameter name="object" transfer-ownership="none">
1979             <doc xml:whitespace="preserve">The new configured channel.</doc>
1980             <type name="TunerChannel"/>
1981           </parameter>
1982         </parameters>
1983       </glib:signal>
1984       <glib:signal name="frequency-changed">
1985         <doc xml:whitespace="preserve">Reports that the current frequency has changed.</doc>
1986         <return-value transfer-ownership="none">
1987           <type name="none"/>
1988         </return-value>
1989         <parameters>
1990           <parameter name="object" transfer-ownership="none">
1991             <type name="TunerChannel"/>
1992           </parameter>
1993           <parameter name="p0" transfer-ownership="none">
1994             <type name="gulong"/>
1995           </parameter>
1996         </parameters>
1997       </glib:signal>
1998       <glib:signal name="norm-changed">
1999         <doc xml:whitespace="preserve">Reports that the current #GstTunerNorm has changed.</doc>
2000         <return-value transfer-ownership="none">
2001           <type name="none"/>
2002         </return-value>
2003         <parameters>
2004           <parameter name="object" transfer-ownership="none">
2005             <doc xml:whitespace="preserve">The new configured norm.</doc>
2006             <type name="TunerNorm"/>
2007           </parameter>
2008         </parameters>
2009       </glib:signal>
2010       <glib:signal name="signal-changed">
2011         <doc xml:whitespace="preserve">Reports that the signal strength has changed.</doc>
2012         <return-value transfer-ownership="none">
2013           <type name="none"/>
2014         </return-value>
2015         <parameters>
2016           <parameter name="object" transfer-ownership="none">
2017             <doc xml:whitespace="preserve">The current #GstTunerChannel</doc>
2018             <type name="TunerChannel"/>
2019           </parameter>
2020           <parameter name="p0" transfer-ownership="none">
2021             <doc xml:whitespace="preserve">The new signal strength (an integer)</doc>
2022             <type name="gint"/>
2023           </parameter>
2024         </parameters>
2025       </glib:signal>
2026     </interface>
2027     <class name="TunerChannel"
2028            c:symbol-prefix="tuner_channel"
2029            c:type="GstTunerChannel"
2030            parent="GObject.Object"
2031            glib:type-name="GstTunerChannel"
2032            glib:get-type="gst_tuner_channel_get_type"
2033            glib:type-struct="TunerChannelClass">
2034       <field name="parent">
2035         <type name="GObject.Object" c:type="GObject"/>
2036       </field>
2037       <field name="label">
2038         <type name="utf8" c:type="gchar*"/>
2039       </field>
2040       <field name="flags">
2041         <type name="TunerChannelFlags" c:type="GstTunerChannelFlags"/>
2042       </field>
2043       <field name="freq_multiplicator">
2044         <type name="gfloat" c:type="gfloat"/>
2045       </field>
2046       <field name="min_frequency">
2047         <type name="gulong" c:type="gulong"/>
2048       </field>
2049       <field name="max_frequency">
2050         <type name="gulong" c:type="gulong"/>
2051       </field>
2052       <field name="min_signal">
2053         <type name="gint" c:type="gint"/>
2054       </field>
2055       <field name="max_signal">
2056         <type name="gint" c:type="gint"/>
2057       </field>
2058       <glib:signal name="frequency-changed">
2059         <doc xml:whitespace="preserve">Reports that the current frequency has changed.</doc>
2060         <return-value transfer-ownership="none">
2061           <type name="none"/>
2062         </return-value>
2063         <parameters>
2064           <parameter name="object" transfer-ownership="none">
2065             <doc xml:whitespace="preserve">The new frequency (an unsigned long)</doc>
2066             <type name="gulong"/>
2067           </parameter>
2068         </parameters>
2069       </glib:signal>
2070       <glib:signal name="signal-changed">
2071         <doc xml:whitespace="preserve">Reports that the signal strength has changed.</doc>
2072         <return-value transfer-ownership="none">
2073           <type name="none"/>
2074         </return-value>
2075         <parameters>
2076           <parameter name="object" transfer-ownership="none">
2077             <doc xml:whitespace="preserve">The new signal strength (an integer)</doc>
2078             <type name="gint"/>
2079           </parameter>
2080         </parameters>
2081       </glib:signal>
2082     </class>
2083     <record name="TunerChannelClass"
2084             c:type="GstTunerChannelClass"
2085             glib:is-gtype-struct-for="TunerChannel">
2086       <field name="parent">
2087         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
2088       </field>
2089       <field name="frequency_changed">
2090         <callback name="frequency_changed">
2091           <return-value transfer-ownership="none">
2092             <type name="none" c:type="void"/>
2093           </return-value>
2094           <parameters>
2095             <parameter name="channel" transfer-ownership="none">
2096               <type name="TunerChannel" c:type="GstTunerChannel*"/>
2097             </parameter>
2098             <parameter name="frequency" transfer-ownership="none">
2099               <type name="gulong" c:type="gulong"/>
2100             </parameter>
2101           </parameters>
2102         </callback>
2103       </field>
2104       <field name="signal_changed">
2105         <callback name="signal_changed">
2106           <return-value transfer-ownership="none">
2107             <type name="none" c:type="void"/>
2108           </return-value>
2109           <parameters>
2110             <parameter name="channel" transfer-ownership="none">
2111               <type name="TunerChannel" c:type="GstTunerChannel*"/>
2112             </parameter>
2113             <parameter name="signal" transfer-ownership="none">
2114               <type name="gint" c:type="gint"/>
2115             </parameter>
2116           </parameters>
2117         </callback>
2118       </field>
2119       <field name="_gst_reserved">
2120         <array zero-terminated="0" c:type="gpointer" fixed-size="4">
2121           <type name="gpointer" c:type="gpointer"/>
2122         </array>
2123       </field>
2124     </record>
2125     <bitfield name="TunerChannelFlags"
2126               glib:type-name="GstTunerChannelFlags"
2127               glib:get-type="gst_tuner_channel_flags_get_type"
2128               c:type="GstTunerChannelFlags">
2129       <doc xml:whitespace="preserve">An enumeration for flags indicating the available capabilities
2130 of a #GstTunerChannel.</doc>
2131       <member name="input"
2132               value="1"
2133               c:identifier="GST_TUNER_CHANNEL_INPUT"
2134               glib:nick="input"/>
2135       <member name="output"
2136               value="2"
2137               c:identifier="GST_TUNER_CHANNEL_OUTPUT"
2138               glib:nick="output"/>
2139       <member name="frequency"
2140               value="4"
2141               c:identifier="GST_TUNER_CHANNEL_FREQUENCY"
2142               glib:nick="frequency"/>
2143       <member name="audio"
2144               value="8"
2145               c:identifier="GST_TUNER_CHANNEL_AUDIO"
2146               glib:nick="audio"/>
2147     </bitfield>
2148     <record name="TunerClass" c:type="GstTunerClass">
2149       <field name="klass" writable="1">
2150         <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
2151       </field>
2152       <field name="list_channels">
2153         <callback name="list_channels">
2154           <return-value transfer-ownership="none">
2155             <type name="GLib.List" c:type="GList*">
2156               <type name="gpointer" c:type="gpointer"/>
2157             </type>
2158           </return-value>
2159           <parameters>
2160             <parameter name="tuner" transfer-ownership="none">
2161               <type name="Tuner" c:type="GstTuner*"/>
2162             </parameter>
2163           </parameters>
2164         </callback>
2165       </field>
2166       <field name="set_channel">
2167         <callback name="set_channel">
2168           <return-value transfer-ownership="none">
2169             <type name="none" c:type="void"/>
2170           </return-value>
2171           <parameters>
2172             <parameter name="tuner" transfer-ownership="none">
2173               <type name="Tuner" c:type="GstTuner*"/>
2174             </parameter>
2175             <parameter name="channel" transfer-ownership="none">
2176               <type name="TunerChannel" c:type="GstTunerChannel*"/>
2177             </parameter>
2178           </parameters>
2179         </callback>
2180       </field>
2181       <field name="get_channel" introspectable="0">
2182         <callback name="get_channel" introspectable="0">
2183           <return-value>
2184             <type name="TunerChannel" c:type="GstTunerChannel*"/>
2185           </return-value>
2186           <parameters>
2187             <parameter name="tuner" transfer-ownership="none">
2188               <type name="Tuner" c:type="GstTuner*"/>
2189             </parameter>
2190           </parameters>
2191         </callback>
2192       </field>
2193       <field name="list_norms">
2194         <callback name="list_norms">
2195           <return-value transfer-ownership="none">
2196             <type name="GLib.List" c:type="GList*">
2197               <type name="gpointer" c:type="gpointer"/>
2198             </type>
2199           </return-value>
2200           <parameters>
2201             <parameter name="tuner" transfer-ownership="none">
2202               <type name="Tuner" c:type="GstTuner*"/>
2203             </parameter>
2204           </parameters>
2205         </callback>
2206       </field>
2207       <field name="set_norm">
2208         <callback name="set_norm">
2209           <return-value transfer-ownership="none">
2210             <type name="none" c:type="void"/>
2211           </return-value>
2212           <parameters>
2213             <parameter name="tuner" transfer-ownership="none">
2214               <type name="Tuner" c:type="GstTuner*"/>
2215             </parameter>
2216             <parameter name="norm" transfer-ownership="none">
2217               <type name="TunerNorm" c:type="GstTunerNorm*"/>
2218             </parameter>
2219           </parameters>
2220         </callback>
2221       </field>
2222       <field name="get_norm" introspectable="0">
2223         <callback name="get_norm" introspectable="0">
2224           <return-value>
2225             <type name="TunerNorm" c:type="GstTunerNorm*"/>
2226           </return-value>
2227           <parameters>
2228             <parameter name="tuner" transfer-ownership="none">
2229               <type name="Tuner" c:type="GstTuner*"/>
2230             </parameter>
2231           </parameters>
2232         </callback>
2233       </field>
2234       <field name="set_frequency">
2235         <callback name="set_frequency">
2236           <return-value transfer-ownership="none">
2237             <type name="none" c:type="void"/>
2238           </return-value>
2239           <parameters>
2240             <parameter name="tuner" transfer-ownership="none">
2241               <type name="Tuner" c:type="GstTuner*"/>
2242             </parameter>
2243             <parameter name="channel" transfer-ownership="none">
2244               <type name="TunerChannel" c:type="GstTunerChannel*"/>
2245             </parameter>
2246             <parameter name="frequency" transfer-ownership="none">
2247               <type name="gulong" c:type="gulong"/>
2248             </parameter>
2249           </parameters>
2250         </callback>
2251       </field>
2252       <field name="get_frequency">
2253         <callback name="get_frequency">
2254           <return-value transfer-ownership="none">
2255             <type name="gulong" c:type="gulong"/>
2256           </return-value>
2257           <parameters>
2258             <parameter name="tuner" transfer-ownership="none">
2259               <type name="Tuner" c:type="GstTuner*"/>
2260             </parameter>
2261             <parameter name="channel" transfer-ownership="none">
2262               <type name="TunerChannel" c:type="GstTunerChannel*"/>
2263             </parameter>
2264           </parameters>
2265         </callback>
2266       </field>
2267       <field name="signal_strength">
2268         <callback name="signal_strength">
2269           <return-value transfer-ownership="none">
2270             <type name="gint" c:type="gint"/>
2271           </return-value>
2272           <parameters>
2273             <parameter name="tuner" transfer-ownership="none">
2274               <type name="Tuner" c:type="GstTuner*"/>
2275             </parameter>
2276             <parameter name="channel" transfer-ownership="none">
2277               <type name="TunerChannel" c:type="GstTunerChannel*"/>
2278             </parameter>
2279           </parameters>
2280         </callback>
2281       </field>
2282       <field name="channel_changed">
2283         <callback name="channel_changed">
2284           <return-value transfer-ownership="none">
2285             <type name="none" c:type="void"/>
2286           </return-value>
2287           <parameters>
2288             <parameter name="tuner" transfer-ownership="none">
2289               <type name="Tuner" c:type="GstTuner*"/>
2290             </parameter>
2291             <parameter name="channel" transfer-ownership="none">
2292               <type name="TunerChannel" c:type="GstTunerChannel*"/>
2293             </parameter>
2294           </parameters>
2295         </callback>
2296       </field>
2297       <field name="norm_changed">
2298         <callback name="norm_changed">
2299           <return-value transfer-ownership="none">
2300             <type name="none" c:type="void"/>
2301           </return-value>
2302           <parameters>
2303             <parameter name="tuner" transfer-ownership="none">
2304               <type name="Tuner" c:type="GstTuner*"/>
2305             </parameter>
2306             <parameter name="norm" transfer-ownership="none">
2307               <type name="TunerNorm" c:type="GstTunerNorm*"/>
2308             </parameter>
2309           </parameters>
2310         </callback>
2311       </field>
2312       <field name="frequency_changed">
2313         <callback name="frequency_changed">
2314           <return-value transfer-ownership="none">
2315             <type name="none" c:type="void"/>
2316           </return-value>
2317           <parameters>
2318             <parameter name="tuner" transfer-ownership="none">
2319               <type name="Tuner" c:type="GstTuner*"/>
2320             </parameter>
2321             <parameter name="channel" transfer-ownership="none">
2322               <type name="TunerChannel" c:type="GstTunerChannel*"/>
2323             </parameter>
2324             <parameter name="frequency" transfer-ownership="none">
2325               <type name="gulong" c:type="gulong"/>
2326             </parameter>
2327           </parameters>
2328         </callback>
2329       </field>
2330       <field name="signal_changed">
2331         <callback name="signal_changed">
2332           <return-value transfer-ownership="none">
2333             <type name="none" c:type="void"/>
2334           </return-value>
2335           <parameters>
2336             <parameter name="tuner" transfer-ownership="none">
2337               <type name="Tuner" c:type="GstTuner*"/>
2338             </parameter>
2339             <parameter name="channel" transfer-ownership="none">
2340               <type name="TunerChannel" c:type="GstTunerChannel*"/>
2341             </parameter>
2342             <parameter name="signal" transfer-ownership="none">
2343               <type name="gint" c:type="gint"/>
2344             </parameter>
2345           </parameters>
2346         </callback>
2347       </field>
2348       <field name="_gst_reserved" writable="1">
2349         <array zero-terminated="0" c:type="gpointer" fixed-size="4">
2350           <type name="gpointer" c:type="gpointer"/>
2351         </array>
2352       </field>
2353     </record>
2354     <class name="TunerNorm"
2355            c:symbol-prefix="tuner_norm"
2356            c:type="GstTunerNorm"
2357            parent="GObject.Object"
2358            glib:type-name="GstTunerNorm"
2359            glib:get-type="gst_tuner_norm_get_type"
2360            glib:type-struct="TunerNormClass">
2361       <field name="parent">
2362         <type name="GObject.Object" c:type="GObject"/>
2363       </field>
2364       <field name="label">
2365         <type name="utf8" c:type="gchar*"/>
2366       </field>
2367       <field name="framerate">
2368         <type name="GObject.Value" c:type="GValue"/>
2369       </field>
2370     </class>
2371     <record name="TunerNormClass"
2372             c:type="GstTunerNormClass"
2373             glib:is-gtype-struct-for="TunerNorm">
2374       <field name="parent">
2375         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
2376       </field>
2377       <field name="_gst_reserved">
2378         <array zero-terminated="0" c:type="gpointer" fixed-size="4">
2379           <type name="gpointer" c:type="gpointer"/>
2380         </array>
2381       </field>
2382     </record>
2383     <interface name="VideoOrientation"
2384                c:symbol-prefix="video_orientation"
2385                c:type="GstVideoOrientation"
2386                glib:type-name="GstVideoOrientation"
2387                glib:get-type="gst_video_orientation_get_type"
2388                glib:type-struct="VideoOrientationInterface">
2389       <doc xml:whitespace="preserve">Opaque #GstVideoOrientation data structure.</doc>
2390       <prerequisite name="Gst.Element"/>
2391       <prerequisite name="Gst.ImplementsInterface"/>
2392       <virtual-method name="get_hcenter"
2393                       invoker="get_hcenter"
2394                       version="0.10.11">
2395         <doc xml:whitespace="preserve">Get the horizontal centering offset from the given object.</doc>
2396         <return-value transfer-ownership="none">
2397           <doc xml:whitespace="preserve">%TRUE in case the element supports centering</doc>
2398           <type name="gboolean" c:type="gboolean"/>
2399         </return-value>
2400         <parameters>
2401           <parameter name="center" transfer-ownership="none">
2402             <doc xml:whitespace="preserve">return location for the result</doc>
2403             <type name="gint" c:type="gint*"/>
2404           </parameter>
2405         </parameters>
2406       </virtual-method>
2407       <virtual-method name="get_hflip" invoker="get_hflip" version="0.10.11">
2408         <doc xml:whitespace="preserve">Get the horizontal flipping state (%TRUE for flipped) from the given object.</doc>
2409         <return-value transfer-ownership="none">
2410           <doc xml:whitespace="preserve">%TRUE in case the element supports flipping</doc>
2411           <type name="gboolean" c:type="gboolean"/>
2412         </return-value>
2413         <parameters>
2414           <parameter name="flip" transfer-ownership="none">
2415             <doc xml:whitespace="preserve">return location for the result</doc>
2416             <type name="gboolean" c:type="gboolean*"/>
2417           </parameter>
2418         </parameters>
2419       </virtual-method>
2420       <virtual-method name="get_vcenter"
2421                       invoker="get_vcenter"
2422                       version="0.10.11">
2423         <doc xml:whitespace="preserve">Get the vertical centering offset from the given object.</doc>
2424         <return-value transfer-ownership="none">
2425           <doc xml:whitespace="preserve">%TRUE in case the element supports centering</doc>
2426           <type name="gboolean" c:type="gboolean"/>
2427         </return-value>
2428         <parameters>
2429           <parameter name="center" transfer-ownership="none">
2430             <doc xml:whitespace="preserve">return location for the result</doc>
2431             <type name="gint" c:type="gint*"/>
2432           </parameter>
2433         </parameters>
2434       </virtual-method>
2435       <virtual-method name="get_vflip" invoker="get_vflip" version="0.10.11">
2436         <doc xml:whitespace="preserve">Get the vertical flipping state (%TRUE for flipped) from the given object.</doc>
2437         <return-value transfer-ownership="none">
2438           <doc xml:whitespace="preserve">%TRUE in case the element supports flipping</doc>
2439           <type name="gboolean" c:type="gboolean"/>
2440         </return-value>
2441         <parameters>
2442           <parameter name="flip" transfer-ownership="none">
2443             <doc xml:whitespace="preserve">return location for the result</doc>
2444             <type name="gboolean" c:type="gboolean*"/>
2445           </parameter>
2446         </parameters>
2447       </virtual-method>
2448       <virtual-method name="set_hcenter"
2449                       invoker="set_hcenter"
2450                       version="0.10.11">
2451         <doc xml:whitespace="preserve">Set the horizontal centering offset for the given object.</doc>
2452         <return-value transfer-ownership="none">
2453           <doc xml:whitespace="preserve">%TRUE in case the element supports centering</doc>
2454           <type name="gboolean" c:type="gboolean"/>
2455         </return-value>
2456         <parameters>
2457           <parameter name="center" transfer-ownership="none">
2458             <doc xml:whitespace="preserve">centering offset</doc>
2459             <type name="gint" c:type="gint"/>
2460           </parameter>
2461         </parameters>
2462       </virtual-method>
2463       <virtual-method name="set_hflip" invoker="set_hflip" version="0.10.11">
2464         <doc xml:whitespace="preserve">Set the horizontal flipping state (%TRUE for flipped) for the given object.</doc>
2465         <return-value transfer-ownership="none">
2466           <doc xml:whitespace="preserve">%TRUE in case the element supports flipping</doc>
2467           <type name="gboolean" c:type="gboolean"/>
2468         </return-value>
2469         <parameters>
2470           <parameter name="flip" transfer-ownership="none">
2471             <doc xml:whitespace="preserve">use flipping</doc>
2472             <type name="gboolean" c:type="gboolean"/>
2473           </parameter>
2474         </parameters>
2475       </virtual-method>
2476       <virtual-method name="set_vcenter"
2477                       invoker="set_vcenter"
2478                       version="0.10.11">
2479         <doc xml:whitespace="preserve">Set the vertical centering offset for the given object.</doc>
2480         <return-value transfer-ownership="none">
2481           <doc xml:whitespace="preserve">%TRUE in case the element supports centering</doc>
2482           <type name="gboolean" c:type="gboolean"/>
2483         </return-value>
2484         <parameters>
2485           <parameter name="center" transfer-ownership="none">
2486             <doc xml:whitespace="preserve">centering offset</doc>
2487             <type name="gint" c:type="gint"/>
2488           </parameter>
2489         </parameters>
2490       </virtual-method>
2491       <virtual-method name="set_vflip" invoker="set_vflip" version="0.10.11">
2492         <doc xml:whitespace="preserve">Set the vertical flipping state (%TRUE for flipped) for the given object.</doc>
2493         <return-value transfer-ownership="none">
2494           <doc xml:whitespace="preserve">%TRUE in case the element supports flipping</doc>
2495           <type name="gboolean" c:type="gboolean"/>
2496         </return-value>
2497         <parameters>
2498           <parameter name="flip" transfer-ownership="none">
2499             <doc xml:whitespace="preserve">use flipping</doc>
2500             <type name="gboolean" c:type="gboolean"/>
2501           </parameter>
2502         </parameters>
2503       </virtual-method>
2504       <method name="get_hcenter"
2505               c:identifier="gst_video_orientation_get_hcenter"
2506               version="0.10.11">
2507         <doc xml:whitespace="preserve">Get the horizontal centering offset from the given object.</doc>
2508         <return-value transfer-ownership="none">
2509           <doc xml:whitespace="preserve">%TRUE in case the element supports centering</doc>
2510           <type name="gboolean" c:type="gboolean"/>
2511         </return-value>
2512         <parameters>
2513           <parameter name="center" transfer-ownership="none">
2514             <doc xml:whitespace="preserve">return location for the result</doc>
2515             <type name="gint" c:type="gint*"/>
2516           </parameter>
2517         </parameters>
2518       </method>
2519       <method name="get_hflip"
2520               c:identifier="gst_video_orientation_get_hflip"
2521               version="0.10.11">
2522         <doc xml:whitespace="preserve">Get the horizontal flipping state (%TRUE for flipped) from the given object.</doc>
2523         <return-value transfer-ownership="none">
2524           <doc xml:whitespace="preserve">%TRUE in case the element supports flipping</doc>
2525           <type name="gboolean" c:type="gboolean"/>
2526         </return-value>
2527         <parameters>
2528           <parameter name="flip" transfer-ownership="none">
2529             <doc xml:whitespace="preserve">return location for the result</doc>
2530             <type name="gboolean" c:type="gboolean*"/>
2531           </parameter>
2532         </parameters>
2533       </method>
2534       <method name="get_vcenter"
2535               c:identifier="gst_video_orientation_get_vcenter"
2536               version="0.10.11">
2537         <doc xml:whitespace="preserve">Get the vertical centering offset from the given object.</doc>
2538         <return-value transfer-ownership="none">
2539           <doc xml:whitespace="preserve">%TRUE in case the element supports centering</doc>
2540           <type name="gboolean" c:type="gboolean"/>
2541         </return-value>
2542         <parameters>
2543           <parameter name="center" transfer-ownership="none">
2544             <doc xml:whitespace="preserve">return location for the result</doc>
2545             <type name="gint" c:type="gint*"/>
2546           </parameter>
2547         </parameters>
2548       </method>
2549       <method name="get_vflip"
2550               c:identifier="gst_video_orientation_get_vflip"
2551               version="0.10.11">
2552         <doc xml:whitespace="preserve">Get the vertical flipping state (%TRUE for flipped) from the given object.</doc>
2553         <return-value transfer-ownership="none">
2554           <doc xml:whitespace="preserve">%TRUE in case the element supports flipping</doc>
2555           <type name="gboolean" c:type="gboolean"/>
2556         </return-value>
2557         <parameters>
2558           <parameter name="flip" transfer-ownership="none">
2559             <doc xml:whitespace="preserve">return location for the result</doc>
2560             <type name="gboolean" c:type="gboolean*"/>
2561           </parameter>
2562         </parameters>
2563       </method>
2564       <method name="set_hcenter"
2565               c:identifier="gst_video_orientation_set_hcenter"
2566               version="0.10.11">
2567         <doc xml:whitespace="preserve">Set the horizontal centering offset for the given object.</doc>
2568         <return-value transfer-ownership="none">
2569           <doc xml:whitespace="preserve">%TRUE in case the element supports centering</doc>
2570           <type name="gboolean" c:type="gboolean"/>
2571         </return-value>
2572         <parameters>
2573           <parameter name="center" transfer-ownership="none">
2574             <doc xml:whitespace="preserve">centering offset</doc>
2575             <type name="gint" c:type="gint"/>
2576           </parameter>
2577         </parameters>
2578       </method>
2579       <method name="set_hflip"
2580               c:identifier="gst_video_orientation_set_hflip"
2581               version="0.10.11">
2582         <doc xml:whitespace="preserve">Set the horizontal flipping state (%TRUE for flipped) for the given object.</doc>
2583         <return-value transfer-ownership="none">
2584           <doc xml:whitespace="preserve">%TRUE in case the element supports flipping</doc>
2585           <type name="gboolean" c:type="gboolean"/>
2586         </return-value>
2587         <parameters>
2588           <parameter name="flip" transfer-ownership="none">
2589             <doc xml:whitespace="preserve">use flipping</doc>
2590             <type name="gboolean" c:type="gboolean"/>
2591           </parameter>
2592         </parameters>
2593       </method>
2594       <method name="set_vcenter"
2595               c:identifier="gst_video_orientation_set_vcenter"
2596               version="0.10.11">
2597         <doc xml:whitespace="preserve">Set the vertical centering offset for the given object.</doc>
2598         <return-value transfer-ownership="none">
2599           <doc xml:whitespace="preserve">%TRUE in case the element supports centering</doc>
2600           <type name="gboolean" c:type="gboolean"/>
2601         </return-value>
2602         <parameters>
2603           <parameter name="center" transfer-ownership="none">
2604             <doc xml:whitespace="preserve">centering offset</doc>
2605             <type name="gint" c:type="gint"/>
2606           </parameter>
2607         </parameters>
2608       </method>
2609       <method name="set_vflip"
2610               c:identifier="gst_video_orientation_set_vflip"
2611               version="0.10.11">
2612         <doc xml:whitespace="preserve">Set the vertical flipping state (%TRUE for flipped) for the given object.</doc>
2613         <return-value transfer-ownership="none">
2614           <doc xml:whitespace="preserve">%TRUE in case the element supports flipping</doc>
2615           <type name="gboolean" c:type="gboolean"/>
2616         </return-value>
2617         <parameters>
2618           <parameter name="flip" transfer-ownership="none">
2619             <doc xml:whitespace="preserve">use flipping</doc>
2620             <type name="gboolean" c:type="gboolean"/>
2621           </parameter>
2622         </parameters>
2623       </method>
2624     </interface>
2625     <record name="VideoOrientationInterface"
2626             c:type="GstVideoOrientationInterface"
2627             glib:is-gtype-struct-for="VideoOrientation">
2628       <doc xml:whitespace="preserve">#GstVideoOrientationInterface interface.</doc>
2629       <field name="parent">
2630         <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
2631       </field>
2632       <field name="get_hflip">
2633         <callback name="get_hflip">
2634           <return-value transfer-ownership="none">
2635             <doc xml:whitespace="preserve">%TRUE in case the element supports flipping</doc>
2636             <type name="gboolean" c:type="gboolean"/>
2637           </return-value>
2638           <parameters>
2639             <parameter name="video_orientation" transfer-ownership="none">
2640               <type name="VideoOrientation" c:type="GstVideoOrientation*"/>
2641             </parameter>
2642             <parameter name="flip" transfer-ownership="none">
2643               <doc xml:whitespace="preserve">return location for the result</doc>
2644               <type name="gboolean" c:type="gboolean*"/>
2645             </parameter>
2646           </parameters>
2647         </callback>
2648       </field>
2649       <field name="get_vflip">
2650         <callback name="get_vflip">
2651           <return-value transfer-ownership="none">
2652             <doc xml:whitespace="preserve">%TRUE in case the element supports flipping</doc>
2653             <type name="gboolean" c:type="gboolean"/>
2654           </return-value>
2655           <parameters>
2656             <parameter name="video_orientation" transfer-ownership="none">
2657               <type name="VideoOrientation" c:type="GstVideoOrientation*"/>
2658             </parameter>
2659             <parameter name="flip" transfer-ownership="none">
2660               <doc xml:whitespace="preserve">return location for the result</doc>
2661               <type name="gboolean" c:type="gboolean*"/>
2662             </parameter>
2663           </parameters>
2664         </callback>
2665       </field>
2666       <field name="get_hcenter">
2667         <callback name="get_hcenter">
2668           <return-value transfer-ownership="none">
2669             <doc xml:whitespace="preserve">%TRUE in case the element supports centering</doc>
2670             <type name="gboolean" c:type="gboolean"/>
2671           </return-value>
2672           <parameters>
2673             <parameter name="video_orientation" transfer-ownership="none">
2674               <type name="VideoOrientation" c:type="GstVideoOrientation*"/>
2675             </parameter>
2676             <parameter name="center" transfer-ownership="none">
2677               <doc xml:whitespace="preserve">return location for the result</doc>
2678               <type name="gint" c:type="gint*"/>
2679             </parameter>
2680           </parameters>
2681         </callback>
2682       </field>
2683       <field name="get_vcenter">
2684         <callback name="get_vcenter">
2685           <return-value transfer-ownership="none">
2686             <doc xml:whitespace="preserve">%TRUE in case the element supports centering</doc>
2687             <type name="gboolean" c:type="gboolean"/>
2688           </return-value>
2689           <parameters>
2690             <parameter name="video_orientation" transfer-ownership="none">
2691               <type name="VideoOrientation" c:type="GstVideoOrientation*"/>
2692             </parameter>
2693             <parameter name="center" transfer-ownership="none">
2694               <doc xml:whitespace="preserve">return location for the result</doc>
2695               <type name="gint" c:type="gint*"/>
2696             </parameter>
2697           </parameters>
2698         </callback>
2699       </field>
2700       <field name="set_hflip">
2701         <callback name="set_hflip">
2702           <return-value transfer-ownership="none">
2703             <doc xml:whitespace="preserve">%TRUE in case the element supports flipping</doc>
2704             <type name="gboolean" c:type="gboolean"/>
2705           </return-value>
2706           <parameters>
2707             <parameter name="video_orientation" transfer-ownership="none">
2708               <type name="VideoOrientation" c:type="GstVideoOrientation*"/>
2709             </parameter>
2710             <parameter name="flip" transfer-ownership="none">
2711               <doc xml:whitespace="preserve">use flipping</doc>
2712               <type name="gboolean" c:type="gboolean"/>
2713             </parameter>
2714           </parameters>
2715         </callback>
2716       </field>
2717       <field name="set_vflip">
2718         <callback name="set_vflip">
2719           <return-value transfer-ownership="none">
2720             <doc xml:whitespace="preserve">%TRUE in case the element supports flipping</doc>
2721             <type name="gboolean" c:type="gboolean"/>
2722           </return-value>
2723           <parameters>
2724             <parameter name="video_orientation" transfer-ownership="none">
2725               <type name="VideoOrientation" c:type="GstVideoOrientation*"/>
2726             </parameter>
2727             <parameter name="flip" transfer-ownership="none">
2728               <doc xml:whitespace="preserve">use flipping</doc>
2729               <type name="gboolean" c:type="gboolean"/>
2730             </parameter>
2731           </parameters>
2732         </callback>
2733       </field>
2734       <field name="set_hcenter">
2735         <callback name="set_hcenter">
2736           <return-value transfer-ownership="none">
2737             <doc xml:whitespace="preserve">%TRUE in case the element supports centering</doc>
2738             <type name="gboolean" c:type="gboolean"/>
2739           </return-value>
2740           <parameters>
2741             <parameter name="video_orientation" transfer-ownership="none">
2742               <type name="VideoOrientation" c:type="GstVideoOrientation*"/>
2743             </parameter>
2744             <parameter name="center" transfer-ownership="none">
2745               <doc xml:whitespace="preserve">centering offset</doc>
2746               <type name="gint" c:type="gint"/>
2747             </parameter>
2748           </parameters>
2749         </callback>
2750       </field>
2751       <field name="set_vcenter">
2752         <callback name="set_vcenter">
2753           <return-value transfer-ownership="none">
2754             <doc xml:whitespace="preserve">%TRUE in case the element supports centering</doc>
2755             <type name="gboolean" c:type="gboolean"/>
2756           </return-value>
2757           <parameters>
2758             <parameter name="video_orientation" transfer-ownership="none">
2759               <type name="VideoOrientation" c:type="GstVideoOrientation*"/>
2760             </parameter>
2761             <parameter name="center" transfer-ownership="none">
2762               <doc xml:whitespace="preserve">centering offset</doc>
2763               <type name="gint" c:type="gint"/>
2764             </parameter>
2765           </parameters>
2766         </callback>
2767       </field>
2768       <field name="_gst_reserved" readable="0" private="1">
2769         <array zero-terminated="0" c:type="gpointer" fixed-size="4">
2770           <type name="gpointer" c:type="gpointer"/>
2771         </array>
2772       </field>
2773     </record>
2774     <interface name="XOverlay"
2775                c:symbol-prefix="x_overlay"
2776                c:type="GstXOverlay"
2777                glib:type-name="GstXOverlay"
2778                glib:get-type="gst_x_overlay_get_type">
2779       <doc xml:whitespace="preserve">Opaque #GstXOverlay data structure.</doc>
2780       <prerequisite name="Gst.Element"/>
2781       <prerequisite name="Gst.ImplementsInterface"/>
2782     </interface>
2783     <record name="XOverlayClass" c:type="GstXOverlayClass">
2784       <doc xml:whitespace="preserve">#GstXOverlay interface</doc>
2785       <field name="klass" writable="1">
2786         <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
2787       </field>
2788       <field name="set_xwindow_id">
2789         <callback name="set_xwindow_id">
2790           <return-value transfer-ownership="none">
2791             <type name="none" c:type="void"/>
2792           </return-value>
2793           <parameters>
2794             <parameter name="overlay" transfer-ownership="none">
2795               <type name="XOverlay" c:type="GstXOverlay*"/>
2796             </parameter>
2797             <parameter name="xwindow_id" transfer-ownership="none">
2798               <type name="gulong" c:type="gulong"/>
2799             </parameter>
2800           </parameters>
2801         </callback>
2802       </field>
2803       <field name="expose">
2804         <callback name="expose">
2805           <return-value transfer-ownership="none">
2806             <type name="none" c:type="void"/>
2807           </return-value>
2808           <parameters>
2809             <parameter name="overlay" transfer-ownership="none">
2810               <type name="XOverlay" c:type="GstXOverlay*"/>
2811             </parameter>
2812           </parameters>
2813         </callback>
2814       </field>
2815       <field name="handle_events">
2816         <callback name="handle_events">
2817           <return-value transfer-ownership="none">
2818             <type name="none" c:type="void"/>
2819           </return-value>
2820           <parameters>
2821             <parameter name="overlay" transfer-ownership="none">
2822               <type name="XOverlay" c:type="GstXOverlay*"/>
2823             </parameter>
2824             <parameter name="handle_events" transfer-ownership="none">
2825               <type name="gboolean" c:type="gboolean"/>
2826             </parameter>
2827           </parameters>
2828         </callback>
2829       </field>
2830       <field name="set_render_rectangle">
2831         <callback name="set_render_rectangle">
2832           <return-value transfer-ownership="none">
2833             <type name="none" c:type="void"/>
2834           </return-value>
2835           <parameters>
2836             <parameter name="overlay" transfer-ownership="none">
2837               <type name="XOverlay" c:type="GstXOverlay*"/>
2838             </parameter>
2839             <parameter name="x" transfer-ownership="none">
2840               <type name="gint" c:type="gint"/>
2841             </parameter>
2842             <parameter name="y" transfer-ownership="none">
2843               <type name="gint" c:type="gint"/>
2844             </parameter>
2845             <parameter name="width" transfer-ownership="none">
2846               <type name="gint" c:type="gint"/>
2847             </parameter>
2848             <parameter name="height" transfer-ownership="none">
2849               <type name="gint" c:type="gint"/>
2850             </parameter>
2851           </parameters>
2852         </callback>
2853       </field>
2854       <field name="set_window_handle" introspectable="0">
2855         <callback name="set_window_handle" introspectable="0">
2856           <return-value transfer-ownership="none">
2857             <type name="none" c:type="void"/>
2858           </return-value>
2859           <parameters>
2860             <parameter name="overlay" transfer-ownership="none">
2861               <type name="XOverlay" c:type="GstXOverlay*"/>
2862             </parameter>
2863             <parameter name="handle" transfer-ownership="none">
2864               <type c:type="guintptr"/>
2865             </parameter>
2866           </parameters>
2867         </callback>
2868       </field>
2869       <field name="_gst_reserved" writable="1">
2870         <array zero-terminated="0" c:type="gpointer" fixed-size="1">
2871           <type name="gpointer" c:type="gpointer"/>
2872         </array>
2873       </field>
2874     </record>
2875     <function name="interfaces_marshal_VOID__OBJECT_BOOLEAN"
2876               c:identifier="gst_interfaces_marshal_VOID__OBJECT_BOOLEAN">
2877       <return-value transfer-ownership="none">
2878         <type name="none" c:type="void"/>
2879       </return-value>
2880       <parameters>
2881         <parameter name="closure" transfer-ownership="none">
2882           <type name="GObject.Closure" c:type="GClosure*"/>
2883         </parameter>
2884         <parameter name="return_value" transfer-ownership="none">
2885           <type name="GObject.Value" c:type="GValue*"/>
2886         </parameter>
2887         <parameter name="n_param_values" transfer-ownership="none">
2888           <type name="guint" c:type="guint"/>
2889         </parameter>
2890         <parameter name="param_values" transfer-ownership="none">
2891           <type name="GObject.Value" c:type="GValue*"/>
2892         </parameter>
2893         <parameter name="invocation_hint" transfer-ownership="none">
2894           <type name="gpointer" c:type="gpointer"/>
2895         </parameter>
2896         <parameter name="marshal_data" transfer-ownership="none">
2897           <type name="gpointer" c:type="gpointer"/>
2898         </parameter>
2899       </parameters>
2900     </function>
2901     <function name="interfaces_marshal_VOID__OBJECT_INT"
2902               c:identifier="gst_interfaces_marshal_VOID__OBJECT_INT">
2903       <return-value transfer-ownership="none">
2904         <type name="none" c:type="void"/>
2905       </return-value>
2906       <parameters>
2907         <parameter name="closure" transfer-ownership="none">
2908           <type name="GObject.Closure" c:type="GClosure*"/>
2909         </parameter>
2910         <parameter name="return_value" transfer-ownership="none">
2911           <type name="GObject.Value" c:type="GValue*"/>
2912         </parameter>
2913         <parameter name="n_param_values" transfer-ownership="none">
2914           <type name="guint" c:type="guint"/>
2915         </parameter>
2916         <parameter name="param_values" transfer-ownership="none">
2917           <type name="GObject.Value" c:type="GValue*"/>
2918         </parameter>
2919         <parameter name="invocation_hint" transfer-ownership="none">
2920           <type name="gpointer" c:type="gpointer"/>
2921         </parameter>
2922         <parameter name="marshal_data" transfer-ownership="none">
2923           <type name="gpointer" c:type="gpointer"/>
2924         </parameter>
2925       </parameters>
2926     </function>
2927     <function name="interfaces_marshal_VOID__OBJECT_POINTER"
2928               c:identifier="gst_interfaces_marshal_VOID__OBJECT_POINTER">
2929       <return-value transfer-ownership="none">
2930         <type name="none" c:type="void"/>
2931       </return-value>
2932       <parameters>
2933         <parameter name="closure" transfer-ownership="none">
2934           <type name="GObject.Closure" c:type="GClosure*"/>
2935         </parameter>
2936         <parameter name="return_value" transfer-ownership="none">
2937           <type name="GObject.Value" c:type="GValue*"/>
2938         </parameter>
2939         <parameter name="n_param_values" transfer-ownership="none">
2940           <type name="guint" c:type="guint"/>
2941         </parameter>
2942         <parameter name="param_values" transfer-ownership="none">
2943           <type name="GObject.Value" c:type="GValue*"/>
2944         </parameter>
2945         <parameter name="invocation_hint" transfer-ownership="none">
2946           <type name="gpointer" c:type="gpointer"/>
2947         </parameter>
2948         <parameter name="marshal_data" transfer-ownership="none">
2949           <type name="gpointer" c:type="gpointer"/>
2950         </parameter>
2951       </parameters>
2952     </function>
2953     <function name="interfaces_marshal_VOID__OBJECT_STRING"
2954               c:identifier="gst_interfaces_marshal_VOID__OBJECT_STRING">
2955       <return-value transfer-ownership="none">
2956         <type name="none" c:type="void"/>
2957       </return-value>
2958       <parameters>
2959         <parameter name="closure" transfer-ownership="none">
2960           <type name="GObject.Closure" c:type="GClosure*"/>
2961         </parameter>
2962         <parameter name="return_value" transfer-ownership="none">
2963           <type name="GObject.Value" c:type="GValue*"/>
2964         </parameter>
2965         <parameter name="n_param_values" transfer-ownership="none">
2966           <type name="guint" c:type="guint"/>
2967         </parameter>
2968         <parameter name="param_values" transfer-ownership="none">
2969           <type name="GObject.Value" c:type="GValue*"/>
2970         </parameter>
2971         <parameter name="invocation_hint" transfer-ownership="none">
2972           <type name="gpointer" c:type="gpointer"/>
2973         </parameter>
2974         <parameter name="marshal_data" transfer-ownership="none">
2975           <type name="gpointer" c:type="gpointer"/>
2976         </parameter>
2977       </parameters>
2978     </function>
2979     <function name="interfaces_marshal_VOID__OBJECT_ULONG"
2980               c:identifier="gst_interfaces_marshal_VOID__OBJECT_ULONG">
2981       <return-value transfer-ownership="none">
2982         <type name="none" c:type="void"/>
2983       </return-value>
2984       <parameters>
2985         <parameter name="closure" transfer-ownership="none">
2986           <type name="GObject.Closure" c:type="GClosure*"/>
2987         </parameter>
2988         <parameter name="return_value" transfer-ownership="none">
2989           <type name="GObject.Value" c:type="GValue*"/>
2990         </parameter>
2991         <parameter name="n_param_values" transfer-ownership="none">
2992           <type name="guint" c:type="guint"/>
2993         </parameter>
2994         <parameter name="param_values" transfer-ownership="none">
2995           <type name="GObject.Value" c:type="GValue*"/>
2996         </parameter>
2997         <parameter name="invocation_hint" transfer-ownership="none">
2998           <type name="gpointer" c:type="gpointer"/>
2999         </parameter>
3000         <parameter name="marshal_data" transfer-ownership="none">
3001           <type name="gpointer" c:type="gpointer"/>
3002         </parameter>
3003       </parameters>
3004     </function>
3005     <function name="mixer_message_get_type"
3006               c:identifier="gst_mixer_message_get_type"
3007               version="0.10.14">
3008       <doc xml:whitespace="preserve">Check a bus message to see if it is a GstMixer notification
3009 message and return the GstMixerMessageType identifying which
3010 type of notification it is.
3011 if the message is not a GstMixer notification.</doc>
3012       <return-value transfer-ownership="none">
3013         <doc xml:whitespace="preserve">The type of the GstMixerMessage, or GST_MIXER_MESSAGE_INVALID</doc>
3014         <type name="MixerMessageType" c:type="GstMixerMessageType"/>
3015       </return-value>
3016       <parameters>
3017         <parameter name="message" transfer-ownership="none">
3018           <doc xml:whitespace="preserve">A GstMessage to inspect.</doc>
3019           <type name="Gst.Message" c:type="GstMessage*"/>
3020         </parameter>
3021       </parameters>
3022     </function>
3023     <function name="mixer_message_parse_mute_toggled"
3024               c:identifier="gst_mixer_message_parse_mute_toggled"
3025               version="0.10.14">
3026       <doc xml:whitespace="preserve">Extracts the contents of a mute-toggled bus message. Reads
3027 the GstMixerTrack that has changed, and the new value of the mute
3028 flag.
3029 The GstMixerTrack remains valid until the message is freed.</doc>
3030       <return-value transfer-ownership="none">
3031         <type name="none" c:type="void"/>
3032       </return-value>
3033       <parameters>
3034         <parameter name="message" transfer-ownership="none">
3035           <doc xml:whitespace="preserve">A mute-toggled change notification message.</doc>
3036           <type name="Gst.Message" c:type="GstMessage*"/>
3037         </parameter>
3038         <parameter name="track" transfer-ownership="none">
3039           <doc xml:whitespace="preserve">Pointer to hold a GstMixerTrack object, or NULL.</doc>
3040           <type name="MixerTrack" c:type="GstMixerTrack**"/>
3041         </parameter>
3042         <parameter name="mute" transfer-ownership="none">
3043           <doc xml:whitespace="preserve">A pointer to a gboolean variable, or NULL.</doc>
3044           <type name="gboolean" c:type="gboolean*"/>
3045         </parameter>
3046       </parameters>
3047     </function>
3048     <function name="mixer_message_parse_option_changed"
3049               c:identifier="gst_mixer_message_parse_option_changed"
3050               version="0.10.14">
3051       <doc xml:whitespace="preserve">Extracts the GstMixerOptions and new value from a option-changed bus notification
3052 message.
3053 The options and value returned remain valid until the message is freed.</doc>
3054       <return-value transfer-ownership="none">
3055         <type name="none" c:type="void"/>
3056       </return-value>
3057       <parameters>
3058         <parameter name="message" transfer-ownership="none">
3059           <doc xml:whitespace="preserve">A volume-changed change notification message.</doc>
3060           <type name="Gst.Message" c:type="GstMessage*"/>
3061         </parameter>
3062         <parameter name="options" transfer-ownership="none">
3063           <doc xml:whitespace="preserve">Pointer to hold a GstMixerOptions object, or NULL.</doc>
3064           <type name="MixerOptions" c:type="GstMixerOptions**"/>
3065         </parameter>
3066         <parameter name="value" transfer-ownership="none">
3067           <doc xml:whitespace="preserve">Result location to receive the new options value, or NULL.</doc>
3068           <type name="utf8" c:type="gchar**"/>
3069         </parameter>
3070       </parameters>
3071     </function>
3072     <function name="mixer_message_parse_options_list_changed"
3073               c:identifier="gst_mixer_message_parse_options_list_changed"
3074               version="0.10.18">
3075       <doc xml:whitespace="preserve">Extracts the GstMixerOptions whose value list has changed from an
3076 options-list-changed bus notification message.
3077 The options object returned remains valid until the message is freed. You
3078 do not need to unref it.</doc>
3079       <return-value transfer-ownership="none">
3080         <type name="none" c:type="void"/>
3081       </return-value>
3082       <parameters>
3083         <parameter name="message" transfer-ownership="none">
3084           <doc xml:whitespace="preserve">A volume-changed change notification message.</doc>
3085           <type name="Gst.Message" c:type="GstMessage*"/>
3086         </parameter>
3087         <parameter name="options" transfer-ownership="none">
3088           <doc xml:whitespace="preserve">Pointer to hold a GstMixerOptions object, or NULL.</doc>
3089           <type name="MixerOptions" c:type="GstMixerOptions**"/>
3090         </parameter>
3091       </parameters>
3092     </function>
3093     <function name="mixer_message_parse_record_toggled"
3094               c:identifier="gst_mixer_message_parse_record_toggled"
3095               version="0.10.14">
3096       <doc xml:whitespace="preserve">Extracts the contents of a record-toggled bus message. Reads
3097 the GstMixerTrack that has changed, and the new value of the 
3098 recording flag.
3099 The GstMixerTrack remains valid until the message is freed.</doc>
3100       <return-value transfer-ownership="none">
3101         <type name="none" c:type="void"/>
3102       </return-value>
3103       <parameters>
3104         <parameter name="message" transfer-ownership="none">
3105           <doc xml:whitespace="preserve">A record-toggled change notification message.</doc>
3106           <type name="Gst.Message" c:type="GstMessage*"/>
3107         </parameter>
3108         <parameter name="track" transfer-ownership="none">
3109           <doc xml:whitespace="preserve">Pointer to hold a GstMixerTrack object, or NULL.</doc>
3110           <type name="MixerTrack" c:type="GstMixerTrack**"/>
3111         </parameter>
3112         <parameter name="record" transfer-ownership="none">
3113           <doc xml:whitespace="preserve">A pointer to a gboolean variable, or NULL.</doc>
3114           <type name="gboolean" c:type="gboolean*"/>
3115         </parameter>
3116       </parameters>
3117     </function>
3118     <function name="mixer_message_parse_volume_changed"
3119               c:identifier="gst_mixer_message_parse_volume_changed"
3120               version="0.10.14">
3121       <doc xml:whitespace="preserve">Parses a volume-changed notification message and extracts the track object
3122 it refers to, as well as an array of volumes and the size of the volumes array.
3123 The track object remains valid until the message is freed.
3124 The caller must free the array returned in the volumes parameter using g_free
3125 when they are done with it.</doc>
3126       <return-value transfer-ownership="none">
3127         <type name="none" c:type="void"/>
3128       </return-value>
3129       <parameters>
3130         <parameter name="message" transfer-ownership="none">
3131           <doc xml:whitespace="preserve">A volume-changed change notification message.</doc>
3132           <type name="Gst.Message" c:type="GstMessage*"/>
3133         </parameter>
3134         <parameter name="track" transfer-ownership="none">
3135           <doc xml:whitespace="preserve">Pointer to hold a GstMixerTrack object, or NULL.</doc>
3136           <type name="MixerTrack" c:type="GstMixerTrack**"/>
3137         </parameter>
3138         <parameter name="volumes" transfer-ownership="none">
3139           <doc xml:whitespace="preserve">A pointer to receive an array of gint values, or NULL.</doc>
3140           <type name="gint" c:type="gint**"/>
3141         </parameter>
3142         <parameter name="num_channels" transfer-ownership="none">
3143           <doc xml:whitespace="preserve">Result location to receive the number of channels, or NULL.</doc>
3144           <type name="gint" c:type="gint*"/>
3145         </parameter>
3146       </parameters>
3147     </function>
3148     <function name="navigation_event_get_type"
3149               c:identifier="gst_navigation_event_get_type"
3150               version="0.10.23">
3151       <doc xml:whitespace="preserve">Inspect a #GstEvent and return the #GstNavigationEventType of the event, or
3152 #GST_NAVIGATION_EVENT_INVALID if the event is not a #GstNavigation event.</doc>
3153       <return-value transfer-ownership="none">
3154         <type name="NavigationEventType" c:type="GstNavigationEventType"/>
3155       </return-value>
3156       <parameters>
3157         <parameter name="event" transfer-ownership="none">
3158           <doc xml:whitespace="preserve">A #GstEvent to inspect.</doc>
3159           <type name="Gst.Event" c:type="GstEvent*"/>
3160         </parameter>
3161       </parameters>
3162     </function>
3163     <function name="navigation_event_parse_command"
3164               c:identifier="gst_navigation_event_parse_command"
3165               version="0.10.23">
3166       <doc xml:whitespace="preserve">Inspect a #GstNavigation command event and retrieve the enum value of the
3167 associated command.</doc>
3168       <return-value transfer-ownership="none">
3169         <doc xml:whitespace="preserve">TRUE if the navigation command could be extracted, otherwise FALSE.</doc>
3170         <type name="gboolean" c:type="gboolean"/>
3171       </return-value>
3172       <parameters>
3173         <parameter name="event" transfer-ownership="none">
3174           <doc xml:whitespace="preserve">A #GstEvent to inspect.</doc>
3175           <type name="Gst.Event" c:type="GstEvent*"/>
3176         </parameter>
3177         <parameter name="command" transfer-ownership="none">
3178           <doc xml:whitespace="preserve">Pointer to GstNavigationCommand to receive the type of the navigation event.</doc>
3179           <type name="NavigationCommand" c:type="GstNavigationCommand*"/>
3180         </parameter>
3181       </parameters>
3182     </function>
3183     <function name="navigation_event_parse_key_event"
3184               c:identifier="gst_navigation_event_parse_key_event"
3185               version="0.10.23">
3186       <return-value transfer-ownership="none">
3187         <type name="gboolean" c:type="gboolean"/>
3188       </return-value>
3189       <parameters>
3190         <parameter name="event" transfer-ownership="none">
3191           <doc xml:whitespace="preserve">A #GstEvent to inspect.</doc>
3192           <type name="Gst.Event" c:type="GstEvent*"/>
3193         </parameter>
3194         <parameter name="key" transfer-ownership="none">
3195           <doc xml:whitespace="preserve">A pointer to a location to receive the string identifying the key press. The returned string is owned by the event, and valid only until the event is unreffed.</doc>
3196           <type name="utf8" c:type="gchar**"/>
3197         </parameter>
3198       </parameters>
3199     </function>
3200     <function name="navigation_event_parse_mouse_button_event"
3201               c:identifier="gst_navigation_event_parse_mouse_button_event"
3202               version="0.10.23">
3203       <doc xml:whitespace="preserve">Retrieve the details of either a #GstNavigation mouse button press event or
3204 a mouse button release event. Determine which type the event is using
3205 gst_navigation_event_get_type() to retrieve the #GstNavigationEventType.
3206 otherwise FALSE.</doc>
3207       <return-value transfer-ownership="none">
3208         <doc xml:whitespace="preserve">TRUE if the button number and both coordinates could be extracted,</doc>
3209         <type name="gboolean" c:type="gboolean"/>
3210       </return-value>
3211       <parameters>
3212         <parameter name="event" transfer-ownership="none">
3213           <doc xml:whitespace="preserve">A #GstEvent to inspect.</doc>
3214           <type name="Gst.Event" c:type="GstEvent*"/>
3215         </parameter>
3216         <parameter name="button" transfer-ownership="none">
3217           <doc xml:whitespace="preserve">Pointer to a gint that will receive the button number associated with the event.</doc>
3218           <type name="gint" c:type="gint*"/>
3219         </parameter>
3220         <parameter name="x" transfer-ownership="none">
3221           <doc xml:whitespace="preserve">Pointer to a gdouble to receive the x coordinate of the mouse button event.</doc>
3222           <type name="gdouble" c:type="gdouble*"/>
3223         </parameter>
3224         <parameter name="y" transfer-ownership="none">
3225           <doc xml:whitespace="preserve">Pointer to a gdouble to receive the y coordinate of the mouse button event.</doc>
3226           <type name="gdouble" c:type="gdouble*"/>
3227         </parameter>
3228       </parameters>
3229     </function>
3230     <function name="navigation_event_parse_mouse_move_event"
3231               c:identifier="gst_navigation_event_parse_mouse_move_event"
3232               version="0.10.23">
3233       <doc xml:whitespace="preserve">Inspect a #GstNavigation mouse movement event and extract the coordinates
3234 of the event.</doc>
3235       <return-value transfer-ownership="none">
3236         <doc xml:whitespace="preserve">TRUE if both coordinates could be extracted, otherwise FALSE.</doc>
3237         <type name="gboolean" c:type="gboolean"/>
3238       </return-value>
3239       <parameters>
3240         <parameter name="event" transfer-ownership="none">
3241           <doc xml:whitespace="preserve">A #GstEvent to inspect.</doc>
3242           <type name="Gst.Event" c:type="GstEvent*"/>
3243         </parameter>
3244         <parameter name="x" transfer-ownership="none">
3245           <doc xml:whitespace="preserve">Pointer to a gdouble to receive the x coordinate of the mouse movement.</doc>
3246           <type name="gdouble" c:type="gdouble*"/>
3247         </parameter>
3248         <parameter name="y" transfer-ownership="none">
3249           <doc xml:whitespace="preserve">Pointer to a gdouble to receive the y coordinate of the mouse movement.</doc>
3250           <type name="gdouble" c:type="gdouble*"/>
3251         </parameter>
3252       </parameters>
3253     </function>
3254     <function name="navigation_message_get_type"
3255               c:identifier="gst_navigation_message_get_type"
3256               version="0.10.23">
3257       <doc xml:whitespace="preserve">Check a bus message to see if it is a #GstNavigation event, and return
3258 the #GstNavigationMessageType identifying the type of the message if so.
3259 #GST_NAVIGATION_MESSAGE_INVALID if the message is not a #GstNavigation
3260 notification.</doc>
3261       <return-value transfer-ownership="none">
3262         <doc xml:whitespace="preserve">The type of the #GstNavigationMessage, or</doc>
3263         <type name="NavigationMessageType" c:type="GstNavigationMessageType"/>
3264       </return-value>
3265       <parameters>
3266         <parameter name="message" transfer-ownership="none">
3267           <doc xml:whitespace="preserve">A #GstMessage to inspect.</doc>
3268           <type name="Gst.Message" c:type="GstMessage*"/>
3269         </parameter>
3270       </parameters>
3271     </function>
3272     <function name="navigation_message_new_angles_changed"
3273               c:identifier="gst_navigation_message_new_angles_changed"
3274               version="0.10.23"
3275               introspectable="0">
3276       <doc xml:whitespace="preserve">Creates a new #GstNavigation message with type
3277 #GST_NAVIGATION_MESSAGE_ANGLES_CHANGED for notifying an application
3278 that the current angle, or current number of angles available in a
3279 multiangle video has changed.</doc>
3280       <return-value>
3281         <doc xml:whitespace="preserve">The new #GstMessage.</doc>
3282         <type name="Gst.Message" c:type="GstMessage*"/>
3283       </return-value>
3284       <parameters>
3285         <parameter name="src" transfer-ownership="none">
3286           <doc xml:whitespace="preserve">A #GstObject to set as source of the new message.</doc>
3287           <type name="Gst.Object" c:type="GstObject*"/>
3288         </parameter>
3289         <parameter name="cur_angle" transfer-ownership="none">
3290           <doc xml:whitespace="preserve">The currently selected angle.</doc>
3291           <type name="guint" c:type="guint"/>
3292         </parameter>
3293         <parameter name="n_angles" transfer-ownership="none">
3294           <doc xml:whitespace="preserve">The number of viewing angles now available.</doc>
3295           <type name="guint" c:type="guint"/>
3296         </parameter>
3297       </parameters>
3298     </function>
3299     <function name="navigation_message_new_commands_changed"
3300               c:identifier="gst_navigation_message_new_commands_changed"
3301               version="0.10.23"
3302               introspectable="0">
3303       <doc xml:whitespace="preserve">Creates a new #GstNavigation message with type
3304 #GST_NAVIGATION_MESSAGE_COMMANDS_CHANGED</doc>
3305       <return-value>
3306         <doc xml:whitespace="preserve">The new #GstMessage.</doc>
3307         <type name="Gst.Message" c:type="GstMessage*"/>
3308       </return-value>
3309       <parameters>
3310         <parameter name="src" transfer-ownership="none">
3311           <doc xml:whitespace="preserve">A #GstObject to set as source of the new message.</doc>
3312           <type name="Gst.Object" c:type="GstObject*"/>
3313         </parameter>
3314       </parameters>
3315     </function>
3316     <function name="navigation_message_new_mouse_over"
3317               c:identifier="gst_navigation_message_new_mouse_over"
3318               version="0.10.23"
3319               introspectable="0">
3320       <doc xml:whitespace="preserve">Creates a new #GstNavigation message with type
3321 #GST_NAVIGATION_MESSAGE_MOUSE_OVER.</doc>
3322       <return-value>
3323         <doc xml:whitespace="preserve">The new #GstMessage.</doc>
3324         <type name="Gst.Message" c:type="GstMessage*"/>
3325       </return-value>
3326       <parameters>
3327         <parameter name="src" transfer-ownership="none">
3328           <doc xml:whitespace="preserve">A #GstObject to set as source of the new message.</doc>
3329           <type name="Gst.Object" c:type="GstObject*"/>
3330         </parameter>
3331         <parameter name="active" transfer-ownership="none">
3332           <doc xml:whitespace="preserve">%TRUE if the mouse has entered a clickable area of the display. %FALSE if it over a non-clickable area.</doc>
3333           <type name="gboolean" c:type="gboolean"/>
3334         </parameter>
3335       </parameters>
3336     </function>
3337     <function name="navigation_message_parse_angles_changed"
3338               c:identifier="gst_navigation_message_parse_angles_changed"
3339               version="0.10.23">
3340       <doc xml:whitespace="preserve">Parse a #GstNavigation message of type GST_NAVIGATION_MESSAGE_ANGLES_CHANGED
3341 and extract the @cur_angle and @n_angles parameters.</doc>
3342       <return-value transfer-ownership="none">
3343         <doc xml:whitespace="preserve">%TRUE if the message could be successfully parsed. %FALSE if not.</doc>
3344         <type name="gboolean" c:type="gboolean"/>
3345       </return-value>
3346       <parameters>
3347         <parameter name="message" transfer-ownership="none">
3348           <doc xml:whitespace="preserve">A #GstMessage to inspect.</doc>
3349           <type name="Gst.Message" c:type="GstMessage*"/>
3350         </parameter>
3351         <parameter name="cur_angle" transfer-ownership="none">
3352           <doc xml:whitespace="preserve">A pointer to a #guint to receive the new current angle number, or NULL</doc>
3353           <type name="guint" c:type="guint*"/>
3354         </parameter>
3355         <parameter name="n_angles" transfer-ownership="none">
3356           <doc xml:whitespace="preserve">A pointer to a #guint to receive the new angle count, or NULL.</doc>
3357           <type name="guint" c:type="guint*"/>
3358         </parameter>
3359       </parameters>
3360     </function>
3361     <function name="navigation_message_parse_mouse_over"
3362               c:identifier="gst_navigation_message_parse_mouse_over"
3363               version="0.10.23">
3364       <doc xml:whitespace="preserve">Parse a #GstNavigation message of type #GST_NAVIGATION_MESSAGE_MOUSE_OVER
3365 and extract the active/inactive flag. If the mouse over event is marked
3366 active, it indicates that the mouse is over a clickable area.</doc>
3367       <return-value transfer-ownership="none">
3368         <doc xml:whitespace="preserve">%TRUE if the message could be successfully parsed. %FALSE if not.</doc>
3369         <type name="gboolean" c:type="gboolean"/>
3370       </return-value>
3371       <parameters>
3372         <parameter name="message" transfer-ownership="none">
3373           <doc xml:whitespace="preserve">A #GstMessage to inspect.</doc>
3374           <type name="Gst.Message" c:type="GstMessage*"/>
3375         </parameter>
3376         <parameter name="active" transfer-ownership="none">
3377           <doc xml:whitespace="preserve">A pointer to a gboolean to receive the active/inactive state, or NULL.</doc>
3378           <type name="gboolean" c:type="gboolean*"/>
3379         </parameter>
3380       </parameters>
3381     </function>
3382     <function name="navigation_query_get_type"
3383               c:identifier="gst_navigation_query_get_type"
3384               version="0.10.23">
3385       <doc xml:whitespace="preserve">Inspect a #GstQuery and return the #GstNavigationQueryType associated with
3386 it if it is a #GstNavigation query.
3387 #GST_NAVIGATION_QUERY_INVALID</doc>
3388       <return-value transfer-ownership="none">
3389         <doc xml:whitespace="preserve">The #GstNavigationQueryType of the query, or</doc>
3390         <type name="NavigationQueryType" c:type="GstNavigationQueryType"/>
3391       </return-value>
3392       <parameters>
3393         <parameter name="query" transfer-ownership="none">
3394           <doc xml:whitespace="preserve">The query to inspect</doc>
3395           <type name="Gst.Query" c:type="GstQuery*"/>
3396         </parameter>
3397       </parameters>
3398     </function>
3399     <function name="navigation_query_new_angles"
3400               c:identifier="gst_navigation_query_new_angles"
3401               version="0.10.23"
3402               introspectable="0">
3403       <doc xml:whitespace="preserve">Create a new #GstNavigation angles query. When executed, it will
3404 query the pipeline for the set of currently available angles, which may be
3405 greater than one in a multiangle video.</doc>
3406       <return-value>
3407         <doc xml:whitespace="preserve">The new query.</doc>
3408         <type name="Gst.Query" c:type="GstQuery*"/>
3409       </return-value>
3410     </function>
3411     <function name="navigation_query_new_commands"
3412               c:identifier="gst_navigation_query_new_commands"
3413               version="0.10.23"
3414               introspectable="0">
3415       <doc xml:whitespace="preserve">Create a new #GstNavigation commands query. When executed, it will
3416 query the pipeline for the set of currently available commands.</doc>
3417       <return-value>
3418         <doc xml:whitespace="preserve">The new query.</doc>
3419         <type name="Gst.Query" c:type="GstQuery*"/>
3420       </return-value>
3421     </function>
3422     <function name="navigation_query_parse_angles"
3423               c:identifier="gst_navigation_query_parse_angles"
3424               version="0.10.23">
3425       <doc xml:whitespace="preserve">Parse the current angle number in the #GstNavigation angles @query into the
3426 #guint pointed to by the @cur_angle variable, and the number of available
3427 angles into the #guint pointed to by the @n_angles variable.</doc>
3428       <return-value transfer-ownership="none">
3429         <doc xml:whitespace="preserve">%TRUE if the query could be successfully parsed. %FALSE if not.</doc>
3430         <type name="gboolean" c:type="gboolean"/>
3431       </return-value>
3432       <parameters>
3433         <parameter name="query" transfer-ownership="none">
3434           <doc xml:whitespace="preserve">a #GstQuery</doc>
3435           <type name="Gst.Query" c:type="GstQuery*"/>
3436         </parameter>
3437         <parameter name="cur_angle" transfer-ownership="none">
3438           <doc xml:whitespace="preserve">Pointer to a #guint into which to store the currently selected angle value from the query, or NULL</doc>
3439           <type name="guint" c:type="guint*"/>
3440         </parameter>
3441         <parameter name="n_angles" transfer-ownership="none">
3442           <doc xml:whitespace="preserve">Pointer to a #guint into which to store the number of angles value from the query, or NULL</doc>
3443           <type name="guint" c:type="guint*"/>
3444         </parameter>
3445       </parameters>
3446     </function>
3447     <function name="navigation_query_parse_commands_length"
3448               c:identifier="gst_navigation_query_parse_commands_length"
3449               version="0.10.23">
3450       <doc xml:whitespace="preserve">Parse the number of commands in the #GstNavigation commands @query.</doc>
3451       <return-value transfer-ownership="none">
3452         <doc xml:whitespace="preserve">%TRUE if the query could be successfully parsed. %FALSE if not.</doc>
3453         <type name="gboolean" c:type="gboolean"/>
3454       </return-value>
3455       <parameters>
3456         <parameter name="query" transfer-ownership="none">
3457           <doc xml:whitespace="preserve">a #GstQuery</doc>
3458           <type name="Gst.Query" c:type="GstQuery*"/>
3459         </parameter>
3460         <parameter name="n_cmds" transfer-ownership="none">
3461           <doc xml:whitespace="preserve">the number of commands in this query.</doc>
3462           <type name="guint" c:type="guint*"/>
3463         </parameter>
3464       </parameters>
3465     </function>
3466     <function name="navigation_query_parse_commands_nth"
3467               c:identifier="gst_navigation_query_parse_commands_nth"
3468               version="0.10.23">
3469       <doc xml:whitespace="preserve">Parse the #GstNavigation command query and retrieve the @nth command from
3470 it into @cmd. If the list contains less elements than @nth, @cmd will be
3471 set to #GST_NAVIGATION_COMMAND_INVALID.</doc>
3472       <return-value transfer-ownership="none">
3473         <doc xml:whitespace="preserve">%TRUE if the query could be successfully parsed. %FALSE if not.</doc>
3474         <type name="gboolean" c:type="gboolean"/>
3475       </return-value>
3476       <parameters>
3477         <parameter name="query" transfer-ownership="none">
3478           <doc xml:whitespace="preserve">a #GstQuery</doc>
3479           <type name="Gst.Query" c:type="GstQuery*"/>
3480         </parameter>
3481         <parameter name="nth" transfer-ownership="none">
3482           <doc xml:whitespace="preserve">the nth command to retrieve.</doc>
3483           <type name="guint" c:type="guint"/>
3484         </parameter>
3485         <parameter name="cmd" transfer-ownership="none">
3486           <doc xml:whitespace="preserve">a pointer to store the nth command into.</doc>
3487           <type name="NavigationCommand" c:type="GstNavigationCommand*"/>
3488         </parameter>
3489       </parameters>
3490     </function>
3491     <function name="navigation_query_set_angles"
3492               c:identifier="gst_navigation_query_set_angles"
3493               version="0.10.23">
3494       <doc xml:whitespace="preserve">Set the #GstNavigation angles query result field in @query.</doc>
3495       <return-value transfer-ownership="none">
3496         <type name="none" c:type="void"/>
3497       </return-value>
3498       <parameters>
3499         <parameter name="query" transfer-ownership="none">
3500           <doc xml:whitespace="preserve">a #GstQuery</doc>
3501           <type name="Gst.Query" c:type="GstQuery*"/>
3502         </parameter>
3503         <parameter name="cur_angle" transfer-ownership="none">
3504           <doc xml:whitespace="preserve">the current viewing angle to set.</doc>
3505           <type name="guint" c:type="guint"/>
3506         </parameter>
3507         <parameter name="n_angles" transfer-ownership="none">
3508           <doc xml:whitespace="preserve">the number of viewing angles to set.</doc>
3509           <type name="guint" c:type="guint"/>
3510         </parameter>
3511       </parameters>
3512     </function>
3513     <function name="navigation_query_set_commands"
3514               c:identifier="gst_navigation_query_set_commands"
3515               version="0.10.23"
3516               introspectable="0">
3517       <doc xml:whitespace="preserve">Set the #GstNavigation command query result fields in @query. The number
3518 of commands passed must be equal to @n_commands.</doc>
3519       <return-value transfer-ownership="none">
3520         <type name="none" c:type="void"/>
3521       </return-value>
3522       <parameters>
3523         <parameter name="query" transfer-ownership="none">
3524           <doc xml:whitespace="preserve">a #GstQuery</doc>
3525           <type name="Gst.Query" c:type="GstQuery*"/>
3526         </parameter>
3527         <parameter name="n_cmds" transfer-ownership="none">
3528           <doc xml:whitespace="preserve">the number of commands to set.</doc>
3529           <type name="gint" c:type="gint"/>
3530         </parameter>
3531         <parameter transfer-ownership="none">
3532           <varargs>
3533           </varargs>
3534         </parameter>
3535       </parameters>
3536     </function>
3537     <function name="navigation_query_set_commandsv"
3538               c:identifier="gst_navigation_query_set_commandsv"
3539               version="0.10.23">
3540       <doc xml:whitespace="preserve">Set the #GstNavigation command query result fields in @query. The number
3541 of commands passed must be equal to @n_commands.</doc>
3542       <return-value transfer-ownership="none">
3543         <type name="none" c:type="void"/>
3544       </return-value>
3545       <parameters>
3546         <parameter name="query" transfer-ownership="none">
3547           <doc xml:whitespace="preserve">a #GstQuery</doc>
3548           <type name="Gst.Query" c:type="GstQuery*"/>
3549         </parameter>
3550         <parameter name="n_cmds" transfer-ownership="none">
3551           <doc xml:whitespace="preserve">the number of commands to set.</doc>
3552           <type name="gint" c:type="gint"/>
3553         </parameter>
3554         <parameter name="cmds" transfer-ownership="none">
3555           <doc xml:whitespace="preserve">An array containing @n_cmds @GstNavigationCommand values.</doc>
3556           <type name="NavigationCommand" c:type="GstNavigationCommand*"/>
3557         </parameter>
3558       </parameters>
3559     </function>
3560     <function name="stream_volume_convert_volume"
3561               c:identifier="gst_stream_volume_convert_volume"
3562               version="0.10.25">
3563       <return-value transfer-ownership="none">
3564         <doc xml:whitespace="preserve">the converted volume</doc>
3565         <type name="gdouble" c:type="gdouble"/>
3566       </return-value>
3567       <parameters>
3568         <parameter name="from" transfer-ownership="none">
3569           <doc xml:whitespace="preserve">#GstStreamVolumeFormat to convert from</doc>
3570           <type name="StreamVolumeFormat" c:type="GstStreamVolumeFormat"/>
3571         </parameter>
3572         <parameter name="to" transfer-ownership="none">
3573           <doc xml:whitespace="preserve">#GstStreamVolumeFormat to convert to</doc>
3574           <type name="StreamVolumeFormat" c:type="GstStreamVolumeFormat"/>
3575         </parameter>
3576         <parameter name="val" transfer-ownership="none">
3577           <doc xml:whitespace="preserve">Volume in @from format that should be converted</doc>
3578           <type name="gdouble" c:type="gdouble"/>
3579         </parameter>
3580       </parameters>
3581     </function>
3582     <function name="x_overlay_expose" c:identifier="gst_x_overlay_expose">
3583       <doc xml:whitespace="preserve">Tell an overlay that it has been exposed. This will redraw the current frame
3584 in the drawable even if the pipeline is PAUSED.</doc>
3585       <return-value transfer-ownership="none">
3586         <type name="none" c:type="void"/>
3587       </return-value>
3588       <parameters>
3589         <parameter name="overlay" transfer-ownership="none">
3590           <doc xml:whitespace="preserve">a #GstXOverlay to expose.</doc>
3591           <type name="XOverlay" c:type="GstXOverlay*"/>
3592         </parameter>
3593       </parameters>
3594     </function>
3595     <function name="x_overlay_got_window_handle"
3596               c:identifier="gst_x_overlay_got_window_handle"
3597               introspectable="0">
3598       <doc xml:whitespace="preserve">This will post a "have-xwindow-id" element message on the bus.
3599 This function should only be used by video overlay plugin developers.</doc>
3600       <return-value transfer-ownership="none">
3601         <type name="none" c:type="void"/>
3602       </return-value>
3603       <parameters>
3604         <parameter name="overlay" transfer-ownership="none">
3605           <doc xml:whitespace="preserve">a #GstXOverlay which got a window</doc>
3606           <type name="XOverlay" c:type="GstXOverlay*"/>
3607         </parameter>
3608         <parameter name="handle" transfer-ownership="none">
3609           <doc xml:whitespace="preserve">a platform-specific handle referencing the window</doc>
3610           <type c:type="guintptr"/>
3611         </parameter>
3612       </parameters>
3613     </function>
3614     <function name="x_overlay_got_xwindow_id"
3615               c:identifier="gst_x_overlay_got_xwindow_id"
3616               deprecated="Use gst_x_overlay_got_window_handle() instead.">
3617       <doc xml:whitespace="preserve">This will post a "have-xwindow-id" element message on the bus.
3618 This function should only be used by video overlay plugin developers.</doc>
3619       <return-value transfer-ownership="none">
3620         <type name="none" c:type="void"/>
3621       </return-value>
3622       <parameters>
3623         <parameter name="overlay" transfer-ownership="none">
3624           <doc xml:whitespace="preserve">a #GstXOverlay which got a XWindow.</doc>
3625           <type name="XOverlay" c:type="GstXOverlay*"/>
3626         </parameter>
3627         <parameter name="xwindow_id" transfer-ownership="none">
3628           <doc xml:whitespace="preserve">a #XID referencing the XWindow.</doc>
3629           <type name="gulong" c:type="gulong"/>
3630         </parameter>
3631       </parameters>
3632     </function>
3633     <function name="x_overlay_handle_events"
3634               c:identifier="gst_x_overlay_handle_events"
3635               version="0.10.12">
3636       <doc xml:whitespace="preserve">Tell an overlay that it should handle events from the window system. These
3637 events are forwared upstream as navigation events. In some window system,
3638 events are not propagated in the window hierarchy if a client is listening
3639 for them. This method allows you to disable events handling completely
3640 from the XOverlay.</doc>
3641       <return-value transfer-ownership="none">
3642         <type name="none" c:type="void"/>
3643       </return-value>
3644       <parameters>
3645         <parameter name="overlay" transfer-ownership="none">
3646           <doc xml:whitespace="preserve">a #GstXOverlay to expose.</doc>
3647           <type name="XOverlay" c:type="GstXOverlay*"/>
3648         </parameter>
3649         <parameter name="handle_events" transfer-ownership="none">
3650           <doc xml:whitespace="preserve">a #gboolean indicating if events should be handled or not.</doc>
3651           <type name="gboolean" c:type="gboolean"/>
3652         </parameter>
3653       </parameters>
3654     </function>
3655     <function name="x_overlay_prepare_xwindow_id"
3656               c:identifier="gst_x_overlay_prepare_xwindow_id">
3657       <doc xml:whitespace="preserve">This will post a "prepare-xwindow-id" element message on the bus
3658 to give applications an opportunity to call 
3659 gst_x_overlay_set_xwindow_id() before a plugin creates its own
3660 window.
3661 This function should only be used by video overlay plugin developers.</doc>
3662       <return-value transfer-ownership="none">
3663         <type name="none" c:type="void"/>
3664       </return-value>
3665       <parameters>
3666         <parameter name="overlay" transfer-ownership="none">
3667           <doc xml:whitespace="preserve">a #GstXOverlay which does not yet have an XWindow.</doc>
3668           <type name="XOverlay" c:type="GstXOverlay*"/>
3669         </parameter>
3670       </parameters>
3671     </function>
3672     <function name="x_overlay_set_render_rectangle"
3673               c:identifier="gst_x_overlay_set_render_rectangle"
3674               version="0.10.29">
3675       <doc xml:whitespace="preserve">Configure a subregion as a video target within the window set by
3676 gst_x_overlay_set_window_handle(). If this is not used or not supported
3677 the video will fill the area of the window set as the overlay to 100%.
3678 By specifying the rectangle, the video can be overlayed to a specific region
3679 of that window only. After setting the new rectangle one should call
3680 gst_x_overlay_expose() to force a redraw. To unset the region pass -1 for
3681 the @width and @height parameters.
3682 This method is needed for non fullscreen video overlay in UI toolkits that
3683 do not support subwindows.</doc>
3684       <return-value transfer-ownership="none">
3685         <doc xml:whitespace="preserve">%FALSE if not supported by the sink.</doc>
3686         <type name="gboolean" c:type="gboolean"/>
3687       </return-value>
3688       <parameters>
3689         <parameter name="overlay" transfer-ownership="none">
3690           <doc xml:whitespace="preserve">a #GstXOverlay</doc>
3691           <type name="XOverlay" c:type="GstXOverlay*"/>
3692         </parameter>
3693         <parameter name="x" transfer-ownership="none">
3694           <doc xml:whitespace="preserve">the horizontal offset of the render area inside the window</doc>
3695           <type name="gint" c:type="gint"/>
3696         </parameter>
3697         <parameter name="y" transfer-ownership="none">
3698           <doc xml:whitespace="preserve">the vertical offset of the render area inside the window</doc>
3699           <type name="gint" c:type="gint"/>
3700         </parameter>
3701         <parameter name="width" transfer-ownership="none">
3702           <doc xml:whitespace="preserve">the width of the render area inside the window</doc>
3703           <type name="gint" c:type="gint"/>
3704         </parameter>
3705         <parameter name="height" transfer-ownership="none">
3706           <doc xml:whitespace="preserve">the height of the render area inside the window</doc>
3707           <type name="gint" c:type="gint"/>
3708         </parameter>
3709       </parameters>
3710     </function>
3711     <function name="x_overlay_set_window_handle"
3712               c:identifier="gst_x_overlay_set_window_handle"
3713               version="0.10.31"
3714               introspectable="0">
3715       <doc xml:whitespace="preserve">This will call the video overlay's set_window_handle method. You
3716 should use this method to tell to a XOverlay to display video output to a
3717 specific XWindow. Passing 0 as the xwindow_id will tell the overlay to
3718 stop using that window and create an internal one.</doc>
3719       <return-value transfer-ownership="none">
3720         <type name="none" c:type="void"/>
3721       </return-value>
3722       <parameters>
3723         <parameter name="overlay" transfer-ownership="none">
3724           <doc xml:whitespace="preserve">a #GstXOverlay to set the XWindow on.</doc>
3725           <type name="XOverlay" c:type="GstXOverlay*"/>
3726         </parameter>
3727         <parameter name="handle" transfer-ownership="none">
3728           <type c:type="guintptr"/>
3729         </parameter>
3730       </parameters>
3731     </function>
3732     <function name="x_overlay_set_xwindow_id"
3733               c:identifier="gst_x_overlay_set_xwindow_id"
3734               deprecated="Use gst_x_overlay_set_window_handle() instead.">
3735       <doc xml:whitespace="preserve">This will call the video overlay's set_xwindow_id method. You should
3736 use this method to tell to a XOverlay to display video output to a
3737 specific XWindow. Passing 0 as the xwindow_id will tell the overlay to
3738 stop using that window and create an internal one.</doc>
3739       <return-value transfer-ownership="none">
3740         <type name="none" c:type="void"/>
3741       </return-value>
3742       <parameters>
3743         <parameter name="overlay" transfer-ownership="none">
3744           <doc xml:whitespace="preserve">a #GstXOverlay to set the XWindow on.</doc>
3745           <type name="XOverlay" c:type="GstXOverlay*"/>
3746         </parameter>
3747         <parameter name="xwindow_id" transfer-ownership="none">
3748           <doc xml:whitespace="preserve">a #XID referencing the XWindow.</doc>
3749           <type name="gulong" c:type="gulong"/>
3750         </parameter>
3751       </parameters>
3752     </function>
3753   </namespace>
3754 </repository>