Release 0.7.8
[vala-lang.git] / vapi / gstreamer-0.10.vapi
blob30903d2e57b5319085347a9f69410685321d60fd
1 /* gstreamer-0.10.vapi generated by vapigen, do not modify. */
3 [CCode (cprefix = "Gst", lower_case_cprefix = "gst_")]
4 namespace Gst {
5         [Compact]
6         [CCode (cheader_filename = "gst/gst.h")]
7         public class AllocTrace {
8                 public int flags;
9                 public int live;
10                 public weak GLib.SList mem_live;
11                 public weak string name;
12                 public static bool available ();
13                 public static unowned Gst.AllocTrace @get (string name);
14                 public static unowned GLib.List list ();
15                 public static int live_all ();
16                 public void print ();
17                 public static void print_all ();
18                 public static void print_live ();
19                 public void set_flags (Gst.AllocTraceFlags flags);
20                 public static void set_flags_all (Gst.AllocTraceFlags flags);
21         }
22         [CCode (cheader_filename = "gst/gst.h")]
23         public class Bin : Gst.Element, Gst.ChildProxy {
24                 public weak Gst.Bus child_bus;
25                 public weak GLib.List<Gst.Pad> children;
26                 public uint32 children_cookie;
27                 public bool clock_dirty;
28                 public weak Gst.Element clock_provider;
29                 public weak GLib.List<Gst.Message> messages;
30                 public int numchildren;
31                 public bool polling;
32                 public weak Gst.Clock provided_clock;
33                 public bool state_dirty;
34                 [CCode (type = "GstElement*", has_construct_function = false)]
35                 public Bin (string name);
36                 public bool add (owned Gst.Element element);
37                 [NoWrapper]
38                 public virtual bool add_element (Gst.Element element);
39                 public void add_many (params owned Gst.Element[] elements);
40                 public Gst.Pad find_unconnected_pad (Gst.PadDirection direction);
41                 public unowned Gst.Pad find_unlinked_pad (Gst.PadDirection direction);
42                 public Gst.Element get_by_interface (GLib.Type iface);
43                 public Gst.Element get_by_name (string name);
44                 public Gst.Element get_by_name_recurse_up (string name);
45                 [NoWrapper]
46                 public virtual void handle_message (Gst.Message message);
47                 public Gst.Iterator iterate_all_by_interface (GLib.Type iface);
48                 public Gst.Iterator iterate_elements ();
49                 public Gst.Iterator iterate_recurse ();
50                 public Gst.Iterator iterate_sinks ();
51                 public Gst.Iterator iterate_sorted ();
52                 public Gst.Iterator iterate_sources ();
53                 public bool recalculate_latency ();
54                 public bool remove (Gst.Element element);
55                 [NoWrapper]
56                 public virtual bool remove_element (Gst.Element element);
57                 public void remove_many (Gst.Element element_1, ...);
58                 [NoAccessorMethod]
59                 public bool async_handling { get; set; }
60                 public virtual signal bool do_latency ();
61                 public virtual signal void element_added (Gst.Element child);
62                 public virtual signal void element_removed (Gst.Element child);
63         }
64         [CCode (ref_function = "gst_buffer_ref", unref_function = "gst_buffer_unref", cheader_filename = "gst/gst.h")]
65         public class Buffer : Gst.MiniObject {
66                 public weak Gst.Caps caps;
67                 [CCode (array_length = false)]
68                 public weak uchar[] data;
69                 public Gst.ClockTime duration;
70                 public weak GLib.FreeFunc free_func;
71                 public uchar malloc_data;
72                 public uint64 offset;
73                 public uint64 offset_end;
74                 public uint size;
75                 public Gst.ClockTime timestamp;
76                 public Buffer ();
77                 [CCode (has_construct_function = false)]
78                 public Buffer.and_alloc (uint size);
79                 public void copy_metadata (Gst.Buffer src, Gst.BufferCopyFlags flags);
80                 public Gst.Buffer create_sub (uint offset, uint size);
81                 [CCode (cname = "GST_BUFFER_FLAG_SET")]
82                 public void flag_set (Gst.BufferFlag flag);
83                 [CCode (cname = "GST_BUFFER_FLAG_UNSET")]
84                 public void flag_unset (Gst.BufferFlag flag);
85                 public unowned Gst.Caps get_caps ();
86                 public bool is_metadata_writable ();
87                 public bool is_span_fast (Gst.Buffer buf2);
88                 public unowned Gst.Buffer join (Gst.Buffer buf2);
89                 [ReturnsModifiedPointer]
90                 public void make_metadata_writable ();
91                 [ReturnsModifiedPointer]
92                 public void make_writable ();
93                 public unowned Gst.Buffer merge (Gst.Buffer buf2);
94                 public unowned Gst.Buffer @ref ();
95                 public void set_caps (Gst.Caps caps);
96                 public unowned Gst.Buffer span (uint32 offset, Gst.Buffer buf2, uint32 len);
97                 public void stamp (Gst.Buffer src);
98                 public static Gst.Buffer try_new_and_alloc (uint size);
99                 public void unref ();
100         }
101         [Compact]
102         [CCode (cheader_filename = "gst/gst.h")]
103         public class BufferClass : Gst.MiniObjectClass {
104         }
105         [Compact]
106         [CCode (cheader_filename = "gst/gst.h")]
107         public class BufferList {
108                 [CCode (has_construct_function = false)]
109                 public BufferList ();
110                 public void @foreach (Gst.BufferListFunc func);
111                 public unowned Gst.Buffer @get (uint group, uint idx);
112                 public unowned Gst.BufferListIterator iterate ();
113                 public uint n_groups ();
114         }
115         [Compact]
116         [CCode (cheader_filename = "gst/gst.h")]
117         public class BufferListClass {
118         }
119         [Compact]
120         [CCode (cheader_filename = "gst/gst.h")]
121         public class BufferListIterator {
122                 public void add (Gst.Buffer buffer);
123                 public void add_group ();
124                 public unowned Gst.Buffer @do (Gst.BufferListDoFunction do_func);
125                 public unowned Gst.Buffer merge_group ();
126                 public uint n_buffers ();
127                 public unowned Gst.Buffer next ();
128                 public bool next_group ();
129                 public void remove ();
130                 public unowned Gst.Buffer steal ();
131                 public void take (Gst.Buffer buffer);
132         }
133         [CCode (cheader_filename = "gst/gst.h")]
134         public class Bus : Gst.Object {
135                 public uint num_signal_watchers;
136                 public weak GLib.Queue queue;
137                 public weak GLib.Mutex queue_lock;
138                 public uint signal_watch_id;
139                 public weak Gst.BusSyncHandler sync_handler;
140                 public void* sync_handler_data;
141                 [CCode (has_construct_function = false)]
142                 public Bus ();
143                 public void add_signal_watch ();
144                 public void add_signal_watch_full (int priority);
145                 public uint add_watch (Gst.BusFunc func);
146                 public uint add_watch_full (int priority, owned Gst.BusFunc func);
147                 public bool async_signal_func (Gst.Message message, void* data);
148                 public unowned GLib.TimeoutSource create_watch ();
149                 public void disable_sync_message_emission ();
150                 public void enable_sync_message_emission ();
151                 public bool have_pending ();
152                 public Gst.Message peek ();
153                 public Gst.Message? poll (Gst.MessageType events, Gst.ClockTimeDiff timeout);
154                 public Gst.Message pop ();
155                 public Gst.Message pop_filtered (Gst.MessageType types);
156                 public bool post (owned Gst.Message message);
157                 public void remove_signal_watch ();
158                 public void set_flushing (bool flushing);
159                 public void set_sync_handler (Gst.BusSyncHandler func);
160                 [CCode (instance_pos = -1)]
161                 public Gst.BusSyncReply sync_signal_handler (Gst.Bus bus, Gst.Message message);
162                 public Gst.Message timed_pop (Gst.ClockTime timeout);
163                 public Gst.Message timed_pop_filtered (Gst.ClockTime timeout, Gst.MessageType types);
164                 public virtual signal void message (Gst.Message message);
165                 public virtual signal void sync_message (Gst.Message message);
166         }
167         [CCode (ref_function = "gst_caps_ref", unref_function = "gst_caps_unref", cheader_filename = "gst/gst.h")]
168         public class Caps {
169                 public Gst.CapsFlags flags;
170                 public int refcount;
171                 public weak GLib.PtrArray structs;
172                 public GLib.Type type;
173                 [CCode (has_construct_function = false)]
174                 public Caps.any ();
175                 public void append (Gst.Caps caps2);
176                 public void append_structure (owned Gst.Structure structure);
177                 public Gst.Caps copy ();
178                 public Gst.Caps copy_nth (uint nth);
179                 public bool do_simplify ();
180                 [CCode (has_construct_function = false)]
181                 public Caps.empty ();
182                 public static Gst.Caps from_string (string str);
183                 [CCode (has_construct_function = false)]
184                 public Caps.full (Gst.Structure struct1, ...);
185                 [CCode (has_construct_function = false)]
186                 public Caps.full_valist (Gst.Structure structure, void* var_args);
187                 public uint get_size ();
188                 public unowned Gst.Structure get_structure (uint index);
189                 public unowned Gst.Caps intersect (Gst.Caps caps2);
190                 public bool is_always_compatible (Gst.Caps caps2);
191                 public bool is_any ();
192                 public bool is_empty ();
193                 public bool is_equal (Gst.Caps caps2);
194                 public bool is_equal_fixed (Gst.Caps caps2);
195                 public bool is_fixed ();
196                 public bool is_subset (Gst.Caps superset);
197                 public static unowned Gst.Caps load_thyself (void* parent);
198                 [ReturnsModifiedPointer]
199                 public void make_writable ();
200                 public void merge (Gst.Caps caps2);
201                 public void merge_structure (Gst.Structure structure);
202                 public unowned Gst.Caps normalize ();
203                 public unowned Gst.Caps @ref ();
204                 public void remove_structure (uint idx);
205                 public void replace (Gst.Caps newcaps);
206                 public void* save_thyself (void* parent);
207                 public void set_simple (string field, ...);
208                 public void set_simple_valist (string field, void* varargs);
209                 [CCode (has_construct_function = false)]
210                 public Caps.simple (string media_type, string fieldname, ...);
211                 public unowned Gst.Caps subtract (Gst.Caps subtrahend);
212                 public unowned string to_string ();
213                 public void truncate ();
214                 public Gst.Caps union (Gst.Caps caps2);
215                 public void unref ();
216         }
217         [CCode (cheader_filename = "gst/gst.h")]
218         public class Clock : Gst.Object {
219                 public void* ABI;
220                 public weak Gst.ClockID clockid;
221                 public weak GLib.List entries;
222                 public weak GLib.Cond entries_changed;
223                 public Gst.ClockTime external_calibration;
224                 public bool filling;
225                 public Gst.ClockTime internal_calibration;
226                 public Gst.ClockTime last_time;
227                 public weak Gst.Clock master;
228                 public Gst.ClockTime rate_denominator;
229                 public Gst.ClockTime rate_numerator;
230                 public Gst.ClockTime resolution;
231                 public weak GLib.Mutex slave_lock;
232                 public int time_index;
233                 public Gst.ClockTime times;
234                 public bool add_observation (Gst.ClockTime slave, Gst.ClockTime master, double r_squared);
235                 public Gst.ClockTime adjust_unlocked (Gst.ClockTime @internal);
236                 [NoWrapper]
237                 public virtual Gst.ClockTime change_resolution (Gst.ClockTime old_resolution, Gst.ClockTime new_resolution);
238                 public void get_calibration (Gst.ClockTime @internal, Gst.ClockTime external, Gst.ClockTime rate_num, Gst.ClockTime rate_denom);
239                 public virtual Gst.ClockTime get_internal_time ();
240                 public unowned Gst.Clock get_master ();
241                 public virtual Gst.ClockTime get_resolution ();
242                 public Gst.ClockTime get_time ();
243                 [CCode (type = "GstClockID", has_construct_function = false)]
244                 public Clock.periodic_id (Gst.Clock clock, Gst.ClockTime start_time, Gst.ClockTime interval);
245                 public void set_calibration (Gst.ClockTime @internal, Gst.ClockTime external, Gst.ClockTime rate_num, Gst.ClockTime rate_denom);
246                 public bool set_master (Gst.Clock master);
247                 public Gst.ClockTime set_resolution (Gst.ClockTime resolution);
248                 [CCode (type = "GstClockID", has_construct_function = false)]
249                 public Clock.single_shot_id (Gst.Clock clock, Gst.ClockTime time);
250                 public Gst.ClockTime unadjust_unlocked (Gst.ClockTime external);
251                 [NoWrapper]
252                 public virtual void unschedule (Gst.ClockEntry entry);
253                 [NoWrapper]
254                 public virtual Gst.ClockReturn wait (Gst.ClockEntry entry);
255                 [NoWrapper]
256                 public virtual Gst.ClockReturn wait_async (Gst.ClockEntry entry);
257                 [NoWrapper]
258                 public virtual Gst.ClockReturn wait_jitter (Gst.ClockEntry entry, Gst.ClockTimeDiff jitter);
259                 [NoAccessorMethod]
260                 public bool stats { get; set; }
261                 [NoAccessorMethod]
262                 public uint64 timeout { get; set; }
263                 [NoAccessorMethod]
264                 public int window_size { get; set; }
265                 [NoAccessorMethod]
266                 public int window_threshold { get; set; }
267         }
268         [Compact]
269         [CCode (cheader_filename = "gst/gst.h")]
270         public class ClockEntry {
271                 public weak Gst.Clock clock;
272                 public weak Gst.ClockCallback func;
273                 public Gst.ClockTime interval;
274                 public int refcount;
275                 public Gst.ClockReturn status;
276                 public Gst.ClockTime time;
277                 public Gst.ClockEntryType type;
278                 public void* user_data;
279         }
280         [Compact]
281         [CCode (ref_function = "gst_clock_id_ref", unref_function = "gst_clock_id_unref", cheader_filename = "gst/gst.h")]
282         public class ClockID {
283                 public static int compare_func (void* id1, void* id2);
284                 public Gst.ClockTime get_time ();
285                 public void unschedule ();
286                 public Gst.ClockReturn wait (Gst.ClockTimeDiff jitter);
287                 public Gst.ClockReturn wait_async (Gst.ClockCallback func);
288         }
289         [Compact]
290         [CCode (type_id = "GST_TYPE_DATE", cheader_filename = "gst/gst.h")]
291         public class Date {
292         }
293         [Compact]
294         [CCode (cheader_filename = "gst/gst.h")]
295         public class DebugCategory {
296                 public uint color;
297                 public weak string description;
298                 public weak string name;
299                 public int threshold;
300                 [CCode (cname = "GST_CAT_DEBUG")]
301                 public void debug (string format, ...);
302                 [CCode (cname = "GST_CAT_DEBUG_OBJECT")]
303                 public void debug_object (GLib.Object obj, string format, ...);
304                 [CCode (cname = "GST_CAT_ERROR")]
305                 public void error (string format, ...);
306                 [CCode (cname = "GST_CAT_ERROR_OBJECT")]
307                 public void error_object (GLib.Object obj, string format, ...);
308                 public uint get_color ();
309                 public unowned string get_description ();
310                 public unowned string get_name ();
311                 public Gst.DebugLevel get_threshold ();
312                 [CCode (cname = "GST_CAT_INFO")]
313                 public void info (string format, ...);
314                 [CCode (cname = "GST_CAT_INFO_OBJECT")]
315                 public void info_object (GLib.Object obj, string format, ...);
316                 [CCode (cname = "GST_DEBUG_CATEGORY_INIT")]
317                 public void init (string name, uint color, string description);
318                 [CCode (cname = "GST_CAT_LOG")]
319                 public void log (string format, ...);
320                 [CCode (cname = "GST_CAT_LOG_OBJECT")]
321                 public void log_object (GLib.Object obj, string format, ...);
322                 public void reset_threshold ();
323                 public void set_threshold (Gst.DebugLevel level);
324                 [CCode (cname = "GST_CAT_WARNING")]
325                 public void warning (string format, ...);
326                 [CCode (cname = "GST_CAT_WARNING_OBJECT")]
327                 public void warning_object (GLib.Object obj, string format, ...);
328         }
329         [Compact]
330         [CCode (cheader_filename = "gst/gst.h")]
331         public class DebugMessage {
332                 public unowned string @get ();
333         }
334         [CCode (cheader_filename = "gst/gst.h")]
335         public class Element : Gst.Object {
336                 public void* abidata;
337                 public Gst.ClockTimeDiff base_time;
338                 public weak Gst.Bus bus;
339                 public weak Gst.Clock clock;
340                 public Gst.State current_state;
341                 public Gst.StateChangeReturn last_return;
342                 public Gst.State next_state;
343                 public uint16 numpads;
344                 public uint16 numsinkpads;
345                 public uint16 numsrcpads;
346                 public weak GLib.List<Gst.Pad> pads;
347                 public uint32 pads_cookie;
348                 public Gst.State pending_state;
349                 public weak GLib.List<Gst.Pad> sinkpads;
350                 public weak GLib.List<Gst.Pad> srcpads;
351                 public weak GLib.Cond state_cond;
352                 public uint32 state_cookie;
353                 public void* state_lock;
354                 public void abort_state ();
355                 public bool add_pad (owned Gst.Pad pad);
356                 [CCode (cname = "gst_element_class_add_pad_template")]
357                 public class void add_pad_template (Gst.PadTemplate templ);
358                 public virtual Gst.StateChangeReturn change_state (Gst.StateChange transition);
359                 public Gst.StateChangeReturn continue_state (Gst.StateChangeReturn ret);
360                 public void create_all_pads ();
361                 public void found_tags (owned Gst.TagList list);
362                 public void found_tags_for_pad (Gst.Pad pad, owned Gst.TagList list);
363                 public Gst.ClockTime get_base_time ();
364                 public Gst.Bus get_bus ();
365                 public unowned Gst.Clock get_clock ();
366                 public unowned Gst.Pad get_compatible_pad (Gst.Pad pad, Gst.Caps? caps);
367                 public unowned Gst.PadTemplate get_compatible_pad_template (Gst.PadTemplate compattempl);
368                 public unowned Gst.ElementFactory get_factory ();
369                 public virtual unowned Gst.Index get_index ();
370                 public unowned Gst.Pad get_pad (string name);
371                 [CCode (cname = "gst_element_class_get_pad_template")]
372                 public class unowned Gst.PadTemplate get_pad_template (string name);
373                 [CCode (cname = "gst_element_class_get_pad_template_list")]
374                 public class unowned GLib.List<Gst.PadTemplate> get_pad_template_list ();
375                 public virtual Gst.QueryType get_query_types ();
376                 public unowned Gst.Pad get_request_pad (string name);
377                 public Gst.ClockTime get_start_time ();
378                 public virtual Gst.StateChangeReturn get_state (out Gst.State state, out Gst.State pending, Gst.ClockTime timeout);
379                 public Gst.Pad? get_static_pad (string name);
380                 public bool implements_interface (GLib.Type iface_type);
381                 [CCode (cname = "gst_element_class_install_std_props")]
382                 public class void install_std_props (...);
383                 public bool is_indexable ();
384                 public bool is_locked_state ();
385                 public unowned Gst.Iterator iterate_pads ();
386                 public unowned Gst.Iterator iterate_sink_pads ();
387                 public unowned Gst.Iterator iterate_src_pads ();
388                 public bool link (Gst.Element dest);
389                 public bool link_filtered (Gst.Element dest, Gst.Caps filter);
390                 public bool link_many (Gst.Element element_2, ...);
391                 public bool link_pads (string srcpadname, Gst.Element dest, string destpadname);
392                 public bool link_pads_filtered (string srcpadname, Gst.Element dest, string destpadname, Gst.Caps filter);
393                 public void lost_state ();
394                 public void lost_state_full (bool new_base_time);
395                 public static Gst.Element? make_from_uri (Gst.URIType type, string uri, string? elementname);
396                 public void message_full (Gst.MessageType type, GLib.Quark domain, int code, string text, string debug, string file, string function, int line);
397                 public bool post_message (owned Gst.Message message);
398                 public virtual unowned Gst.Clock provide_clock ();
399                 public bool provides_clock ();
400                 public virtual bool query (Gst.Query query);
401                 public bool query_convert (Gst.Format src_format, int64 src_val, Gst.Format dest_format, int64 dest_val);
402                 public bool query_duration (ref Gst.Format format, out int64 duration);
403                 public bool query_position (ref Gst.Format format, out int64 cur);
404                 public static bool register (Gst.Plugin plugin, string name, uint rank, GLib.Type type);
405                 [NoWrapper]
406                 public virtual void release_pad (Gst.Pad pad);
407                 public void release_request_pad (Gst.Pad pad);
408                 public bool remove_pad (Gst.Pad pad);
409                 [NoWrapper]
410                 public virtual unowned Gst.Pad request_new_pad (Gst.PadTemplate templ, string? name);
411                 public bool requires_clock ();
412                 public bool seek (double rate, Gst.Format format, Gst.SeekFlags flags, Gst.SeekType cur_type, int64 cur, Gst.SeekType stop_type, int64 stop);
413                 public bool seek_simple (Gst.Format format, Gst.SeekFlags seek_flags, int64 seek_pos);
414                 public virtual bool send_event (owned Gst.Event event);
415                 public void set_base_time (Gst.ClockTime time);
416                 public virtual void set_bus (Gst.Bus? bus);
417                 public virtual bool set_clock (Gst.Clock clock);
418                 [CCode (cname = "gst_element_class_set_details")]
419                 public class void set_details (Gst.ElementDetails details);
420                 [CCode (cname = "gst_element_class_set_details_simple")]
421                 public class void set_details_simple (string longname, string classification, string description, string author);
422                 public virtual void set_index (Gst.Index index);
423                 public bool set_locked_state (bool locked_state);
424                 public void set_start_time (Gst.ClockTime time);
425                 public virtual Gst.StateChangeReturn set_state (Gst.State state);
426                 public bool sync_state_with_parent ();
427                 public void unlink (Gst.Element dest);
428                 public void unlink_many (Gst.Element element_2, ...);
429                 public void unlink_pads (string srcpadname, Gst.Element dest, string destpadname);
430                 [HasEmitter]
431                 public virtual signal void no_more_pads ();
432                 public virtual signal void pad_added (Gst.Pad pad);
433                 public virtual signal void pad_removed (Gst.Pad pad);
434         }
435         [CCode (cheader_filename = "gst/gst.h")]
436         public class ElementFactory : Gst.PluginFeature {
437                 public Gst.ElementDetails details;
438                 public weak GLib.List interfaces;
439                 public uint numpadtemplates;
440                 public weak GLib.List staticpadtemplates;
441                 public GLib.Type type;
442                 public weak string uri_protocols;
443                 public uint uri_type;
444                 public bool can_sink_caps (Gst.Caps caps);
445                 public bool can_src_caps (Gst.Caps caps);
446                 public Gst.Element? create (string? name);
447                 public static unowned Gst.ElementFactory find (string name);
448                 public unowned string get_author ();
449                 public unowned string get_description ();
450                 public GLib.Type get_element_type ();
451                 public unowned string get_klass ();
452                 public unowned string get_longname ();
453                 public uint get_num_pad_templates ();
454                 public unowned GLib.List get_static_pad_templates ();
455                 public unowned string get_uri_protocols ();
456                 public int get_uri_type ();
457                 public bool has_interface (string interfacename);
458                 public static Gst.Element? make (string factoryname, string? name);
459         }
460         [CCode (ref_function = "gst_event_ref", unref_function = "gst_event_unref", cheader_filename = "gst/gst.h")]
461         public class Event {
462                 public void* abidata;
463                 public weak Gst.Object src;
464                 public weak Gst.Structure structure;
465                 public uint64 timestamp;
466                 public Gst.EventType type;
467                 [CCode (has_construct_function = false)]
468                 public Event.buffer_size (Gst.Format format, int64 minsize, int64 maxsize, bool @async);
469                 [CCode (has_construct_function = false)]
470                 public Event.custom (Gst.EventType type, owned Gst.Structure structure);
471                 [CCode (has_construct_function = false)]
472                 public Event.eos ();
473                 [CCode (has_construct_function = false)]
474                 public Event.flush_start ();
475                 [CCode (has_construct_function = false)]
476                 public Event.flush_stop ();
477                 public uint32 get_seqnum ();
478                 public unowned Gst.Structure get_structure ();
479                 public bool has_name (string name);
480                 [CCode (has_construct_function = false)]
481                 public Event.latency (Gst.ClockTime latency);
482                 [CCode (has_construct_function = false)]
483                 public Event.navigation (owned Gst.Structure structure);
484                 [CCode (has_construct_function = false)]
485                 public Event.new_segment (bool update, double rate, Gst.Format format, int64 start, int64 stop, int64 position);
486                 [CCode (has_construct_function = false)]
487                 public Event.new_segment_full (bool update, double rate, double applied_rate, Gst.Format format, int64 start, int64 stop, int64 position);
488                 public void parse_buffer_size (out Gst.Format format, out int64 minsize, out int64 maxsize, out bool @async);
489                 public void parse_latency (out Gst.ClockTime latency);
490                 public void parse_new_segment (out bool update, out double rate, out Gst.Format format, out int64 start, out int64 stop, out int64 position);
491                 public void parse_new_segment_full (out bool update, out double rate, out double applied_rate, out Gst.Format format, out int64 start, out int64 stop, out int64 position);
492                 public void parse_qos (out double proportion, out Gst.ClockTimeDiff diff, out Gst.ClockTime timestamp);
493                 public void parse_seek (out double rate, out Gst.Format format, out Gst.SeekFlags flags, out Gst.SeekType start_type, out int64 start, out Gst.SeekType stop_type, out int64 stop);
494                 public void parse_step (Gst.Format format, uint64 amount, double rate, bool flush, bool intermediate);
495                 public void parse_tag (out Gst.TagList taglist);
496                 [CCode (has_construct_function = false)]
497                 public Event.qos (double proportion, Gst.ClockTimeDiff diff, Gst.ClockTime timestamp);
498                 [CCode (has_construct_function = false)]
499                 public Event.seek (double rate, Gst.Format format, Gst.SeekFlags flags, Gst.SeekType start_type, int64 start, Gst.SeekType stop_type, int64 stop);
500                 public void set_seqnum (uint32 seqnum);
501                 [CCode (has_construct_function = false)]
502                 public Event.step (Gst.Format format, uint64 amount, double rate, bool flush, bool intermediate);
503                 [CCode (has_construct_function = false)]
504                 public Event.tag (Gst.TagList taglist);
505                 public static Gst.EventTypeFlags type_get_flags (Gst.EventType type);
506                 public static GLib.Quark type_to_quark (Gst.EventType type);
507         }
508         [Compact]
509         [CCode (type_id = "GST_TYPE_GERROR", cheader_filename = "gst/gst.h")]
510         public class GError {
511         }
512         [CCode (cheader_filename = "gst/gst.h")]
513         public class GhostPad : Gst.Pad {
514                 [CCode (type = "GstPad*", has_construct_function = false)]
515                 public GhostPad (string? name, Gst.Pad target);
516                 public bool @construct ();
517                 [CCode (type = "GstPad*", has_construct_function = false)]
518                 public GhostPad.from_template (string name, Gst.Pad target, Gst.PadTemplate templ);
519                 public unowned Gst.Pad get_target ();
520                 [CCode (type = "GstPad*", has_construct_function = false)]
521                 public GhostPad.no_target (string name, Gst.PadDirection dir);
522                 [CCode (type = "GstPad*", has_construct_function = false)]
523                 public GhostPad.no_target_from_template (string name, Gst.PadTemplate templ);
524                 public bool set_target (Gst.Pad? newtarget);
525         }
526         [CCode (cheader_filename = "gst/gst.h")]
527         public class Index : Gst.Object {
528                 public weak Gst.IndexGroup curgroup;
529                 public weak Gst.IndexFilter filter;
530                 public void* filter_user_data;
531                 public weak GLib.DestroyNotify filter_user_data_destroy;
532                 public weak GLib.List groups;
533                 public int last_id;
534                 public int maxgroup;
535                 public Gst.IndexResolverMethod method;
536                 public void* resolver_user_data;
537                 public weak GLib.DestroyNotify resolver_user_data_destroy;
538                 public weak GLib.HashTable writers;
539                 [CCode (has_construct_function = false)]
540                 public Index ();
541                 public unowned Gst.IndexEntry add_association (int id, Gst.AssocFlags flags, Gst.Format format, int64 value);
542                 public unowned Gst.IndexEntry add_associationv (int id, Gst.AssocFlags flags, int n, Gst.IndexAssociation list);
543                 [NoWrapper]
544                 public virtual void add_entry (Gst.IndexEntry entry);
545                 public unowned Gst.IndexEntry add_format (int id, Gst.Format format);
546                 public unowned Gst.IndexEntry add_id (int id, string description);
547                 public unowned Gst.IndexEntry add_object (int id, string key, GLib.Type type, void* object);
548                 public virtual void commit (int id);
549                 public virtual unowned Gst.IndexEntry get_assoc_entry (int id, Gst.IndexLookupMethod method, Gst.AssocFlags flags, Gst.Format format, int64 value);
550                 public unowned Gst.IndexEntry get_assoc_entry_full (int id, Gst.IndexLookupMethod method, Gst.AssocFlags flags, Gst.Format format, int64 value, GLib.CompareDataFunc func);
551                 public Gst.IndexCertainty get_certainty ();
552                 public int get_group ();
553                 public virtual bool get_writer_id (Gst.Object writer, int id);
554                 [CCode (type = "gint", has_construct_function = false)]
555                 public Index.group (Gst.Index index);
556                 public void set_certainty (Gst.IndexCertainty certainty);
557                 public void set_filter (Gst.IndexFilter filter);
558                 public void set_filter_full (Gst.IndexFilter filter, GLib.DestroyNotify user_data_destroy);
559                 public bool set_group (int groupnum);
560                 public void set_resolver (Gst.IndexResolver resolver);
561                 public void set_resolver_full (Gst.IndexResolver resolver, GLib.DestroyNotify user_data_destroy);
562                 [NoAccessorMethod]
563                 public Gst.IndexResolver resolver { owned get; set; }
564                 public virtual signal void entry_added (Gst.IndexEntry entry);
565         }
566         [Compact]
567         [CCode (cheader_filename = "gst/gst.h")]
568         public class IndexAssociation {
569                 public Gst.Format format;
570                 public int64 value;
571         }
572         [Compact]
573         [CCode (copy_function = "gst_index_entry_copy", type_id = "GST_TYPE_INDEX_ENTRY", cheader_filename = "gst/gst.h")]
574         public class IndexEntry {
575                 public void* data;
576                 public int id;
577                 public Gst.IndexEntryType type;
578                 public bool assoc_map (Gst.Format format, int64 value);
579                 public Gst.IndexEntry copy ();
580         }
581         [CCode (cheader_filename = "gst/gst.h")]
582         public class IndexFactory : Gst.PluginFeature {
583                 public weak string longdesc;
584                 public GLib.Type type;
585                 [CCode (has_construct_function = false)]
586                 public IndexFactory (string name, string longdesc, GLib.Type type);
587                 public unowned Gst.Index create ();
588                 public void destroy ();
589                 public static unowned Gst.IndexFactory find (string name);
590                 public static unowned Gst.Index make (string name);
591         }
592         [Compact]
593         [CCode (cheader_filename = "gst/gst.h")]
594         public class IndexGroup {
595                 public Gst.IndexCertainty certainty;
596                 public weak GLib.List entries;
597                 public int groupnum;
598                 public int peergroup;
599         }
600         [Compact]
601         [CCode (cheader_filename = "gst/gst.h")]
602         public class Iterator {
603                 public uint32 cookie;
604                 public weak Gst.IteratorFreeFunction free;
605                 public weak Gst.IteratorItemFunction item;
606                 public weak GLib.Mutex @lock;
607                 public uint32 master_cookie;
608                 public weak Gst.IteratorNextFunction next;
609                 public weak Gst.Iterator pushed;
610                 public weak Gst.IteratorResyncFunction resync;
611                 public GLib.Type type;
612                 [CCode (has_construct_function = false)]
613                 public Iterator (uint size, GLib.Type type, GLib.Mutex @lock, uint32 master_cookie, Gst.IteratorNextFunction next, Gst.IteratorItemFunction item, Gst.IteratorResyncFunction resync, Gst.IteratorFreeFunction free);
614                 public unowned Gst.Iterator filter (GLib.CompareFunc func);
615                 public void* find_custom (GLib.CompareFunc func, void* user_data);
616                 public Gst.IteratorResult fold ([CCode (delegate_target_pos = 2.1)] Gst.IteratorFoldFunction func, Gst.Value? ret);
617                 public Gst.IteratorResult @foreach (GLib.Func func);
618                 [CCode (has_construct_function = false)]
619                 public Iterator.list (GLib.Type type, GLib.Mutex @lock, uint32 master_cookie, GLib.List list, void* owner, Gst.IteratorItemFunction item, Gst.IteratorDisposeFunction free);
620                 public void push (Gst.Iterator other);
621         }
622         [CCode (ref_function = "gst_message_ref", unref_function = "gst_message_unref", cheader_filename = "gst/gst.h")]
623         public class Message {
624                 public void* abidata;
625                 public weak GLib.Cond cond;
626                 public weak GLib.Mutex @lock;
627                 public weak Gst.Object src;
628                 public weak Gst.Structure structure;
629                 public uint64 timestamp;
630                 public Gst.MessageType type;
631                 [CCode (has_construct_function = false)]
632                 public Message.application (Gst.Object src, owned Gst.Structure structure);
633                 [CCode (has_construct_function = false)]
634                 public Message.async_done (Gst.Object src);
635                 [CCode (has_construct_function = false)]
636                 public Message.async_start (Gst.Object src, bool new_base_time);
637                 [CCode (has_construct_function = false)]
638                 public Message.buffering (Gst.Object src, int percent);
639                 [CCode (has_construct_function = false)]
640                 public Message.clock_lost (Gst.Object src, Gst.Clock clock);
641                 [CCode (has_construct_function = false)]
642                 public Message.clock_provide (Gst.Object src, Gst.Clock clock, bool ready);
643                 [CCode (has_construct_function = false)]
644                 public Message.custom (Gst.MessageType type, Gst.Object src, owned Gst.Structure structure);
645                 [CCode (has_construct_function = false)]
646                 public Message.duration (Gst.Object src, Gst.Format format, int64 duration);
647                 [CCode (has_construct_function = false)]
648                 public Message.element (Gst.Object src, owned Gst.Structure structure);
649                 [CCode (has_construct_function = false)]
650                 public Message.eos (Gst.Object src);
651                 [CCode (has_construct_function = false)]
652                 public Message.error (Gst.Object src, GLib.Error error, string debug);
653                 public uint32 get_seqnum ();
654                 public Gst.Value get_stream_status_object ();
655                 public unowned Gst.Structure get_structure ();
656                 [CCode (has_construct_function = false)]
657                 public Message.info (Gst.Object src, GLib.Error error, string debug);
658                 [CCode (has_construct_function = false)]
659                 public Message.latency (Gst.Object src);
660                 [ReturnsModifiedPointer]
661                 public void make_writable ();
662                 [CCode (has_construct_function = false)]
663                 public Message.new_clock (Gst.Object src, Gst.Clock clock);
664                 public void parse_async_start (out bool new_base_time);
665                 public void parse_buffering (out int percent);
666                 public void parse_buffering_stats (Gst.BufferingMode mode, int avg_in, int avg_out, int64 buffering_left);
667                 public void parse_clock_lost (out unowned Gst.Clock clock);
668                 public void parse_clock_provide (out unowned Gst.Clock clock, out bool ready);
669                 public void parse_duration (out Gst.Format format, out int64 duration);
670                 public void parse_error (out GLib.Error gerror, out string debug);
671                 public void parse_info (out GLib.Error gerror, out string debug);
672                 public void parse_new_clock (out unowned Gst.Clock clock);
673                 public void parse_request_state (Gst.State state);
674                 public void parse_segment_done (out Gst.Format format, out int64 position);
675                 public void parse_segment_start (out Gst.Format format, out int64 position);
676                 public void parse_state_changed (out Gst.State oldstate, out Gst.State newstate, out Gst.State pending);
677                 public void parse_step_done (Gst.Format format, uint64 amount, double rate, bool flush, bool intermediate, uint64 duration, bool eos);
678                 public void parse_step_start (bool active, Gst.Format format, uint64 amount, double rate, bool flush, bool intermediate);
679                 public void parse_stream_status (Gst.StreamStatusType type, out unowned Gst.Element owner);
680                 public void parse_structure_change (Gst.StructureChangeType type, out unowned Gst.Element owner, bool busy);
681                 public void parse_tag (out Gst.TagList tag_list);
682                 public void parse_tag_full (out unowned Gst.Pad pad, out unowned Gst.TagList tag_list);
683                 public void parse_warning (out GLib.Error gerror, out string debug);
684                 [CCode (has_construct_function = false)]
685                 public Message.request_state (Gst.Object src, Gst.State state);
686                 [CCode (has_construct_function = false)]
687                 public Message.segment_done (Gst.Object src, Gst.Format format, int64 position);
688                 [CCode (has_construct_function = false)]
689                 public Message.segment_start (Gst.Object src, Gst.Format format, int64 position);
690                 public void set_buffering_stats (Gst.BufferingMode mode, int avg_in, int avg_out, int64 buffering_left);
691                 public void set_seqnum (uint32 seqnum);
692                 public void set_stream_status_object (Gst.Value object);
693                 [CCode (has_construct_function = false)]
694                 public Message.state_changed (Gst.Object src, Gst.State oldstate, Gst.State newstate, Gst.State pending);
695                 [CCode (has_construct_function = false)]
696                 public Message.state_dirty (Gst.Object src);
697                 [CCode (has_construct_function = false)]
698                 public Message.step_done (Gst.Object src, Gst.Format format, uint64 amount, double rate, bool flush, bool intermediate, uint64 duration, bool eos);
699                 [CCode (has_construct_function = false)]
700                 public Message.step_start (Gst.Object src, bool active, Gst.Format format, uint64 amount, double rate, bool flush, bool intermediate);
701                 [CCode (has_construct_function = false)]
702                 public Message.stream_status (Gst.Object src, Gst.StreamStatusType type, Gst.Element owner);
703                 [CCode (has_construct_function = false)]
704                 public Message.structure_change (Gst.Object src, Gst.StructureChangeType type, Gst.Element owner, bool busy);
705                 [CCode (has_construct_function = false)]
706                 public Message.tag (Gst.Object src, Gst.TagList tag_list);
707                 [CCode (has_construct_function = false)]
708                 public Message.tag_full (Gst.Object src, Gst.Pad pad, Gst.TagList tag_list);
709                 public static GLib.Quark type_to_quark (Gst.MessageType type);
710                 [CCode (has_construct_function = false)]
711                 public Message.warning (Gst.Object src, GLib.Error error, string debug);
712         }
713         [Compact]
714         [CCode (cheader_filename = "gst/gst.h")]
715         public class MessageClass : Gst.MiniObjectClass {
716         }
717         [CCode (ref_function = "gst_mini_object_ref", unref_function = "gst_mini_object_unref", cheader_filename = "gst/gst.h")]
718         public class MiniObject {
719                 public uint flags;
720                 public int refcount;
721                 [CCode (has_construct_function = false)]
722                 public MiniObject (GLib.Type type);
723                 public Gst.MiniObject copy ();
724                 public bool is_writable ();
725                 [ReturnsModifiedPointer]
726                 public void make_writable ();
727                 public void replace (Gst.MiniObject newdata);
728         }
729         [Compact]
730         [CCode (cheader_filename = "gst/gst.h")]
731         public class MiniObjectClass : GLib.TypeClass {
732                 public weak Gst.MiniObjectCopyFunction copy;
733                 public weak Gst.MiniObjectFinalizeFunction finalize;
734         }
735         [CCode (ref_function = "gst_object_ref", unref_function = "gst_object_unref", cheader_filename = "gst/gst.h")]
736         public class Object : GLib.Object {
737                 public uint32 flags;
738                 public weak GLib.Mutex @lock;
739                 public weak string name_prefix;
740                 public weak Gst.Object parent;
741                 public int refcount;
742                 public static bool check_uniqueness (GLib.List list, string name);
743                 public static void default_deep_notify (GLib.Object object, Gst.Object orig, GLib.ParamSpec pspec, string excluded_props);
744                 public void default_error (GLib.Error error, string debug);
745                 public string get_name ();
746                 public string get_name_prefix ();
747                 public Gst.Object get_parent ();
748                 public string get_path_string ();
749                 public bool has_ancestor (Gst.Object ancestor);
750                 public unowned Gst.Object @ref ();
751                 public static void ref_sink (void* object);
752                 public static void replace (ref Gst.Object oldobj, Gst.Object newobj);
753                 public virtual void restore_thyself (void* self);
754                 public virtual void* save_thyself (void* parent);
755                 public bool set_name (string name);
756                 public void set_name_prefix (string name_prefix);
757                 public bool set_parent (Gst.Object parent);
758                 public void sink ();
759                 public void unparent ();
760                 public void unref ();
761                 public string name { get; set construct; }
762                 public virtual signal void deep_notify (Gst.Object orig, GLib.ParamSpec pspec);
763                 public virtual signal void object_saved (void* parent);
764                 public virtual signal void parent_set (Gst.Object parent);
765                 public virtual signal void parent_unset (Gst.Object parent);
766         }
767         [CCode (cheader_filename = "gst/gst.h")]
768         public class Pad : Gst.Object {
769                 public void* abidata;
770                 public weak Gst.PadAcceptCapsFunction acceptcapsfunc;
771                 public weak Gst.PadActivateFunction activatefunc;
772                 public weak Gst.PadActivateModeFunction activatepullfunc;
773                 public weak Gst.PadActivateModeFunction activatepushfunc;
774                 public weak Gst.PadBlockCallback block_callback;
775                 public weak GLib.Cond block_cond;
776                 public void* block_data;
777                 public weak GLib.DestroyNotify block_destroy_data;
778                 public weak Gst.PadBufferAllocFunction bufferallocfunc;
779                 public weak Gst.PadChainFunction chainfunc;
780                 public weak Gst.PadCheckGetRangeFunction checkgetrangefunc;
781                 public int do_buffer_signals;
782                 public int do_event_signals;
783                 public void* element_private;
784                 public weak Gst.PadEventFunction eventfunc;
785                 public weak Gst.PadFixateCapsFunction fixatecapsfunc;
786                 public weak Gst.PadGetCapsFunction getcapsfunc;
787                 public weak Gst.PadGetRangeFunction getrangefunc;
788                 public weak Gst.PadIntLinkFunction intlinkfunc;
789                 public weak Gst.PadIterIntLinkFunction iterintlinkfunc;
790                 public weak Gst.PadLinkFunction linkfunc;
791                 public Gst.ActivateMode mode;
792                 public weak Gst.PadTemplate padtemplate;
793                 public weak Gst.Pad peer;
794                 public weak GLib.Cond preroll_cond;
795                 public weak GLib.Mutex preroll_lock;
796                 public weak Gst.PadQueryFunction queryfunc;
797                 public void* sched_private;
798                 public weak Gst.PadSetCapsFunction setcapsfunc;
799                 public void* stream_rec_lock;
800                 public weak Gst.Task task;
801                 public weak Gst.PadUnlinkFunction unlinkfunc;
802                 [CCode (array_length_pos = 0, delegate_target_pos = 0)]
803                 public Pad (string name, Gst.PadDirection direction);
804                 public bool accept_caps (Gst.Caps caps);
805                 public bool activate_pull (bool active);
806                 public bool activate_push (bool active);
807                 public uint add_buffer_probe (Gst.BufferProbeCallback handler);
808                 public uint add_buffer_probe_full (Gst.BufferProbeCallback handler, GLib.DestroyNotify notify);
809                 public uint add_data_probe (Gst.DataProbeCallback handler);
810                 public uint add_data_probe_full (Gst.DataProbeCallback handler, GLib.DestroyNotify notify);
811                 public uint add_event_probe (Gst.EventProbeCallback handler);
812                 public uint add_event_probe_full (Gst.EventProbeCallback handler, GLib.DestroyNotify notify);
813                 public Gst.FlowReturn alloc_buffer (uint64 offset, int size, Gst.Caps caps, out unowned Gst.Buffer buf);
814                 public Gst.FlowReturn alloc_buffer_and_set_caps (uint64 offset, int size, Gst.Caps caps, out unowned Gst.Buffer buf);
815                 public bool can_link (Gst.Pad sinkpad);
816                 public Gst.FlowReturn chain (owned Gst.Buffer buffer);
817                 public Gst.FlowReturn chain_list (Gst.BufferList list);
818                 public bool check_pull_range ();
819                 public bool dispatcher (Gst.PadDispatcherFunction dispatch, void* data);
820                 public bool event_default (Gst.Event event);
821                 public void fixate_caps (Gst.Caps caps);
822                 [CCode (has_construct_function = false)]
823                 public Pad.from_static_template (Gst.StaticPadTemplate templ, string name);
824                 [CCode (has_construct_function = false)]
825                 public Pad.from_template (Gst.PadTemplate templ, string name);
826                 public Gst.Caps get_allowed_caps ();
827                 public Gst.Caps get_caps ();
828                 public Gst.PadDirection get_direction ();
829                 public void* get_element_private ();
830                 public unowned Gst.Caps get_fixed_caps_func ();
831                 public unowned GLib.List get_internal_links ();
832                 public unowned GLib.List get_internal_links_default ();
833                 public Gst.Caps get_negotiated_caps ();
834                 public unowned Gst.PadTemplate get_pad_template ();
835                 public unowned Gst.Caps get_pad_template_caps ();
836                 public unowned Gst.Element get_parent_element ();
837                 public Gst.Pad get_peer ();
838                 public Gst.QueryType get_query_types ();
839                 public Gst.QueryType get_query_types_default ();
840                 public Gst.FlowReturn get_range (uint64 offset, uint size, out unowned Gst.Buffer buffer);
841                 public bool is_active ();
842                 public bool is_blocked ();
843                 public bool is_blocking ();
844                 public bool is_linked ();
845                 public unowned Gst.Iterator iterate_internal_links ();
846                 public unowned Gst.Iterator iterate_internal_links_default ();
847                 public Gst.PadLinkReturn link (Gst.Pad sinkpad);
848                 public void load_and_link (Gst.Object parent);
849                 public bool pause_task ();
850                 public bool peer_accept_caps (Gst.Caps caps);
851                 public Gst.Caps peer_get_caps ();
852                 public bool peer_query (Gst.Query query);
853                 public unowned Gst.Caps proxy_getcaps ();
854                 public bool proxy_setcaps (Gst.Caps caps);
855                 public Gst.FlowReturn pull_range (uint64 offset, uint size, out unowned Gst.Buffer buffer);
856                 public Gst.FlowReturn push (owned Gst.Buffer buffer);
857                 public bool push_event (owned Gst.Event event);
858                 public Gst.FlowReturn push_list (Gst.BufferList list);
859                 public bool query (Gst.Query query);
860                 public bool query_convert (Gst.Format src_format, int64 src_val, Gst.Format dest_format, int64 dest_val);
861                 public bool query_default (Gst.Query query);
862                 public bool query_duration (Gst.Format format, int64 duration);
863                 public bool query_peer_convert (Gst.Format src_format, int64 src_val, Gst.Format dest_format, int64 dest_val);
864                 public bool query_peer_duration (Gst.Format format, int64 duration);
865                 public bool query_peer_position (Gst.Format format, int64 cur);
866                 public bool query_position (Gst.Format format, int64 cur);
867                 public void remove_buffer_probe (uint handler_id);
868                 public void remove_data_probe (uint handler_id);
869                 public void remove_event_probe (uint handler_id);
870                 public bool send_event (owned Gst.Event event);
871                 public void set_acceptcaps_function (Gst.PadAcceptCapsFunction acceptcaps);
872                 public void set_activate_function (Gst.PadActivateFunction activate);
873                 public void set_activatepull_function (Gst.PadActivateModeFunction activatepull);
874                 public void set_activatepush_function (Gst.PadActivateModeFunction activatepush);
875                 public bool set_active (bool active);
876                 public bool set_blocked (bool blocked);
877                 public bool set_blocked_async (bool blocked, Gst.PadBlockCallback callback);
878                 public bool set_blocked_async_full (bool blocked, Gst.PadBlockCallback callback, GLib.DestroyNotify destroy_data);
879                 public void set_bufferalloc_function (Gst.PadBufferAllocFunction bufalloc);
880                 public bool set_caps (Gst.Caps? caps);
881                 public void set_chain_function (Gst.PadChainFunction chain);
882                 public void set_chain_list_function (Gst.PadChainListFunction chainlist);
883                 public void set_checkgetrange_function (Gst.PadCheckGetRangeFunction check);
884                 public void set_element_private (void* priv);
885                 public void set_event_function (Gst.PadEventFunction event);
886                 public void set_fixatecaps_function (Gst.PadFixateCapsFunction fixatecaps);
887                 public void set_getcaps_function (Gst.PadGetCapsFunction getcaps);
888                 public void set_getrange_function (Gst.PadGetRangeFunction @get);
889                 public void set_internal_link_function (Gst.PadIntLinkFunction intlink);
890                 public void set_iterate_internal_links_function (Gst.PadIterIntLinkFunction iterintlink);
891                 public void set_link_function (Gst.PadLinkFunction link);
892                 public void set_query_function (Gst.PadQueryFunction query);
893                 public void set_setcaps_function (Gst.PadSetCapsFunction setcaps);
894                 public void set_unlink_function (Gst.PadUnlinkFunction unlink);
895                 public bool start_task (Gst.TaskFunction func, void* data);
896                 public bool stop_task ();
897                 public bool unlink (Gst.Pad sinkpad);
898                 public void use_fixed_caps ();
899                 public Gst.Caps caps { get; }
900                 public Gst.PadDirection direction { get; construct; }
901                 [NoAccessorMethod]
902                 public Gst.PadTemplate template { owned get; set; }
903                 public virtual signal bool have_data (Gst.MiniObject data);
904                 public virtual signal void linked (Gst.Pad peer);
905                 public virtual signal void request_link ();
906                 public virtual signal void unlinked (Gst.Pad peer);
907         }
908         [CCode (cheader_filename = "gst/gst.h")]
909         public class PadTemplate : Gst.Object {
910                 [CCode (has_construct_function = false)]
911                 public PadTemplate (string name_template, Gst.PadDirection direction, Gst.PadPresence presence, owned Gst.Caps caps);
912                 public unowned Gst.Caps get_caps ();
913                 public Gst.Caps caps { get; construct; }
914                 [NoAccessorMethod]
915                 public Gst.PadDirection direction { get; construct; }
916                 [NoAccessorMethod]
917                 public string name_template { owned get; construct; }
918                 [NoAccessorMethod]
919                 public Gst.PadPresence presence { get; construct; }
920                 [HasEmitter]
921                 public virtual signal void pad_created (Gst.Pad pad);
922         }
923         [CCode (cheader_filename = "gst/gst.h")]
924         public class ParamSpecFraction : GLib.ParamSpec {
925                 public int def_den;
926                 public int def_num;
927                 public int max_den;
928                 public int max_num;
929                 public int min_den;
930                 public int min_num;
931         }
932         [CCode (cheader_filename = "gst/gst.h")]
933         public class ParamSpecMiniObject : GLib.ParamSpec {
934         }
935         [Compact]
936         [CCode (cheader_filename = "gst/gst.h")]
937         public class ParseContext {
938                 [CCode (has_construct_function = false)]
939                 public ParseContext ();
940                 public unowned string get_missing_elements ();
941         }
942         [CCode (cheader_filename = "gst/gst.h")]
943         public class Pipeline : Gst.Bin, Gst.ChildProxy {
944                 public weak Gst.Clock fixed_clock;
945                 public Gst.ClockTime stream_time;
946                 [CCode (type = "GstElement*", has_construct_function = false)]
947                 public Pipeline (string name);
948                 public void auto_clock ();
949                 public bool get_auto_flush_bus ();
950                 public Gst.Bus get_bus ();
951                 public unowned Gst.Clock get_clock ();
952                 public Gst.ClockTime get_delay ();
953                 public Gst.ClockTime get_last_stream_time ();
954                 public void set_auto_flush_bus (bool auto_flush);
955                 public bool set_clock (Gst.Clock clock);
956                 public void set_delay (Gst.ClockTime delay);
957                 public void set_new_stream_time (Gst.ClockTime time);
958                 public void use_clock (Gst.Clock clock);
959                 public bool auto_flush_bus { get; set; }
960                 public uint64 delay { get; set; }
961         }
962         [CCode (cheader_filename = "gst/gst.h")]
963         public class Plugin : Gst.Object {
964                 public weak string basename;
965                 public weak Gst.PluginDesc desc;
966                 public ulong file_mtime;
967                 public int64 file_size;
968                 public weak string filename;
969                 public uint flags;
970                 public weak GLib.Module module;
971                 public weak Gst.PluginDesc orig_desc;
972                 public bool registered;
973                 public void add_dependency (string env_vars, string paths, string names, Gst.PluginDependencyFlags flags);
974                 public void add_dependency_simple (string env_vars, string paths, string names, Gst.PluginDependencyFlags flags);
975                 public static GLib.Quark error_quark ();
976                 public unowned Gst.Structure get_cache_data ();
977                 public unowned string get_description ();
978                 public unowned string get_filename ();
979                 public unowned string get_license ();
980                 public unowned GLib.Module get_module ();
981                 public unowned string get_name ();
982                 public unowned string get_origin ();
983                 public unowned string get_package ();
984                 public unowned string get_source ();
985                 public unowned string get_version ();
986                 public bool is_loaded ();
987                 public static void list_free (GLib.List list);
988                 public unowned Gst.Plugin load ();
989                 public static unowned Gst.Plugin load_by_name (string name);
990                 public static unowned Gst.Plugin load_file (string filename) throws GLib.Error;
991                 public bool name_filter (string name);
992                 public static bool register_static (int major_version, int minor_version, string name, string description, Gst.PluginInitFunc init_func, string version, string license, string source, string package, string origin);
993                 public static bool register_static_full (int major_version, int minor_version, string name, string description, Gst.PluginInitFullFunc init_full_func, string version, string license, string source, string package, string origin);
994                 public void set_cache_data (Gst.Structure cache_data);
995         }
996         [Compact]
997         [CCode (cheader_filename = "gst/gst.h")]
998         public class PluginDesc {
999                 public weak string description;
1000                 public weak string license;
1001                 public int major_version;
1002                 public int minor_version;
1003                 public weak string name;
1004                 public weak string origin;
1005                 public weak string package;
1006                 public weak Gst.PluginInitFunc plugin_init;
1007                 public weak string source;
1008                 public weak string version;
1009         }
1010         [CCode (cheader_filename = "gst/gst.h")]
1011         public class PluginFeature : Gst.Object {
1012                 public bool loaded;
1013                 public weak string name;
1014                 public weak string plugin_name;
1015                 public uint rank;
1016                 public bool check_version (uint min_major, uint min_minor, uint min_micro);
1017                 public unowned string get_name ();
1018                 public uint get_rank ();
1019                 public static void list_free (GLib.List list);
1020                 public unowned Gst.PluginFeature load ();
1021                 public void set_name (string name);
1022                 public void set_rank (uint rank);
1023                 public bool type_name_filter (Gst.TypeNameData data);
1024         }
1025         [Compact]
1026         [CCode (cheader_filename = "gst/gst.h")]
1027         public class Poll {
1028                 [CCode (has_construct_function = false)]
1029                 public Poll (bool controllable);
1030                 public bool add_fd (Gst.PollFD fd);
1031                 public bool read_control ();
1032                 public bool remove_fd (Gst.PollFD fd);
1033                 public void restart ();
1034                 public bool set_controllable (bool controllable);
1035                 public void set_flushing (bool flushing);
1036                 [CCode (has_construct_function = false)]
1037                 public Poll.timer ();
1038                 public int wait (Gst.ClockTime timeout);
1039                 public bool write_control ();
1040         }
1041         [Compact]
1042         [CCode (cheader_filename = "gst/gst.h")]
1043         public class PollFD {
1044                 public int fd;
1045                 public int idx;
1046                 public static bool can_read (Gst.Poll @set, Gst.PollFD fd);
1047                 public static bool can_write (Gst.Poll @set, Gst.PollFD fd);
1048                 public static bool ctl_read (Gst.Poll @set, Gst.PollFD fd, bool active);
1049                 public static bool ctl_write (Gst.Poll @set, Gst.PollFD fd, bool active);
1050                 public static bool has_closed (Gst.Poll @set, Gst.PollFD fd);
1051                 public static bool has_error (Gst.Poll @set, Gst.PollFD fd);
1052                 public static void ignored (Gst.Poll @set, Gst.PollFD fd);
1053                 public void init ();
1054         }
1055         [CCode (cheader_filename = "gst/gst.h")]
1056         public class ProxyPad : Gst.Pad {
1057         }
1058         [CCode (ref_function = "gst_query_ref", unref_function = "gst_query_unref", cheader_filename = "gst/gst.h")]
1059         public class Query {
1060                 public weak Gst.Structure structure;
1061                 public Gst.QueryType type;
1062                 [CCode (has_construct_function = false)]
1063                 public Query.application (Gst.QueryType type, Gst.Structure structure);
1064                 [CCode (has_construct_function = false)]
1065                 public Query.buffering (Gst.Format format);
1066                 [CCode (has_construct_function = false)]
1067                 public Query.convert (Gst.Format src_format, int64 value, Gst.Format dest_format);
1068                 [CCode (has_construct_function = false)]
1069                 public Query.duration (Gst.Format format);
1070                 [CCode (has_construct_function = false)]
1071                 public Query.formats ();
1072                 public unowned Gst.Structure get_structure ();
1073                 [CCode (has_construct_function = false)]
1074                 public Query.latency ();
1075                 [ReturnsModifiedPointer]
1076                 public void make_writable ();
1077                 public void parse_buffering_percent (bool busy, int percent);
1078                 public void parse_buffering_range (Gst.Format format, int64 start, int64 stop, int64 estimated_total);
1079                 public void parse_buffering_stats (Gst.BufferingMode mode, int avg_in, int avg_out, int64 buffering_left);
1080                 public void parse_convert (out Gst.Format src_format, out int64 src_value, out Gst.Format dest_format, out int64 dest_value);
1081                 public void parse_duration (out Gst.Format format, out int64 duration);
1082                 public void parse_formats_length (out uint n_formats);
1083                 public void parse_formats_nth (uint nth, out Gst.Format format);
1084                 public void parse_latency (out bool live, out Gst.ClockTime min_latency, out Gst.ClockTime max_latency);
1085                 public void parse_position (out Gst.Format format, out int64 cur);
1086                 public void parse_seeking (out Gst.Format format, out bool seekable, out int64 segment_start, out int64 segment_end);
1087                 public void parse_segment (out double rate, out Gst.Format format, out int64 start_value, out int64 stop_value);
1088                 public void parse_uri (string uri);
1089                 [CCode (has_construct_function = false)]
1090                 public Query.position (Gst.Format format);
1091                 [CCode (has_construct_function = false)]
1092                 public Query.seeking (Gst.Format format);
1093                 [CCode (has_construct_function = false)]
1094                 public Query.segment (Gst.Format format);
1095                 public void set_buffering_percent (bool busy, int percent);
1096                 public void set_buffering_range (Gst.Format format, int64 start, int64 stop, int64 estimated_total);
1097                 public void set_buffering_stats (Gst.BufferingMode mode, int avg_in, int avg_out, int64 buffering_left);
1098                 public void set_convert (Gst.Format src_format, int64 src_value, Gst.Format dest_format, int64 dest_value);
1099                 public void set_duration (Gst.Format format, int64 duration);
1100                 public void set_formats (int n_formats);
1101                 public void set_formatsv (int n_formats, Gst.Format formats);
1102                 public void set_latency (bool live, Gst.ClockTime min_latency, Gst.ClockTime max_latency);
1103                 public void set_position (Gst.Format format, int64 cur);
1104                 public void set_seeking (Gst.Format format, bool seekable, int64 segment_start, int64 segment_end);
1105                 public void set_segment (double rate, Gst.Format format, int64 start_value, int64 stop_value);
1106                 public void set_uri (string uri);
1107                 public static Gst.QueryType type_get_by_nick (string nick);
1108                 public static unowned Gst.QueryTypeDefinition type_get_details (Gst.QueryType type);
1109                 public static unowned Gst.Iterator type_iterate_definitions ();
1110                 public static Gst.QueryType type_register (string nick, string description);
1111                 public static GLib.Quark type_to_quark (Gst.QueryType query);
1112                 public static bool types_contains (Gst.QueryType types, Gst.QueryType type);
1113                 [CCode (has_construct_function = false)]
1114                 public Query.uri ();
1115         }
1116         [Compact]
1117         [CCode (cheader_filename = "gst/gst.h")]
1118         public class QueryClass : Gst.MiniObjectClass {
1119         }
1120         [Compact]
1121         [CCode (cheader_filename = "gst/gst.h")]
1122         public class QueryTypeDefinition {
1123                 public weak string description;
1124                 public weak string nick;
1125                 public GLib.Quark quark;
1126                 public Gst.QueryType value;
1127         }
1128         [CCode (cheader_filename = "gst/gst.h")]
1129         public class Registry : Gst.Object {
1130                 public int cache_file;
1131                 public weak GLib.HashTable feature_hash;
1132                 public weak GLib.List features;
1133                 public weak GLib.List paths;
1134                 public weak GLib.List plugins;
1135                 public bool add_feature (Gst.PluginFeature feature);
1136                 public void add_path (string path);
1137                 public bool add_plugin (Gst.Plugin plugin);
1138                 public GLib.List<Gst.PluginFeature> feature_filter ([CCode (delegate_target_pos = 2.1)] Gst.PluginFeatureFilter filter, bool first);
1139                 public Gst.PluginFeature find_feature (string name, GLib.Type type);
1140                 public Gst.Plugin find_plugin (string name);
1141                 public static bool fork_is_enabled ();
1142                 public static void fork_set_enabled (bool enabled);
1143                 public static unowned Gst.Registry get_default ();
1144                 public GLib.List<Gst.PluginFeature> get_feature_list (GLib.Type type);
1145                 public GLib.List<Gst.PluginFeature> get_feature_list_by_plugin (string name);
1146                 public GLib.List<string> get_path_list ();
1147                 public GLib.List<Gst.Plugin> get_plugin_list ();
1148                 public Gst.Plugin lookup (string filename);
1149                 public Gst.PluginFeature lookup_feature (string name);
1150                 public GLib.List<Gst.Plugin> plugin_filter (Gst.PluginFilter filter, bool first);
1151                 public void remove_feature (Gst.PluginFeature feature);
1152                 public void remove_plugin (Gst.Plugin plugin);
1153                 public bool scan_path (string path);
1154                 public bool xml_read_cache (string location);
1155                 public bool xml_write_cache (string location);
1156                 public virtual signal void feature_added (void* feature);
1157                 public virtual signal void plugin_added (void* plugin);
1158         }
1159         [Compact]
1160         [CCode (copy_function = "gst_segment_copy", type_id = "GST_TYPE_SEGMENT", cheader_filename = "gst/gst.h")]
1161         public class Segment {
1162                 public double abs_rate;
1163                 public int64 accum;
1164                 public double applied_rate;
1165                 public int64 duration;
1166                 public Gst.SeekFlags flags;
1167                 public Gst.Format format;
1168                 public int64 last_stop;
1169                 public double rate;
1170                 public int64 start;
1171                 public int64 stop;
1172                 public int64 time;
1173                 [CCode (has_construct_function = false)]
1174                 public Segment ();
1175                 public bool clip (Gst.Format format, int64 start, int64 stop, out int64 clip_start, out int64 clip_stop);
1176                 public Gst.Segment copy ();
1177                 public void init (Gst.Format format);
1178                 public void set_duration (Gst.Format format, int64 duration);
1179                 public void set_last_stop (Gst.Format format, int64 position);
1180                 public void set_newsegment (bool update, double rate, Gst.Format format, int64 start, int64 stop, int64 time);
1181                 public void set_newsegment_full (bool update, double rate, double applied_rate, Gst.Format format, int64 start, int64 stop, int64 time);
1182                 public bool set_running_time (Gst.Format format, int64 running_time);
1183                 public void set_seek (double rate, Gst.Format format, Gst.SeekFlags flags, Gst.SeekType start_type, int64 start, Gst.SeekType stop_type, int64 stop, bool update);
1184                 public int64 to_position (Gst.Format format, int64 running_time);
1185                 public int64 to_running_time (Gst.Format format, int64 position);
1186                 public int64 to_stream_time (Gst.Format format, int64 position);
1187         }
1188         [Compact]
1189         [Immutable]
1190         [CCode (copy_function = "gst_structure_copy", cheader_filename = "gst/gst.h")]
1191         public class Structure {
1192                 public weak GLib.Array fields;
1193                 public GLib.Quark name;
1194                 public int parent_refcount;
1195                 public GLib.Type type;
1196                 [CCode (has_construct_function = false)]
1197                 public Structure (string name, string firstfield, ...);
1198                 public Gst.Structure copy ();
1199                 [CCode (cname = "gst_structure_empty_new", has_construct_function = false)]
1200                 public Structure.empty (string name);
1201                 public bool fixate_field_boolean (string field_name, bool target);
1202                 public bool fixate_field_nearest_double (string field_name, double target);
1203                 public bool fixate_field_nearest_fraction (string field_name, int target_numerator, int target_denominator);
1204                 public bool fixate_field_nearest_int (string field_name, int target);
1205                 public bool @foreach (Gst.StructureForeachFunc func);
1206                 public static Gst.Structure? from_string (string str, out unowned string end);
1207                 public bool @get (...);
1208                 public bool get_boolean (string fieldname, out bool value);
1209                 public bool get_clock_time (string fieldname, Gst.ClockTime value);
1210                 public bool get_date (string fieldname, out GLib.Date value);
1211                 public bool get_double (string fieldname, out double value);
1212                 public bool get_enum (string fieldname, GLib.Type enumtype, out int value);
1213                 public GLib.Type get_field_type (string fieldname);
1214                 public bool get_fourcc (string fieldname, out uint32 value);
1215                 public bool get_fraction (string fieldname, out int value_numerator, out int value_denominator);
1216                 public bool get_int (string fieldname, out int value);
1217                 public unowned string get_name ();
1218                 public GLib.Quark get_name_id ();
1219                 public unowned string get_string (string fieldname);
1220                 public bool get_uint (string fieldname, out uint value);
1221                 public bool get_valist (string first_fieldname, void* args);
1222                 public unowned Gst.Value? get_value (string fieldname);
1223                 public bool has_field (string fieldname);
1224                 public bool has_field_typed (string fieldname, GLib.Type type);
1225                 public bool has_name (string name);
1226                 [CCode (cname = "gst_structure_id_empty_new", has_construct_function = false)]
1227                 public Structure.id_empty (GLib.Quark quark);
1228                 public bool id_get (...);
1229                 public bool id_get_valist (GLib.Quark first_field_id, void* args);
1230                 public unowned Gst.Value? id_get_value (GLib.Quark field);
1231                 public static unowned Gst.Structure id_new (GLib.Quark name_quark, GLib.Quark field_quark);
1232                 public void id_set (GLib.Quark fieldname, ...);
1233                 public void id_set_valist (GLib.Quark fieldname, void* varargs);
1234                 public void id_set_value (GLib.Quark field, Gst.Value value);
1235                 public bool map_in_place (Gst.StructureMapFunc func);
1236                 public int n_fields ();
1237                 public unowned string nth_field_name (uint index);
1238                 public void remove_all_fields ();
1239                 public void remove_field (string fieldname);
1240                 public void remove_fields (string fieldname, ...);
1241                 public void remove_fields_valist (string fieldname, void* varargs);
1242                 public void @set (string fieldname, ...);
1243                 public void set_name (string name);
1244                 public void set_parent_refcount (int refcount);
1245                 public void set_valist (string fieldname, void* varargs);
1246                 public void set_value (string fieldname, Gst.Value value);
1247                 public string to_string ();
1248                 [CCode (has_construct_function = false)]
1249                 public Structure.valist (string name, string firstfield, void* varargs);
1250         }
1251         [CCode (cheader_filename = "gst/gst.h")]
1252         public class SystemClock : Gst.Clock {
1253                 public bool stopping;
1254                 public weak GLib.Thread thread;
1255                 public static unowned Gst.Clock obtain ();
1256                 [NoAccessorMethod]
1257                 public Gst.ClockType clock_type { get; set; }
1258         }
1259         [Compact]
1260         [CCode (copy_function = "gst_tag_list_copy", cheader_filename = "gst/gst.h")]
1261         public class TagList {
1262                 [CCode (has_construct_function = false)]
1263                 public TagList ();
1264                 public void add (Gst.TagMergeMode mode, string tag, ...);
1265                 public void add_valist (Gst.TagMergeMode mode, string tag, void* var_args);
1266                 public void add_valist_values (Gst.TagMergeMode mode, string tag, void* var_args);
1267                 public void add_value (Gst.TagMergeMode mode, string tag, Gst.Value value);
1268                 public void add_values (Gst.TagMergeMode mode, string tag, ...);
1269                 public Gst.TagList copy ();
1270                 public static bool copy_value (out Gst.Value dest, Gst.TagList list, string tag);
1271                 public void @foreach (Gst.TagForeachFunc func);
1272                 [CCode (has_construct_function = false)]
1273                 public TagList.full (string tag);
1274                 [CCode (has_construct_function = false)]
1275                 public TagList.full_valist (void* var_args);
1276                 public bool get_boolean (string tag, out bool value);
1277                 public bool get_boolean_index (string tag, uint index, out bool value);
1278                 public bool get_buffer (string tag, out unowned Gst.Buffer value);
1279                 public bool get_buffer_index (string tag, uint index, out unowned Gst.Buffer value);
1280                 public bool get_char (string tag, out char value);
1281                 public bool get_char_index (string tag, uint index, out char value);
1282                 public bool get_date (string tag, out GLib.Date? value);
1283                 public bool get_date_index (string tag, uint index, out GLib.Date? value);
1284                 public bool get_double (string tag, out double value);
1285                 public bool get_double_index (string tag, uint index, out double value);
1286                 public bool get_float (string tag, out float value);
1287                 public bool get_float_index (string tag, uint index, out float value);
1288                 public bool get_int (string tag, out int value);
1289                 public bool get_int64 (string tag, out int64 value);
1290                 public bool get_int64_index (string tag, uint index, out int64 value);
1291                 public bool get_int_index (string tag, uint index, out int value);
1292                 public bool get_long (string tag, out long value);
1293                 public bool get_long_index (string tag, uint index, out long value);
1294                 public bool get_pointer (string tag, out void* value);
1295                 public bool get_pointer_index (string tag, uint index, out void* value);
1296                 public bool get_string (string tag, out string value);
1297                 public bool get_string_index (string tag, uint index, out string value);
1298                 public uint get_tag_size (string tag);
1299                 public bool get_uchar (string tag, out uchar value);
1300                 public bool get_uchar_index (string tag, uint index, out uchar value);
1301                 public bool get_uint (string tag, out uint value);
1302                 public bool get_uint64 (string tag, out uint64 value);
1303                 public bool get_uint64_index (string tag, uint index, out uint64 value);
1304                 public bool get_uint_index (string tag, uint index, out uint value);
1305                 public bool get_ulong (string tag, out ulong value);
1306                 public bool get_ulong_index (string tag, uint index, out ulong value);
1307                 public unowned Gst.Value? get_value_index (string tag, uint index);
1308                 public void insert (Gst.TagList from, Gst.TagMergeMode mode);
1309                 public bool is_empty ();
1310                 public Gst.TagList merge (Gst.TagList list2, Gst.TagMergeMode mode);
1311                 public void remove_tag (string tag);
1312         }
1313         [CCode (cheader_filename = "gst/gst.h")]
1314         public class Task : Gst.Object {
1315                 public void* abidata;
1316                 public weak GLib.Cond cond;
1317                 public void* data;
1318                 public weak Gst.TaskFunction func;
1319                 public void* @lock;
1320                 public bool running;
1321                 public Gst.TaskState state;
1322                 public static void cleanup_all ();
1323                 public static unowned Gst.Task create (Gst.TaskFunction func, void* data);
1324                 public unowned Gst.TaskPool get_pool ();
1325                 public Gst.TaskState get_state ();
1326                 public bool join ();
1327                 public bool pause ();
1328                 public void set_lock (void* mutex);
1329                 public void set_pool (Gst.TaskPool pool);
1330                 public void set_priority (GLib.ThreadPriority priority);
1331                 public bool set_state (Gst.TaskState state);
1332                 public void set_thread_callbacks (Gst.TaskThreadCallbacks callbacks, GLib.DestroyNotify notify);
1333                 public bool start ();
1334                 public bool stop ();
1335         }
1336         [CCode (cheader_filename = "gst/gst.h")]
1337         public class TaskPool : Gst.Object {
1338                 public weak GLib.ThreadPool pool;
1339                 [CCode (has_construct_function = false)]
1340                 public TaskPool ();
1341                 public virtual void cleanup ();
1342                 public virtual void join (void* id);
1343                 public virtual void prepare () throws GLib.Error;
1344                 public virtual void* push (Gst.TaskPoolFunction func) throws GLib.Error;
1345         }
1346         [Compact]
1347         [CCode (cheader_filename = "gst/gst.h")]
1348         public class TaskThreadCallbacks {
1349                 public weak GLib.Callback enter_thread;
1350                 public weak GLib.Callback leave_thread;
1351         }
1352         [Compact]
1353         [CCode (free_function = "gst_trace_destroy", cheader_filename = "gst/gst.h")]
1354         public class Trace {
1355                 public weak Gst.TraceEntry buf;
1356                 public int bufoffset;
1357                 public int bufsize;
1358                 public int fd;
1359                 public weak string filename;
1360                 [CCode (has_construct_function = false)]
1361                 public Trace (string filename, int size);
1362                 public void flush ();
1363                 public static void read_tsc (int64 dst);
1364                 public void set_default ();
1365                 public void text_flush ();
1366         }
1367         [Compact]
1368         [CCode (cheader_filename = "gst/gst.h")]
1369         public class TraceEntry {
1370                 public uint32 data;
1371                 [CCode (array_length = false)]
1372                 public weak char[] message;
1373                 public uint32 sequence;
1374                 public int64 timestamp;
1375         }
1376         [Compact]
1377         [CCode (cheader_filename = "gst/gst.h")]
1378         public class TypeFind {
1379                 public void* data;
1380                 [CCode (cname = "gst_type_find_get_length")]
1381                 public uint64 get_length ();
1382                 [CCode (cname = "gst_type_find_peek")]
1383                 public uchar peek (int64 offset, uint size);
1384                 [CCode (cname = "gst_type_find_register")]
1385                 public static bool register (Gst.Plugin plugin, string name, uint rank, Gst.TypeFindFunction func, string extensions, Gst.Caps possible_caps, void* data, GLib.DestroyNotify data_notify);
1386                 [CCode (cname = "gst_type_find_suggest")]
1387                 public void suggest (uint probability, Gst.Caps caps);
1388                 [CCode (cname = "gst_type_find_suggest_simple")]
1389                 public void suggest_simple (uint probability, string media_type, string fieldname);
1390         }
1391         [CCode (cheader_filename = "gst/gst.h")]
1392         public class TypeFindFactory : Gst.PluginFeature {
1393                 public weak Gst.Caps caps;
1394                 public weak string extensions;
1395                 public weak Gst.TypeFindFunction function;
1396                 public void* user_data;
1397                 public weak GLib.DestroyNotify user_data_notify;
1398                 [CCode (cname = "gst_type_find_factory_call_function")]
1399                 public void call_function (Gst.TypeFind find);
1400                 [CCode (cname = "gst_type_find_factory_get_caps")]
1401                 public unowned Gst.Caps get_caps ();
1402                 [CCode (cname = "gst_type_find_factory_get_extensions")]
1403                 public unowned string get_extensions ();
1404                 [CCode (cname = "gst_type_find_factory_get_list")]
1405                 public static unowned GLib.List get_list ();
1406         }
1407         [Compact]
1408         [CCode (cheader_filename = "gst/gst.h")]
1409         public class TypeNameData {
1410                 public weak string name;
1411                 public GLib.Type type;
1412         }
1413         [Compact]
1414         [CCode (cheader_filename = "gst/gst.h")]
1415         public class ValueTable {
1416                 public weak Gst.ValueCompareFunc compare;
1417                 public weak Gst.ValueDeserializeFunc deserialize;
1418                 public weak Gst.ValueSerializeFunc serialize;
1419                 public GLib.Type type;
1420         }
1421         [CCode (cheader_filename = "gst/gst.h")]
1422         public class XML : Gst.Object {
1423                 public void* ns;
1424                 public weak GLib.List topelements;
1425                 [CCode (has_construct_function = false)]
1426                 public XML ();
1427                 public unowned Gst.Element get_element (string name);
1428                 public unowned GLib.List get_topelements ();
1429                 public static unowned Gst.Element make_element (void* cur, Gst.Object parent);
1430                 [NoWrapper]
1431                 public virtual void object_saved (Gst.Object object, void* self);
1432                 public bool parse_doc (void* doc, string root);
1433                 public bool parse_file (string fname, string root);
1434                 public bool parse_memory (uchar[] buffer, uint size, string root);
1435                 public static void* write (Gst.Element element);
1436                 public static int write_file (Gst.Element element, GLib.FileStream @out);
1437                 public virtual signal void object_loaded (Gst.Object object, void* self);
1438         }
1439         [CCode (cheader_filename = "gst/gst.h")]
1440         public interface ChildProxy : Gst.Object {
1441                 public static void @get (Gst.Object object, ...);
1442                 public abstract unowned Gst.Object get_child_by_index (uint index);
1443                 public unowned Gst.Object get_child_by_name (string name);
1444                 public abstract uint get_children_count ();
1445                 public static void get_property (Gst.Object object, string name, Gst.Value value);
1446                 public static void get_valist (Gst.Object object, string first_property_name, void* var_args);
1447                 public static bool lookup (Gst.Object object, string name, out unowned Gst.Object target, out unowned GLib.ParamSpec pspec);
1448                 public static void @set (Gst.Object object, ...);
1449                 public static void set_property (Gst.Object object, string name, Gst.Value value);
1450                 public static void set_valist (Gst.Object object, string first_property_name, void* var_args);
1451                 [HasEmitter]
1452                 public signal void child_added (GLib.Object child);
1453                 [HasEmitter]
1454                 public signal void child_removed (GLib.Object child);
1455         }
1456         [CCode (cheader_filename = "gst/gst.h")]
1457         public interface ImplementsInterface : Gst.Element {
1458                 public static void* cast (void* from, GLib.Type type);
1459                 public static bool check (void* from, GLib.Type type);
1460                 [NoWrapper]
1461                 public abstract bool supported (GLib.Type iface_type);
1462         }
1463         [CCode (cheader_filename = "gst/gst.h")]
1464         public interface Preset {
1465                 public abstract bool delete_preset (string name);
1466                 public abstract bool get_meta (string name, string tag, string value);
1467                 public abstract unowned string get_preset_names ();
1468                 public abstract unowned string get_property_names ();
1469                 public abstract bool load_preset (string name);
1470                 public abstract bool rename_preset (string old_name, string new_name);
1471                 public abstract bool save_preset (string name);
1472                 public abstract bool set_meta (string name, string tag, string value);
1473         }
1474         [CCode (cheader_filename = "gst/gst.h")]
1475         public interface URIHandler {
1476                 public abstract unowned string[] get_protocols ();
1477                 [NoWrapper]
1478                 public abstract unowned string[] get_protocols_full (GLib.Type type);
1479                 [NoWrapper]
1480                 public abstract Gst.URIType get_type ();
1481                 [NoWrapper]
1482                 public abstract Gst.URIType get_type_full (GLib.Type type);
1483                 public abstract unowned string get_uri ();
1484                 public uint get_uri_type ();
1485                 public abstract bool set_uri (string uri);
1486                 [HasEmitter]
1487                 public signal void new_uri (string uri);
1488         }
1489         [CCode (type_id = "GST_TYPE_ARRAY", cheader_filename = "gst/gst.h")]
1490         public struct Array {
1491         }
1492         [CCode (cheader_filename = "gst/gst.h")]
1493         [SimpleType]
1494         [IntegerType (rank = 0)]
1495         public struct ClockTime : uint64 {
1496                 [CCode (cname = "GST_TIME_ARGS")]
1497                 public unowned string args ();
1498                 [CCode (cname = "GST_CLOCK_TIME_IS_VALID")]
1499                 public bool is_valid ();
1500         }
1501         [CCode (cheader_filename = "gst/gst.h")]
1502         [SimpleType]
1503         [IntegerType (rank = 0)]
1504         public struct ClockTimeDiff : int64 {
1505         }
1506         [CCode (type_id = "GST_TYPE_DOUBLE_RANGE", cheader_filename = "gst/gst.h")]
1507         public struct DoubleRange {
1508         }
1509         [CCode (type_id = "GST_TYPE_ELEMENT_DETAILS", cheader_filename = "gst/gst.h")]
1510         public struct ElementDetails {
1511                 public weak string longname;
1512                 public weak string klass;
1513                 public weak string description;
1514                 public weak string author;
1515         }
1516         [CCode (type_id = "GST_TYPE_FORMAT_DEFINITION", cheader_filename = "gst/gst.h")]
1517         public struct FormatDefinition {
1518                 public Gst.Format value;
1519                 public weak string nick;
1520                 public weak string description;
1521                 public GLib.Quark quark;
1522         }
1523         [CCode (type_id = "GST_TYPE_FRACTION", cheader_filename = "gst/gst.h")]
1524         public struct Fraction {
1525         }
1526         [CCode (type_id = "GST_TYPE_FRACTION_RANGE", cheader_filename = "gst/gst.h")]
1527         public struct FractionRange {
1528         }
1529         [CCode (type_id = "GST_TYPE_INT_RANGE", cheader_filename = "gst/gst.h")]
1530         public struct IntRange {
1531         }
1532         [CCode (type_id = "GST_TYPE_LIST", cheader_filename = "gst/gst.h")]
1533         public struct List {
1534         }
1535         [CCode (type_id = "GST_TYPE_STATIC_CAPS", cheader_filename = "gst/gst.h")]
1536         public struct StaticCaps {
1537                 [CCode (cname = "string")]
1538                 public weak string str;
1539                 public Gst.Caps @get ();
1540         }
1541         [CCode (type_id = "GST_TYPE_STATIC_PAD_TEMPLATE", cheader_filename = "gst/gst.h")]
1542         public struct StaticPadTemplate {
1543                 public weak string name_template;
1544                 public Gst.PadDirection direction;
1545                 public Gst.PadPresence presence;
1546                 public Gst.StaticCaps static_caps;
1547                 public Gst.PadTemplate @get ();
1548                 public Gst.Caps get_caps ();
1549         }
1550         [CCode (cname = "GValue", type_id = "G_TYPE_VALUE", cheader_filename = "gst/gst.h")]
1551         public struct Value : GLib.Value {
1552                 public void array_append_value (Gst.Value append_value);
1553                 public uint array_get_size ();
1554                 public static GLib.Type array_get_type ();
1555                 public unowned Gst.Value? array_get_value (uint index);
1556                 public void array_prepend_value (Gst.Value prepend_value);
1557                 public static bool can_compare (Gst.Value value1, Gst.Value value2);
1558                 public static bool can_intersect (Gst.Value value1, Gst.Value value2);
1559                 public static bool can_subtract (Gst.Value minuend, Gst.Value subtrahend);
1560                 public static bool can_union (Gst.Value value1, Gst.Value value2);
1561                 public static int compare (Gst.Value value1, Gst.Value value2);
1562                 public bool deserialize (string src);
1563                 public static bool fraction_multiply (GLib.Value product, GLib.Value factor1, GLib.Value factor2);
1564                 public static bool fraction_subtract (GLib.Value dest, GLib.Value minuend, GLib.Value subtrahend);
1565                 public unowned Gst.Buffer get_buffer ();
1566                 public Gst.Caps get_caps ();
1567                 public Gst.Date get_date ();
1568                 public double get_double_range_max ();
1569                 public double get_double_range_min ();
1570                 public uint get_fourcc ();
1571                 public int get_fraction_denominator ();
1572                 public int get_fraction_numerator ();
1573                 public unowned Gst.Value? get_fraction_range_max ();
1574                 public unowned Gst.Value? get_fraction_range_min ();
1575                 public int get_int_range_max ();
1576                 public int get_int_range_min ();
1577                 public unowned Gst.Structure get_structure ();
1578                 public void init_and_copy (Gst.Value src);
1579                 public static bool intersect (Gst.Value dest, Gst.Value value1, Gst.Value value2);
1580                 public bool is_fixed ();
1581                 public void list_append_value (Gst.Value append_value);
1582                 public void list_concat (Gst.Value value1, Gst.Value value2);
1583                 public uint list_get_size ();
1584                 public static GLib.Type list_get_type ();
1585                 public unowned Gst.Value? list_get_value (uint index);
1586                 public void list_prepend_value (Gst.Value prepend_value);
1587                 [CCode (cname = "GST_MAKE_FOURCC")]
1588                 public static uint make_fourcc (char a, char b, char c, char d);
1589                 public static void register (Gst.ValueTable table);
1590                 public static void register_intersect_func (GLib.Type type1, GLib.Type type2, Gst.ValueIntersectFunc func);
1591                 public static void register_subtract_func (GLib.Type minuend_type, GLib.Type subtrahend_type, Gst.ValueSubtractFunc func);
1592                 public static void register_union_func (GLib.Type type1, GLib.Type type2, Gst.ValueUnionFunc func);
1593                 public string serialize ();
1594                 public void set_buffer (Gst.Buffer b);
1595                 public void set_caps (Gst.Caps caps);
1596                 public void set_date (Gst.Date date);
1597                 public void set_double_range (double start, double end);
1598                 public void set_fourcc (uint fourcc);
1599                 public void set_fraction (int numerator, int denominator);
1600                 public void set_fraction_range (Gst.Value start, Gst.Value end);
1601                 public void set_fraction_range_full (int numerator_start, int denominator_start, int numerator_end, int denominator_end);
1602                 public void set_int_range (int start, int end);
1603                 public void set_structure (Gst.Structure structure);
1604                 [CCode (cname = "GST_STR_FOURCC")]
1605                 public static uint str_fourcc (string str);
1606                 public static bool subtract (Gst.Value dest, Gst.Value minuend, Gst.Value subtrahend);
1607                 public void take_buffer (Gst.Buffer b);
1608                 public static bool union (Gst.Value dest, Gst.Value value1, Gst.Value value2);
1609         }
1610         [CCode (cprefix = "GST_ACTIVATE_", cheader_filename = "gst/gst.h")]
1611         public enum ActivateMode {
1612                 NONE,
1613                 PUSH,
1614                 PULL
1615         }
1616         [CCode (cprefix = "GST_ALLOC_TRACE_", cheader_filename = "gst/gst.h")]
1617         [Flags]
1618         public enum AllocTraceFlags {
1619                 LIVE,
1620                 MEM_LIVE
1621         }
1622         [CCode (cprefix = "GST_ASSOCIATION_FLAG_", cheader_filename = "gst/gst.h")]
1623         [Flags]
1624         public enum AssocFlags {
1625                 NONE,
1626                 KEY_UNIT,
1627                 DELTA_UNIT,
1628                 LAST
1629         }
1630         [CCode (cprefix = "GST_BIN_FLAG_", cheader_filename = "gst/gst.h")]
1631         [Flags]
1632         public enum BinFlags {
1633                 LAST
1634         }
1635         [CCode (cprefix = "GST_BUFFER_COPY_", cheader_filename = "gst/gst.h")]
1636         [Flags]
1637         public enum BufferCopyFlags {
1638                 FLAGS,
1639                 TIMESTAMPS,
1640                 CAPS
1641         }
1642         [CCode (cprefix = "GST_BUFFER_FLAG_", cheader_filename = "gst/gst.h")]
1643         [Flags]
1644         public enum BufferFlag {
1645                 READONLY,
1646                 PREROLL,
1647                 DISCONT,
1648                 IN_CAPS,
1649                 GAP,
1650                 DELTA_UNIT,
1651                 MEDIA1,
1652                 MEDIA2,
1653                 MEDIA3,
1654                 LAST
1655         }
1656         [CCode (cprefix = "GST_BUFFER_LIST_", cheader_filename = "gst/gst.h")]
1657         public enum BufferListItem {
1658                 CONTINUE,
1659                 SKIP_GROUP,
1660                 END
1661         }
1662         [CCode (cprefix = "GST_BUFFERING_", cheader_filename = "gst/gst.h")]
1663         public enum BufferingMode {
1664                 STREAM,
1665                 DOWNLOAD,
1666                 TIMESHIFT,
1667                 LIVE
1668         }
1669         [CCode (cprefix = "GST_BUS_", cheader_filename = "gst/gst.h")]
1670         [Flags]
1671         public enum BusFlags {
1672                 FLUSHING,
1673                 FLAG_LAST
1674         }
1675         [CCode (cprefix = "GST_BUS_", cheader_filename = "gst/gst.h")]
1676         public enum BusSyncReply {
1677                 DROP,
1678                 PASS,
1679                 ASYNC
1680         }
1681         [CCode (cprefix = "GST_CAPS_FLAGS_", cheader_filename = "gst/gst.h")]
1682         [Flags]
1683         public enum CapsFlags {
1684                 ANY
1685         }
1686         [CCode (cprefix = "GST_CLOCK_ENTRY_", cheader_filename = "gst/gst.h")]
1687         public enum ClockEntryType {
1688                 SINGLE,
1689                 PERIODIC
1690         }
1691         [CCode (cprefix = "GST_CLOCK_FLAG_", cheader_filename = "gst/gst.h")]
1692         [Flags]
1693         public enum ClockFlags {
1694                 CAN_DO_SINGLE_SYNC,
1695                 CAN_DO_SINGLE_ASYNC,
1696                 CAN_DO_PERIODIC_SYNC,
1697                 CAN_DO_PERIODIC_ASYNC,
1698                 CAN_SET_RESOLUTION,
1699                 CAN_SET_MASTER,
1700                 LAST
1701         }
1702         [CCode (cprefix = "GST_CLOCK_", cheader_filename = "gst/gst.h")]
1703         public enum ClockReturn {
1704                 OK,
1705                 EARLY,
1706                 UNSCHEDULED,
1707                 BUSY,
1708                 BADTIME,
1709                 ERROR,
1710                 UNSUPPORTED
1711         }
1712         [CCode (cprefix = "GST_CLOCK_TYPE_", cheader_filename = "gst/gst.h")]
1713         public enum ClockType {
1714                 REALTIME,
1715                 MONOTONIC
1716         }
1717         [CCode (cprefix = "GST_CORE_ERROR_", cheader_filename = "gst/gst.h")]
1718         public enum CoreError {
1719                 FAILED,
1720                 TOO_LAZY,
1721                 NOT_IMPLEMENTED,
1722                 STATE_CHANGE,
1723                 PAD,
1724                 THREAD,
1725                 NEGOTIATION,
1726                 EVENT,
1727                 SEEK,
1728                 CAPS,
1729                 TAG,
1730                 MISSING_PLUGIN,
1731                 CLOCK,
1732                 DISABLED,
1733                 NUM_ERRORS
1734         }
1735         [CCode (cprefix = "GST_DEBUG_", cheader_filename = "gst/gst.h")]
1736         public enum DebugColorFlags {
1737                 FG_BLACK,
1738                 FG_RED,
1739                 FG_GREEN,
1740                 FG_YELLOW,
1741                 FG_BLUE,
1742                 FG_MAGENTA,
1743                 FG_CYAN,
1744                 FG_WHITE,
1745                 BG_BLACK,
1746                 BG_RED,
1747                 BG_GREEN,
1748                 BG_YELLOW,
1749                 BG_BLUE,
1750                 BG_MAGENTA,
1751                 BG_CYAN,
1752                 BG_WHITE,
1753                 BOLD,
1754                 UNDERLINE
1755         }
1756         [CCode (cprefix = "GST_DEBUG_GRAPH_SHOW_", cheader_filename = "gst/gst.h")]
1757         [Flags]
1758         public enum DebugGraphDetails {
1759                 MEDIA_TYPE,
1760                 CAPS_DETAILS,
1761                 NON_DEFAULT_PARAMS,
1762                 STATES,
1763                 ALL
1764         }
1765         [CCode (cprefix = "GST_LEVEL_", cheader_filename = "gst/gst.h")]
1766         public enum DebugLevel {
1767                 NONE,
1768                 ERROR,
1769                 WARNING,
1770                 INFO,
1771                 DEBUG,
1772                 LOG,
1773                 FIXME,
1774                 MEMDUMP,
1775                 COUNT;
1776                 [CCode (cname = "gst_debug_level_get_name")]
1777                 public unowned string to_string ();
1778         }
1779         [CCode (cprefix = "GST_ELEMENT_", cheader_filename = "gst/gst.h")]
1780         [Flags]
1781         public enum ElementFlags {
1782                 LOCKED_STATE,
1783                 IS_SINK,
1784                 UNPARENTING,
1785                 FLAG_LAST
1786         }
1787         [CCode (cprefix = "GST_EVENT_", cheader_filename = "gst/gst.h")]
1788         public enum EventType {
1789                 UNKNOWN,
1790                 FLUSH_START,
1791                 FLUSH_STOP,
1792                 EOS,
1793                 NEWSEGMENT,
1794                 TAG,
1795                 BUFFERSIZE,
1796                 QOS,
1797                 SEEK,
1798                 NAVIGATION,
1799                 LATENCY,
1800                 STEP,
1801                 CUSTOM_UPSTREAM,
1802                 CUSTOM_DOWNSTREAM,
1803                 CUSTOM_DOWNSTREAM_OOB,
1804                 CUSTOM_BOTH,
1805                 CUSTOM_BOTH_OOB;
1806                 [CCode (cname = "gst_event_type_get_name")]
1807                 public unowned string to_string ();
1808         }
1809         [CCode (cprefix = "GST_EVENT_TYPE_", cheader_filename = "gst/gst.h")]
1810         [Flags]
1811         public enum EventTypeFlags {
1812                 UPSTREAM,
1813                 DOWNSTREAM,
1814                 SERIALIZED
1815         }
1816         [CCode (cprefix = "GST_FLOW_", cheader_filename = "gst/gst.h")]
1817         public enum FlowReturn {
1818                 CUSTOM_SUCCESS,
1819                 RESEND,
1820                 OK,
1821                 NOT_LINKED,
1822                 WRONG_STATE,
1823                 UNEXPECTED,
1824                 NOT_NEGOTIATED,
1825                 ERROR,
1826                 NOT_SUPPORTED,
1827                 CUSTOM_ERROR;
1828                 [CCode (cname = "gst_flow_get_name")]
1829                 public unowned string to_string ();
1830         }
1831         [CCode (cprefix = "GST_FORMAT_", cheader_filename = "gst/gst.h")]
1832         public enum Format {
1833                 UNDEFINED,
1834                 DEFAULT,
1835                 BYTES,
1836                 TIME,
1837                 BUFFERS,
1838                 PERCENT
1839         }
1840         [CCode (cprefix = "GST_INDEX_", cheader_filename = "gst/gst.h")]
1841         public enum IndexCertainty {
1842                 UNKNOWN,
1843                 CERTAIN,
1844                 FUZZY
1845         }
1846         [CCode (cprefix = "GST_INDEX_ENTRY_", cheader_filename = "gst/gst.h")]
1847         public enum IndexEntryType {
1848                 ID,
1849                 ASSOCIATION,
1850                 OBJECT,
1851                 FORMAT
1852         }
1853         [CCode (cprefix = "GST_INDEX_", cheader_filename = "gst/gst.h")]
1854         [Flags]
1855         public enum IndexFlags {
1856                 WRITABLE,
1857                 READABLE,
1858                 FLAG_LAST
1859         }
1860         [CCode (cprefix = "GST_INDEX_LOOKUP_", cheader_filename = "gst/gst.h")]
1861         public enum IndexLookupMethod {
1862                 EXACT,
1863                 BEFORE,
1864                 AFTER
1865         }
1866         [CCode (cprefix = "GST_INDEX_RESOLVER_", cheader_filename = "gst/gst.h")]
1867         public enum IndexResolverMethod {
1868                 CUSTOM,
1869                 GTYPE,
1870                 PATH
1871         }
1872         [CCode (cprefix = "GST_ITERATOR_ITEM_", cheader_filename = "gst/gst.h")]
1873         public enum IteratorItem {
1874                 SKIP,
1875                 PASS,
1876                 END
1877         }
1878         [CCode (cprefix = "GST_ITERATOR_", cheader_filename = "gst/gst.h")]
1879         public enum IteratorResult {
1880                 DONE,
1881                 OK,
1882                 RESYNC,
1883                 ERROR
1884         }
1885         [CCode (cprefix = "GST_LIBRARY_ERROR_", cheader_filename = "gst/gst.h")]
1886         public enum LibraryError {
1887                 FAILED,
1888                 TOO_LAZY,
1889                 INIT,
1890                 SHUTDOWN,
1891                 SETTINGS,
1892                 ENCODE,
1893                 NUM_ERRORS
1894         }
1895         [CCode (cprefix = "GST_MESSAGE_", cheader_filename = "gst/gst.h")]
1896         [Flags]
1897         public enum MessageType {
1898                 UNKNOWN,
1899                 EOS,
1900                 ERROR,
1901                 WARNING,
1902                 INFO,
1903                 TAG,
1904                 BUFFERING,
1905                 STATE_CHANGED,
1906                 STATE_DIRTY,
1907                 STEP_DONE,
1908                 CLOCK_PROVIDE,
1909                 CLOCK_LOST,
1910                 NEW_CLOCK,
1911                 STRUCTURE_CHANGE,
1912                 STREAM_STATUS,
1913                 APPLICATION,
1914                 ELEMENT,
1915                 SEGMENT_START,
1916                 SEGMENT_DONE,
1917                 DURATION,
1918                 LATENCY,
1919                 ASYNC_START,
1920                 ASYNC_DONE,
1921                 REQUEST_STATE,
1922                 STEP_START,
1923                 ANY;
1924                 [CCode (cname = "gst_message_type_get_name")]
1925                 public unowned string to_string ();
1926         }
1927         [CCode (cprefix = "GST_MINI_OBJECT_FLAG_", cheader_filename = "gst/gst.h")]
1928         [Flags]
1929         public enum MiniObjectFlags {
1930                 READONLY,
1931                 LAST
1932         }
1933         [CCode (cprefix = "GST_OBJECT_", cheader_filename = "gst/gst.h")]
1934         [Flags]
1935         public enum ObjectFlags {
1936                 DISPOSING,
1937                 FLOATING,
1938                 FLAG_LAST
1939         }
1940         [CCode (cprefix = "GST_PAD_", cheader_filename = "gst/gst.h")]
1941         public enum PadDirection {
1942                 UNKNOWN,
1943                 SRC,
1944                 SINK
1945         }
1946         [CCode (cprefix = "GST_PAD_", cheader_filename = "gst/gst.h")]
1947         [Flags]
1948         public enum PadFlags {
1949                 BLOCKED,
1950                 FLUSHING,
1951                 IN_GETCAPS,
1952                 IN_SETCAPS,
1953                 BLOCKING,
1954                 FLAG_LAST
1955         }
1956         [CCode (cprefix = "GST_PAD_LINK_", cheader_filename = "gst/gst.h")]
1957         public enum PadLinkReturn {
1958                 OK,
1959                 WRONG_HIERARCHY,
1960                 WAS_LINKED,
1961                 WRONG_DIRECTION,
1962                 NOFORMAT,
1963                 NOSCHED,
1964                 REFUSED
1965         }
1966         [CCode (cprefix = "GST_PAD_", cheader_filename = "gst/gst.h")]
1967         public enum PadPresence {
1968                 ALWAYS,
1969                 SOMETIMES,
1970                 REQUEST
1971         }
1972         [CCode (cprefix = "GST_PAD_TEMPLATE_", cheader_filename = "gst/gst.h")]
1973         [Flags]
1974         public enum PadTemplateFlags {
1975                 FIXED,
1976                 FLAG_LAST
1977         }
1978         [CCode (cprefix = "GST_PARSE_ERROR_", cheader_filename = "gst/gst.h")]
1979         public enum ParseError {
1980                 SYNTAX,
1981                 NO_SUCH_ELEMENT,
1982                 NO_SUCH_PROPERTY,
1983                 LINK,
1984                 COULD_NOT_SET_PROPERTY,
1985                 EMPTY_BIN,
1986                 EMPTY
1987         }
1988         [CCode (cprefix = "GST_PARSE_FLAG_", cheader_filename = "gst/gst.h")]
1989         [Flags]
1990         public enum ParseFlags {
1991                 NONE,
1992                 FATAL_ERRORS
1993         }
1994         [CCode (cprefix = "GST_PIPELINE_FLAG_", cheader_filename = "gst/gst.h")]
1995         [Flags]
1996         public enum PipelineFlags {
1997                 FIXED_CLOCK,
1998                 LAST
1999         }
2000         [CCode (cprefix = "GST_PLUGIN_DEPENDENCY_FLAG_", cheader_filename = "gst/gst.h")]
2001         [Flags]
2002         public enum PluginDependencyFlags {
2003                 NONE,
2004                 RECURSE,
2005                 PATHS_ARE_DEFAULT_ONLY,
2006                 FILE_NAME_IS_SUFFIX
2007         }
2008         [CCode (cprefix = "GST_PLUGIN_ERROR_", cheader_filename = "gst/gst.h")]
2009         public enum PluginError {
2010                 MODULE,
2011                 DEPENDENCIES,
2012                 NAME_MISMATCH
2013         }
2014         [CCode (cprefix = "GST_PLUGIN_FLAG_", cheader_filename = "gst/gst.h")]
2015         [Flags]
2016         public enum PluginFlags {
2017                 CACHED
2018         }
2019         [CCode (cprefix = "GST_QUERY_", cheader_filename = "gst/gst.h")]
2020         public enum QueryType {
2021                 NONE,
2022                 POSITION,
2023                 DURATION,
2024                 LATENCY,
2025                 JITTER,
2026                 RATE,
2027                 SEEKING,
2028                 SEGMENT,
2029                 CONVERT,
2030                 FORMATS,
2031                 BUFFERING,
2032                 CUSTOM,
2033                 URI;
2034                 [CCode (cname = "gst_query_type_get_name")]
2035                 public unowned string to_string ();
2036         }
2037         [CCode (cprefix = "GST_RANK_", cheader_filename = "gst/gst.h")]
2038         public enum Rank {
2039                 NONE,
2040                 MARGINAL,
2041                 SECONDARY,
2042                 PRIMARY
2043         }
2044         [CCode (cprefix = "GST_RESOURCE_ERROR_", cheader_filename = "gst/gst.h")]
2045         public enum ResourceError {
2046                 FAILED,
2047                 TOO_LAZY,
2048                 NOT_FOUND,
2049                 BUSY,
2050                 OPEN_READ,
2051                 OPEN_WRITE,
2052                 OPEN_READ_WRITE,
2053                 CLOSE,
2054                 READ,
2055                 WRITE,
2056                 SEEK,
2057                 SYNC,
2058                 SETTINGS,
2059                 NO_SPACE_LEFT,
2060                 NUM_ERRORS
2061         }
2062         [CCode (cprefix = "GST_SEARCH_MODE_", cheader_filename = "gst/gst.h")]
2063         public enum SearchMode {
2064                 EXACT,
2065                 BEFORE,
2066                 AFTER
2067         }
2068         [CCode (cprefix = "GST_SEEK_FLAG_", cheader_filename = "gst/gst.h")]
2069         [Flags]
2070         public enum SeekFlags {
2071                 NONE,
2072                 FLUSH,
2073                 ACCURATE,
2074                 KEY_UNIT,
2075                 SEGMENT,
2076                 SKIP
2077         }
2078         [CCode (cprefix = "GST_SEEK_TYPE_", cheader_filename = "gst/gst.h")]
2079         public enum SeekType {
2080                 NONE,
2081                 CUR,
2082                 SET,
2083                 END
2084         }
2085         [CCode (cprefix = "GST_STATE_", cheader_filename = "gst/gst.h")]
2086         public enum State {
2087                 VOID_PENDING,
2088                 NULL,
2089                 READY,
2090                 PAUSED,
2091                 PLAYING;
2092                 [CCode (cname = "gst_element_state_get_name")]
2093                 public unowned string to_string ();
2094         }
2095         [CCode (cprefix = "GST_STATE_CHANGE_", cheader_filename = "gst/gst.h")]
2096         public enum StateChange {
2097                 NULL_TO_READY,
2098                 READY_TO_PAUSED,
2099                 PAUSED_TO_PLAYING,
2100                 PLAYING_TO_PAUSED,
2101                 PAUSED_TO_READY,
2102                 READY_TO_NULL
2103         }
2104         [CCode (cprefix = "GST_STATE_CHANGE_", cheader_filename = "gst/gst.h")]
2105         public enum StateChangeReturn {
2106                 FAILURE,
2107                 SUCCESS,
2108                 ASYNC,
2109                 NO_PREROLL;
2110                 [CCode (cname = "gst_element_state_change_return_get_name")]
2111                 public unowned string to_string ();
2112         }
2113         [CCode (cprefix = "GST_STREAM_ERROR_", cheader_filename = "gst/gst.h")]
2114         public enum StreamError {
2115                 FAILED,
2116                 TOO_LAZY,
2117                 NOT_IMPLEMENTED,
2118                 TYPE_NOT_FOUND,
2119                 WRONG_TYPE,
2120                 CODEC_NOT_FOUND,
2121                 DECODE,
2122                 ENCODE,
2123                 DEMUX,
2124                 MUX,
2125                 FORMAT,
2126                 DECRYPT,
2127                 DECRYPT_NOKEY,
2128                 NUM_ERRORS
2129         }
2130         [CCode (cprefix = "GST_STREAM_STATUS_TYPE_", cheader_filename = "gst/gst.h")]
2131         public enum StreamStatusType {
2132                 CREATE,
2133                 ENTER,
2134                 LEAVE,
2135                 DESTROY,
2136                 START,
2137                 PAUSE,
2138                 STOP
2139         }
2140         [CCode (cprefix = "GST_STRUCTURE_CHANGE_TYPE_PAD_", cheader_filename = "gst/gst.h")]
2141         public enum StructureChangeType {
2142                 LINK,
2143                 UNLINK
2144         }
2145         [CCode (cprefix = "GST_TAG_FLAG_", cheader_filename = "gst/gst.h")]
2146         public enum TagFlag {
2147                 UNDEFINED,
2148                 META,
2149                 ENCODED,
2150                 DECODED,
2151                 COUNT
2152         }
2153         [CCode (cprefix = "GST_TAG_MERGE_", cheader_filename = "gst/gst.h")]
2154         public enum TagMergeMode {
2155                 UNDEFINED,
2156                 REPLACE_ALL,
2157                 REPLACE,
2158                 APPEND,
2159                 PREPEND,
2160                 KEEP,
2161                 KEEP_ALL,
2162                 COUNT
2163         }
2164         [CCode (cprefix = "GST_TASK_", cheader_filename = "gst/gst.h")]
2165         public enum TaskState {
2166                 STARTED,
2167                 STOPPED,
2168                 PAUSED
2169         }
2170         [CCode (cprefix = "GST_TYPE_FIND_", cheader_filename = "gst/gst.h")]
2171         public enum TypeFindProbability {
2172                 MINIMUM,
2173                 POSSIBLE,
2174                 LIKELY,
2175                 NEARLY_CERTAIN,
2176                 MAXIMUM
2177         }
2178         [CCode (cprefix = "GST_URI_", cheader_filename = "gst/gst.h")]
2179         public enum URIType {
2180                 UNKNOWN,
2181                 SINK,
2182                 SRC
2183         }
2184         [CCode (cheader_filename = "gst/gst.h")]
2185         public delegate unowned Gst.Buffer BufferListDoFunction (Gst.Buffer buffer);
2186         [CCode (cheader_filename = "gst/gst.h")]
2187         public delegate Gst.BufferListItem BufferListFunc (out unowned Gst.Buffer buffer, uint group, uint idx);
2188         [CCode (cheader_filename = "gst/gst.h")]
2189         public delegate bool BufferProbeCallback (Gst.Pad pad, Gst.Buffer buffer);
2190         [CCode (cheader_filename = "gst/gst.h")]
2191         public delegate bool BusFunc (Gst.Bus bus, Gst.Message message);
2192         [CCode (cheader_filename = "gst/gst.h")]
2193         public delegate Gst.BusSyncReply BusSyncHandler (Gst.Bus bus, Gst.Message message);
2194         [CCode (cheader_filename = "gst/gst.h")]
2195         public delegate bool ClockCallback (Gst.Clock clock, Gst.ClockTime time, Gst.ClockID id);
2196         [CCode (cheader_filename = "gst/gst.h")]
2197         public delegate bool DataProbeCallback (Gst.Pad pad, Gst.MiniObject data);
2198         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
2199         public delegate void DebugFuncPtr ();
2200         [CCode (cheader_filename = "gst/gst.h")]
2201         public delegate bool EventProbeCallback (Gst.Pad pad, Gst.Event event);
2202         [CCode (cheader_filename = "gst/gst.h")]
2203         public delegate bool FilterFunc (void* obj);
2204         [CCode (cheader_filename = "gst/gst.h")]
2205         public delegate bool IndexFilter (Gst.Index index, Gst.IndexEntry entry);
2206         [CCode (cheader_filename = "gst/gst.h")]
2207         public delegate bool IndexResolver (Gst.Index index, Gst.Object writer, string writer_string);
2208         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
2209         public delegate void IteratorDisposeFunction (void* owner);
2210         [CCode (cheader_filename = "gst/gst.h")]
2211         public delegate bool IteratorFoldFunction (void* item, Gst.Value ret);
2212         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
2213         public delegate void IteratorFreeFunction (Gst.Iterator it);
2214         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
2215         public delegate Gst.IteratorItem IteratorItemFunction (Gst.Iterator it, void* item);
2216         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
2217         public delegate Gst.IteratorResult IteratorNextFunction (Gst.Iterator it, void* result);
2218         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
2219         public delegate void IteratorResyncFunction (Gst.Iterator it);
2220         [CCode (cheader_filename = "gst/gst.h")]
2221         public delegate void LogFunction (Gst.DebugCategory category, Gst.DebugLevel level, string file, string function, int line, GLib.Object object, Gst.DebugMessage message);
2222         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
2223         public delegate unowned Gst.MiniObject MiniObjectCopyFunction (Gst.MiniObject obj);
2224         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
2225         public delegate void MiniObjectFinalizeFunction (Gst.MiniObject obj);
2226         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
2227         public delegate bool PadAcceptCapsFunction (Gst.Pad pad, Gst.Caps caps);
2228         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
2229         public delegate bool PadActivateFunction (Gst.Pad pad);
2230         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
2231         public delegate bool PadActivateModeFunction (Gst.Pad pad, bool active);
2232         [CCode (cheader_filename = "gst/gst.h")]
2233         public delegate void PadBlockCallback (Gst.Pad pad, bool blocked);
2234         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
2235         public delegate Gst.FlowReturn PadBufferAllocFunction (Gst.Pad pad, uint64 offset, uint size, Gst.Caps caps, out Gst.Buffer buf);
2236         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
2237         public delegate Gst.FlowReturn PadChainFunction (Gst.Pad pad, owned Gst.Buffer buffer);
2238         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
2239         public delegate Gst.FlowReturn PadChainListFunction (Gst.Pad pad, Gst.BufferList list);
2240         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
2241         public delegate bool PadCheckGetRangeFunction (Gst.Pad pad);
2242         [CCode (cheader_filename = "gst/gst.h")]
2243         public delegate bool PadDispatcherFunction (Gst.Pad pad);
2244         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
2245         public delegate bool PadEventFunction (Gst.Pad pad, owned Gst.Event event);
2246         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
2247         public delegate void PadFixateCapsFunction (Gst.Pad pad, Gst.Caps caps);
2248         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
2249         public delegate unowned Gst.Caps PadGetCapsFunction (Gst.Pad pad);
2250         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
2251         public delegate Gst.FlowReturn PadGetRangeFunction (Gst.Pad pad, uint64 offset, uint length, out Gst.Buffer buffer);
2252         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
2253         public delegate unowned GLib.List PadIntLinkFunction (Gst.Pad pad);
2254         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
2255         public delegate unowned Gst.Iterator PadIterIntLinkFunction (Gst.Pad pad);
2256         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
2257         public delegate Gst.PadLinkReturn PadLinkFunction (Gst.Pad pad, Gst.Pad peer);
2258         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
2259         public delegate bool PadQueryFunction (Gst.Pad pad, Gst.Query query);
2260         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
2261         public delegate Gst.QueryType PadQueryTypeFunction (Gst.Pad pad);
2262         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
2263         public delegate bool PadSetCapsFunction (Gst.Pad pad, Gst.Caps caps);
2264         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
2265         public delegate void PadUnlinkFunction (Gst.Pad pad);
2266         [CCode (cheader_filename = "gst/gst.h")]
2267         public delegate bool PluginFeatureFilter (Gst.PluginFeature feature);
2268         [CCode (cheader_filename = "gst/gst.h")]
2269         public delegate bool PluginFilter (Gst.Plugin plugin);
2270         [CCode (cheader_filename = "gst/gst.h")]
2271         public delegate bool PluginInitFullFunc (Gst.Plugin plugin);
2272         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
2273         public delegate bool PluginInitFunc (Gst.Plugin plugin);
2274         [CCode (cheader_filename = "gst/gst.h")]
2275         public delegate bool StructureForeachFunc (GLib.Quark field_id, Gst.Value value);
2276         [CCode (cheader_filename = "gst/gst.h")]
2277         public delegate bool StructureMapFunc (GLib.Quark field_id, Gst.Value value);
2278         [CCode (cheader_filename = "gst/gst.h")]
2279         public delegate void TagForeachFunc (Gst.TagList list, string tag);
2280         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
2281         public delegate void TagMergeFunc (Gst.Value dest, Gst.Value src);
2282         [CCode (cheader_filename = "gst/gst.h")]
2283         public delegate void TaskFunction ();
2284         [CCode (cheader_filename = "gst/gst.h")]
2285         public delegate void TaskPoolFunction ();
2286         [CCode (cheader_filename = "gst/gst.h")]
2287         public delegate void TypeFindFunction (Gst.TypeFind find);
2288         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
2289         public delegate int ValueCompareFunc (Gst.Value value1, Gst.Value value2);
2290         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
2291         public delegate bool ValueDeserializeFunc (Gst.Value dest, string s);
2292         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
2293         public delegate bool ValueIntersectFunc (Gst.Value dest, Gst.Value value1, Gst.Value value2);
2294         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
2295         public delegate unowned string ValueSerializeFunc (Gst.Value value1);
2296         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
2297         public delegate bool ValueSubtractFunc (Gst.Value dest, Gst.Value minuend, Gst.Value subtrahend);
2298         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
2299         public delegate bool ValueUnionFunc (Gst.Value dest, Gst.Value value1, Gst.Value value2);
2300         [CCode (cheader_filename = "gst/gst.h")]
2301         public const int BUFFER_COPY_ALL;
2302         [CCode (cheader_filename = "gst/gst.h")]
2303         public const int BUFFER_OFFSET_NONE;
2304         [CCode (cheader_filename = "gst/gst.h")]
2305         public const string BUFFER_TRACE_NAME;
2306         [CCode (cheader_filename = "gst/gst.h")]
2307         public const string CLOCK_ENTRY_TRACE_NAME;
2308         [CCode (cheader_filename = "gst/gst.h")]
2309         public const int CLOCK_TIME_NONE;
2310         [CCode (cheader_filename = "gst/gst.h")]
2311         public const int DEBUG_BG_MASK;
2312         [CCode (cheader_filename = "gst/gst.h")]
2313         public const int DEBUG_FG_MASK;
2314         [CCode (cheader_filename = "gst/gst.h")]
2315         public const int DEBUG_FORMAT_MASK;
2316         [CCode (cheader_filename = "gst/gst.h")]
2317         public const string EVENT_TRACE_NAME;
2318         [CCode (cheader_filename = "gst/gst.h")]
2319         public const int EVENT_TYPE_BOTH;
2320         [CCode (cheader_filename = "gst/gst.h")]
2321         public const int EVENT_TYPE_SHIFT;
2322         [CCode (cheader_filename = "gst/gst.h")]
2323         public const string FOURCC_FORMAT;
2324         [CCode (cheader_filename = "gst/gst.h")]
2325         public const int INDEX_ID_INVALID;
2326         [CCode (cheader_filename = "gst/gst.h")]
2327         public const string LICENSE_UNKNOWN;
2328         [CCode (cheader_filename = "gst/gst.h")]
2329         public const string MESSAGE_TRACE_NAME;
2330         [CCode (cheader_filename = "gst/gst.h")]
2331         public const int MSECOND;
2332         [CCode (cheader_filename = "gst/gst.h")]
2333         public const int NSECOND;
2334         [CCode (cheader_filename = "gst/gst.h")]
2335         public const int PARAM_CONTROLLABLE;
2336         [CCode (cheader_filename = "gst/gst.h")]
2337         public const int PARAM_MUTABLE_PAUSED;
2338         [CCode (cheader_filename = "gst/gst.h")]
2339         public const int PARAM_MUTABLE_PLAYING;
2340         [CCode (cheader_filename = "gst/gst.h")]
2341         public const int PARAM_MUTABLE_READY;
2342         [CCode (cheader_filename = "gst/gst.h")]
2343         public const int PARAM_USER_SHIFT;
2344         [CCode (cheader_filename = "gst/gst.h")]
2345         public const int SECOND;
2346         [CCode (cheader_filename = "gst/gst.h")]
2347         public const string TAG_ALBUM;
2348         [CCode (cheader_filename = "gst/gst.h")]
2349         public const string TAG_ALBUM_GAIN;
2350         [CCode (cheader_filename = "gst/gst.h")]
2351         public const string TAG_ALBUM_PEAK;
2352         [CCode (cheader_filename = "gst/gst.h")]
2353         public const string TAG_ALBUM_SORTNAME;
2354         [CCode (cheader_filename = "gst/gst.h")]
2355         public const string TAG_ALBUM_VOLUME_COUNT;
2356         [CCode (cheader_filename = "gst/gst.h")]
2357         public const string TAG_ALBUM_VOLUME_NUMBER;
2358         [CCode (cheader_filename = "gst/gst.h")]
2359         public const string TAG_ARTIST;
2360         [CCode (cheader_filename = "gst/gst.h")]
2361         public const string TAG_ARTIST_SORTNAME;
2362         [CCode (cheader_filename = "gst/gst.h")]
2363         public const string TAG_ATTACHMENT;
2364         [CCode (cheader_filename = "gst/gst.h")]
2365         public const string TAG_AUDIO_CODEC;
2366         [CCode (cheader_filename = "gst/gst.h")]
2367         public const string TAG_BEATS_PER_MINUTE;
2368         [CCode (cheader_filename = "gst/gst.h")]
2369         public const string TAG_BITRATE;
2370         [CCode (cheader_filename = "gst/gst.h")]
2371         public const string TAG_CODEC;
2372         [CCode (cheader_filename = "gst/gst.h")]
2373         public const string TAG_COMMENT;
2374         [CCode (cheader_filename = "gst/gst.h")]
2375         public const string TAG_COMPOSER;
2376         [CCode (cheader_filename = "gst/gst.h")]
2377         public const string TAG_CONTACT;
2378         [CCode (cheader_filename = "gst/gst.h")]
2379         public const string TAG_CONTAINER_FORMAT;
2380         [CCode (cheader_filename = "gst/gst.h")]
2381         public const string TAG_COPYRIGHT;
2382         [CCode (cheader_filename = "gst/gst.h")]
2383         public const string TAG_COPYRIGHT_URI;
2384         [CCode (cheader_filename = "gst/gst.h")]
2385         public const string TAG_DATE;
2386         [CCode (cheader_filename = "gst/gst.h")]
2387         public const string TAG_DESCRIPTION;
2388         [CCode (cheader_filename = "gst/gst.h")]
2389         public const string TAG_DURATION;
2390         [CCode (cheader_filename = "gst/gst.h")]
2391         public const string TAG_ENCODER;
2392         [CCode (cheader_filename = "gst/gst.h")]
2393         public const string TAG_ENCODER_VERSION;
2394         [CCode (cheader_filename = "gst/gst.h")]
2395         public const string TAG_EXTENDED_COMMENT;
2396         [CCode (cheader_filename = "gst/gst.h")]
2397         public const string TAG_GENRE;
2398         [CCode (cheader_filename = "gst/gst.h")]
2399         public const string TAG_GEO_LOCATION_ELEVATION;
2400         [CCode (cheader_filename = "gst/gst.h")]
2401         public const string TAG_GEO_LOCATION_LATITUDE;
2402         [CCode (cheader_filename = "gst/gst.h")]
2403         public const string TAG_GEO_LOCATION_LONGITUDE;
2404         [CCode (cheader_filename = "gst/gst.h")]
2405         public const string TAG_GEO_LOCATION_NAME;
2406         [CCode (cheader_filename = "gst/gst.h")]
2407         public const string TAG_HOMEPAGE;
2408         [CCode (cheader_filename = "gst/gst.h")]
2409         public const string TAG_IMAGE;
2410         [CCode (cheader_filename = "gst/gst.h")]
2411         public const string TAG_ISRC;
2412         [CCode (cheader_filename = "gst/gst.h")]
2413         public const string TAG_KEYWORDS;
2414         [CCode (cheader_filename = "gst/gst.h")]
2415         public const string TAG_LANGUAGE_CODE;
2416         [CCode (cheader_filename = "gst/gst.h")]
2417         public const string TAG_LICENSE;
2418         [CCode (cheader_filename = "gst/gst.h")]
2419         public const string TAG_LICENSE_URI;
2420         [CCode (cheader_filename = "gst/gst.h")]
2421         public const string TAG_LOCATION;
2422         [CCode (cheader_filename = "gst/gst.h")]
2423         public const string TAG_MAXIMUM_BITRATE;
2424         [CCode (cheader_filename = "gst/gst.h")]
2425         public const string TAG_MINIMUM_BITRATE;
2426         [CCode (cheader_filename = "gst/gst.h")]
2427         public const string TAG_NOMINAL_BITRATE;
2428         [CCode (cheader_filename = "gst/gst.h")]
2429         public const string TAG_ORGANIZATION;
2430         [CCode (cheader_filename = "gst/gst.h")]
2431         public const string TAG_PERFORMER;
2432         [CCode (cheader_filename = "gst/gst.h")]
2433         public const string TAG_PREVIEW_IMAGE;
2434         [CCode (cheader_filename = "gst/gst.h")]
2435         public const string TAG_REFERENCE_LEVEL;
2436         [CCode (cheader_filename = "gst/gst.h")]
2437         public const string TAG_SERIAL;
2438         [CCode (cheader_filename = "gst/gst.h")]
2439         public const string TAG_SUBTITLE_CODEC;
2440         [CCode (cheader_filename = "gst/gst.h")]
2441         public const string TAG_TITLE;
2442         [CCode (cheader_filename = "gst/gst.h")]
2443         public const string TAG_TITLE_SORTNAME;
2444         [CCode (cheader_filename = "gst/gst.h")]
2445         public const string TAG_TRACK_COUNT;
2446         [CCode (cheader_filename = "gst/gst.h")]
2447         public const string TAG_TRACK_GAIN;
2448         [CCode (cheader_filename = "gst/gst.h")]
2449         public const string TAG_TRACK_NUMBER;
2450         [CCode (cheader_filename = "gst/gst.h")]
2451         public const string TAG_TRACK_PEAK;
2452         [CCode (cheader_filename = "gst/gst.h")]
2453         public const string TAG_VERSION;
2454         [CCode (cheader_filename = "gst/gst.h")]
2455         public const string TAG_VIDEO_CODEC;
2456         [CCode (cheader_filename = "gst/gst.h")]
2457         public const string TIME_FORMAT;
2458         [CCode (cheader_filename = "gst/gst.h")]
2459         public const int USECOND;
2460         [CCode (cheader_filename = "gst/gst.h")]
2461         public const int VALUE_EQUAL;
2462         [CCode (cheader_filename = "gst/gst.h")]
2463         public const int VALUE_GREATER_THAN;
2464         [CCode (cheader_filename = "gst/gst.h")]
2465         public const int VALUE_LESS_THAN;
2466         [CCode (cheader_filename = "gst/gst.h")]
2467         public const int VALUE_UNORDERED;
2468         [CCode (cheader_filename = "gst/gst.h")]
2469         public const int VERSION_MAJOR;
2470         [CCode (cheader_filename = "gst/gst.h")]
2471         public const int VERSION_MICRO;
2472         [CCode (cheader_filename = "gst/gst.h")]
2473         public const int VERSION_MINOR;
2474         [CCode (cheader_filename = "gst/gst.h")]
2475         public const int VERSION_NANO;
2476         [CCode (cheader_filename = "gst/gst.h")]
2477         public static void atomic_int_set (int atomic_int, int value);
2478         [CCode (cheader_filename = "gst/gst.h")]
2479         public static GLib.Quark core_error_quark ();
2480         [CCode (cheader_filename = "gst/gst.h")]
2481         public static void debug_add_log_function (Gst.LogFunction func, void* data);
2482         [CCode (cname = "GST_DEBUG_BIN_TO_DOT_FILE", cheader_filename = "gst/gst.h")]
2483         public static void debug_bin_to_dot_file (Gst.Bin bin, Gst.DebugGraphDetails details, string prefix);
2484         [CCode (cname = "GST_DEBUG_BIN_TO_DOT_FILE_WITH_TS", cheader_filename = "gst/gst.h")]
2485         public static void debug_bin_to_dot_file_with_ts (Gst.Bin bin, Gst.DebugGraphDetails details, string prefix);
2486         [CCode (cheader_filename = "gst/gst.h")]
2487         public static unowned string debug_construct_term_color (uint colorinfo);
2488         [CCode (cheader_filename = "gst/gst.h")]
2489         public static int debug_construct_win_color (uint colorinfo);
2490         [CCode (cheader_filename = "gst/gst.h")]
2491         public static unowned GLib.SList debug_get_all_categories ();
2492         [CCode (cheader_filename = "gst/gst.h")]
2493         public static Gst.DebugLevel debug_get_default_threshold ();
2494         [CCode (cheader_filename = "gst/gst.h")]
2495         public static bool debug_is_active ();
2496         [CCode (cheader_filename = "gst/gst.h")]
2497         public static bool debug_is_colored ();
2498         [CCode (cheader_filename = "gst/gst.h")]
2499         public static void debug_log (Gst.DebugCategory category, Gst.DebugLevel level, string file, string function, int line, GLib.Object object, string format);
2500         [CCode (cheader_filename = "gst/gst.h")]
2501         public static void debug_log_default (Gst.DebugCategory category, Gst.DebugLevel level, string file, string function, int line, GLib.Object object, Gst.DebugMessage message, void* unused);
2502         [CCode (cheader_filename = "gst/gst.h")]
2503         public static void debug_log_valist (Gst.DebugCategory category, Gst.DebugLevel level, string file, string function, int line, GLib.Object object, string format, void* args);
2504         [CCode (cheader_filename = "gst/gst.h")]
2505         public static void debug_print_stack_trace ();
2506         [CCode (cheader_filename = "gst/gst.h")]
2507         public static uint debug_remove_log_function (Gst.LogFunction func);
2508         [CCode (cheader_filename = "gst/gst.h")]
2509         public static uint debug_remove_log_function_by_data (void* data);
2510         [CCode (cheader_filename = "gst/gst.h")]
2511         public static void debug_set_active (bool active);
2512         [CCode (cheader_filename = "gst/gst.h")]
2513         public static void debug_set_colored (bool colored);
2514         [CCode (cheader_filename = "gst/gst.h")]
2515         public static void debug_set_default_threshold (Gst.DebugLevel level);
2516         [CCode (cheader_filename = "gst/gst.h")]
2517         public static void debug_set_threshold_for_name (string name, Gst.DebugLevel level);
2518         [CCode (cheader_filename = "gst/gst.h")]
2519         public static void debug_unset_threshold_for_name (string name);
2520         [CCode (cheader_filename = "gst/gst.h")]
2521         public static bool default_registry_check_feature_version (string feature_name, uint min_major, uint min_minor, uint min_micro);
2522         [CCode (cheader_filename = "gst/gst.h")]
2523         public static void deinit ();
2524         [CCode (cheader_filename = "gst/gst.h")]
2525         public static GLib.Type double_range_get_type ();
2526         [CCode (cheader_filename = "gst/gst.h")]
2527         public static unowned string error_get_message (GLib.Quark domain, int code);
2528         [CCode (cheader_filename = "gst/gst.h")]
2529         public static unowned GLib.List filter_run (GLib.List list, Gst.FilterFunc func, bool first);
2530         [CCode (cheader_filename = "gst/gst.h")]
2531         public static GLib.Quark flow_to_quark (Gst.FlowReturn ret);
2532         [CCode (cheader_filename = "gst/gst.h")]
2533         public static Gst.Format format_get_by_nick (string nick);
2534         [CCode (cheader_filename = "gst/gst.h")]
2535         public static Gst.FormatDefinition format_get_details (Gst.Format format);
2536         [CCode (cheader_filename = "gst/gst.h")]
2537         public static unowned Gst.Iterator format_iterate_definitions ();
2538         [CCode (cheader_filename = "gst/gst.h")]
2539         public static Gst.Format format_register (string nick, string description);
2540         [CCode (cheader_filename = "gst/gst.h")]
2541         public static GLib.Quark format_to_quark (Gst.Format format);
2542         [CCode (cheader_filename = "gst/gst.h")]
2543         public static bool formats_contains (Gst.Format formats, Gst.Format format);
2544         [CCode (cheader_filename = "gst/gst.h")]
2545         public static GLib.Type fourcc_get_type ();
2546         [CCode (cheader_filename = "gst/gst.h")]
2547         public static GLib.Type fraction_get_type ();
2548         [CCode (cheader_filename = "gst/gst.h")]
2549         public static GLib.Type fraction_range_get_type ();
2550         [CCode (cheader_filename = "gst/gst.h")]
2551         public static void init ([CCode (array_length_pos = 0.9)] ref unowned string[] args);
2552         [CCode (cheader_filename = "gst/gst.h")]
2553         public static bool init_check (int argc, string argv) throws GLib.Error;
2554         [CCode (cheader_filename = "gst/gst.h")]
2555         public static GLib.OptionGroup init_get_option_group ();
2556         [CCode (cheader_filename = "gst/gst.h")]
2557         public static GLib.Type int_range_get_type ();
2558         [CCode (cheader_filename = "gst/gst.h")]
2559         public static bool is_tag_list (void* p);
2560         [CCode (cheader_filename = "gst/gst.h")]
2561         public static GLib.Quark library_error_quark ();
2562         [CCode (cheader_filename = "gst/gst.h")]
2563         public static void marshal_BOOLEAN__POINTER (GLib.Closure closure, Gst.Value return_value, uint n_param_values, Gst.Value param_values, void* invocation_hint, void* marshal_data);
2564         [CCode (cheader_filename = "gst/gst.h")]
2565         public static void marshal_BOOLEAN__VOID (GLib.Closure closure, Gst.Value return_value, uint n_param_values, Gst.Value param_values, void* invocation_hint, void* marshal_data);
2566         [CCode (cheader_filename = "gst/gst.h")]
2567         public static void marshal_BOXED__BOXED (GLib.Closure closure, Gst.Value return_value, uint n_param_values, Gst.Value param_values, void* invocation_hint, void* marshal_data);
2568         [CCode (cheader_filename = "gst/gst.h")]
2569         public static void marshal_POINTER__POINTER (GLib.Closure closure, Gst.Value return_value, uint n_param_values, Gst.Value param_values, void* invocation_hint, void* marshal_data);
2570         [CCode (cheader_filename = "gst/gst.h")]
2571         public static void marshal_VOID__BOXED_OBJECT (GLib.Closure closure, Gst.Value return_value, uint n_param_values, Gst.Value param_values, void* invocation_hint, void* marshal_data);
2572         [CCode (cheader_filename = "gst/gst.h")]
2573         public static void marshal_VOID__INT64 (GLib.Closure closure, Gst.Value return_value, uint n_param_values, Gst.Value param_values, void* invocation_hint, void* marshal_data);
2574         [CCode (cheader_filename = "gst/gst.h")]
2575         public static void marshal_VOID__INT_INT (GLib.Closure closure, Gst.Value return_value, uint n_param_values, Gst.Value param_values, void* invocation_hint, void* marshal_data);
2576         [CCode (cheader_filename = "gst/gst.h")]
2577         public static void marshal_VOID__OBJECT_BOXED (GLib.Closure closure, Gst.Value return_value, uint n_param_values, Gst.Value param_values, void* invocation_hint, void* marshal_data);
2578         [CCode (cheader_filename = "gst/gst.h")]
2579         public static void marshal_VOID__OBJECT_BOXED_STRING (GLib.Closure closure, Gst.Value return_value, uint n_param_values, Gst.Value param_values, void* invocation_hint, void* marshal_data);
2580         [CCode (cheader_filename = "gst/gst.h")]
2581         public static void marshal_VOID__OBJECT_OBJECT (GLib.Closure closure, Gst.Value return_value, uint n_param_values, Gst.Value param_values, void* invocation_hint, void* marshal_data);
2582         [CCode (cheader_filename = "gst/gst.h")]
2583         public static void marshal_VOID__OBJECT_OBJECT_STRING (GLib.Closure closure, Gst.Value return_value, uint n_param_values, Gst.Value param_values, void* invocation_hint, void* marshal_data);
2584         [CCode (cheader_filename = "gst/gst.h")]
2585         public static void marshal_VOID__OBJECT_PARAM (GLib.Closure closure, Gst.Value return_value, uint n_param_values, Gst.Value param_values, void* invocation_hint, void* marshal_data);
2586         [CCode (cheader_filename = "gst/gst.h")]
2587         public static void marshal_VOID__OBJECT_POINTER (GLib.Closure closure, Gst.Value return_value, uint n_param_values, Gst.Value param_values, void* invocation_hint, void* marshal_data);
2588         [CCode (cheader_filename = "gst/gst.h")]
2589         public static void marshal_VOID__OBJECT_STRING (GLib.Closure closure, Gst.Value return_value, uint n_param_values, Gst.Value param_values, void* invocation_hint, void* marshal_data);
2590         [CCode (cheader_filename = "gst/gst.h")]
2591         public static void marshal_VOID__POINTER_OBJECT (GLib.Closure closure, Gst.Value return_value, uint n_param_values, Gst.Value param_values, void* invocation_hint, void* marshal_data);
2592         [CCode (cheader_filename = "gst/gst.h")]
2593         public static void marshal_VOID__UINT_BOXED (GLib.Closure closure, Gst.Value return_value, uint n_param_values, Gst.Value param_values, void* invocation_hint, void* marshal_data);
2594         [CCode (cheader_filename = "gst/gst.h")]
2595         public static unowned GLib.ParamSpec param_spec_fraction (string name, string nick, string blurb, int min_num, int min_denom, int max_num, int max_denom, int default_num, int default_denom, GLib.ParamFlags flags);
2596         [CCode (cheader_filename = "gst/gst.h")]
2597         public static unowned GLib.ParamSpec param_spec_mini_object (string name, string nick, string blurb, GLib.Type object_type, GLib.ParamFlags flags);
2598         [CCode (cheader_filename = "gst/gst.h")]
2599         public static Gst.Element? parse_bin_from_description (string bin_description, bool ghost_unlinked_pads) throws GLib.Error;
2600         [CCode (cheader_filename = "gst/gst.h")]
2601         public static unowned Gst.Element parse_bin_from_description_full (string bin_description, bool ghost_unlinked_pads, Gst.ParseContext context, Gst.ParseFlags flags) throws GLib.Error;
2602         [CCode (cheader_filename = "gst/gst.h")]
2603         public static GLib.Quark parse_error_quark ();
2604         [CCode (cheader_filename = "gst/gst.h")]
2605         public static Gst.Element? parse_launch (string pipeline_description) throws GLib.Error;
2606         [CCode (cheader_filename = "gst/gst.h")]
2607         public static unowned Gst.Element parse_launch_full (string pipeline_description, Gst.ParseContext context, Gst.ParseFlags flags) throws GLib.Error;
2608         [CCode (cheader_filename = "gst/gst.h")]
2609         public static Gst.Element? parse_launchv ([CCode (array_length = false)] string[] argv) throws GLib.Error;
2610         [CCode (cheader_filename = "gst/gst.h")]
2611         public static unowned Gst.Element parse_launchv_full (string argv, Gst.ParseContext context, Gst.ParseFlags flags) throws GLib.Error;
2612         [CCode (cheader_filename = "gst/gst.h")]
2613         public static void print_element_args (GLib.StringBuilder buf, int indent, Gst.Element element);
2614         [CCode (cheader_filename = "gst/gst.h")]
2615         public static void print_pad_caps (GLib.StringBuilder buf, int indent, Gst.Pad pad);
2616         [CCode (cheader_filename = "gst/gst.h")]
2617         public static GLib.Quark resource_error_quark ();
2618         [CCode (cheader_filename = "gst/gst.h")]
2619         public static bool segtrap_is_enabled ();
2620         [CCode (cheader_filename = "gst/gst.h")]
2621         public static void segtrap_set_enabled (bool enabled);
2622         [CCode (cheader_filename = "gst/gst.h")]
2623         public static GLib.Quark stream_error_quark ();
2624         [CCode (cheader_filename = "gst/gst.h")]
2625         public static bool tag_exists (string tag);
2626         [CCode (cheader_filename = "gst/gst.h")]
2627         public static unowned string tag_get_description (string tag);
2628         [CCode (cheader_filename = "gst/gst.h")]
2629         public static Gst.TagFlag tag_get_flag (string tag);
2630         [CCode (cheader_filename = "gst/gst.h")]
2631         public static unowned string tag_get_nick (string tag);
2632         [CCode (cheader_filename = "gst/gst.h")]
2633         public static GLib.Type tag_get_type (string tag);
2634         [CCode (cheader_filename = "gst/gst.h")]
2635         public static bool tag_is_fixed (string tag);
2636         [CCode (cheader_filename = "gst/gst.h")]
2637         public static void tag_merge_strings_with_comma (Gst.Value dest, Gst.Value src);
2638         [CCode (cheader_filename = "gst/gst.h")]
2639         public static void tag_merge_use_first (Gst.Value dest, Gst.Value src);
2640         [CCode (cheader_filename = "gst/gst.h")]
2641         public static void tag_register (string name, Gst.TagFlag flag, GLib.Type type, string nick, string blurb, Gst.TagMergeFunc func);
2642         [CCode (cheader_filename = "gst/gst.h")]
2643         public static bool update_registry ();
2644         [CCode (cheader_filename = "gst/gst.h")]
2645         public static unowned string uri_construct (string protocol, string location);
2646         [CCode (cheader_filename = "gst/gst.h")]
2647         public static unowned string uri_get_location (string uri);
2648         [CCode (cheader_filename = "gst/gst.h")]
2649         public static unowned string uri_get_protocol (string uri);
2650         [CCode (cheader_filename = "gst/gst.h")]
2651         public static bool uri_has_protocol (string uri, string protocol);
2652         [CCode (cheader_filename = "gst/gst.h")]
2653         public static bool uri_is_valid (string uri);
2654         [CCode (cheader_filename = "gst/gst.h")]
2655         public static bool uri_protocol_is_supported (Gst.URIType type, string protocol);
2656         [CCode (cheader_filename = "gst/gst.h")]
2657         public static bool uri_protocol_is_valid (string protocol);
2658         [CCode (cheader_filename = "gst/gst.h")]
2659         public static void* util_array_binary_search (void* array, uint num_elements, size_t element_size, GLib.CompareDataFunc search_func, Gst.SearchMode mode, void* search_data);
2660         [CCode (cheader_filename = "gst/gst.h")]
2661         public static void util_dump_mem (uchar[] mem, uint size);
2662         [CCode (cheader_filename = "gst/gst.h")]
2663         public static uint64 util_gdouble_to_guint64 (double value);
2664         [CCode (cheader_filename = "gst/gst.h")]
2665         public static Gst.ClockTime util_get_timestamp ();
2666         [CCode (cheader_filename = "gst/gst.h")]
2667         public static double util_guint64_to_gdouble (uint64 value);
2668         [CCode (cheader_filename = "gst/gst.h")]
2669         public static int32 util_seqnum_compare (uint32 s1, uint32 s2);
2670         [CCode (cheader_filename = "gst/gst.h")]
2671         public static uint32 util_seqnum_next ();
2672         [CCode (cheader_filename = "gst/gst.h")]
2673         public static void util_set_object_arg (GLib.Object object, string name, string value);
2674         [CCode (cheader_filename = "gst/gst.h")]
2675         public static void util_set_value_from_string (Gst.Value value, string value_str);
2676         [CCode (cheader_filename = "gst/gst.h")]
2677         public static uint64 util_uint64_scale (uint64 val, uint64 num, uint64 denom);
2678         [CCode (cheader_filename = "gst/gst.h")]
2679         public static uint64 util_uint64_scale_int (uint64 val, int num, int denom);
2680         [CCode (cheader_filename = "gst/gst.h")]
2681         public static unowned Gst.MiniObject value_dup_mini_object (Gst.Value value);
2682         [CCode (cheader_filename = "gst/gst.h")]
2683         public static void version (out uint major, out uint minor, out uint micro, out uint nano);
2684         [CCode (cheader_filename = "gst/gst.h")]
2685         public static string version_string ();