Revert "codegen: Don't implicitly initialize local variables with an initializer"
[vala-gnome.git] / vapi / gstreamer-1.0.vapi
blob0d7db6470b3c2852ece23bf0554cae26499b7743
1 /* gstreamer-1.0.vapi generated by vapigen, do not modify. */
3 [CCode (cprefix = "Gst", gir_namespace = "Gst", gir_version = "1.0", lower_case_cprefix = "gst_")]
4 namespace Gst {
5         namespace Debug {
6                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_DEBUG_BG_MASK")]
7                 public const int BG_MASK;
8                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_DEBUG_FG_MASK")]
9                 public const int FG_MASK;
10                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_DEBUG_FORMAT_MASK")]
11                 public const int FORMAT_MASK;
12                 [CCode (cheader_filename = "gst/gst.h")]
13                 public static void add_log_function (owned Gst.LogFunction func);
14                 [CCode (cheader_filename = "gst/gst.h")]
15                 public static string bin_to_dot_data (Gst.Bin bin, Gst.DebugGraphDetails details);
16                 [CCode (cheader_filename = "gst/gst.h")]
17                 public static void bin_to_dot_file (Gst.Bin bin, Gst.DebugGraphDetails details, string file_name);
18                 [CCode (cheader_filename = "gst/gst.h")]
19                 public static void bin_to_dot_file_with_ts (Gst.Bin bin, Gst.DebugGraphDetails details, string file_name);
20                 [CCode (cheader_filename = "gst/gst.h")]
21                 public static string construct_term_color (uint colorinfo);
22                 [CCode (cheader_filename = "gst/gst.h")]
23                 public static int construct_win_color (uint colorinfo);
24                 [CCode (cheader_filename = "gst/gst.h")]
25                 public static GLib.SList<weak Gst.DebugCategory> get_all_categories ();
26                 [CCode (cheader_filename = "gst/gst.h")]
27                 [Version (since = "1.2")]
28                 public static Gst.DebugColorMode get_color_mode ();
29                 [CCode (cheader_filename = "gst/gst.h")]
30                 public static Gst.DebugLevel get_default_threshold ();
31                 [CCode (cheader_filename = "gst/gst.h")]
32                 [Version (since = "1.12")]
33                 public static string get_stack_trace (Gst.StackTraceFlags flags);
34                 [CCode (cheader_filename = "gst/gst.h")]
35                 public static bool is_active ();
36                 [CCode (cheader_filename = "gst/gst.h")]
37                 public static bool is_colored ();
38                 [CCode (cheader_filename = "gst/gst.h")]
39                 public static unowned string level_get_name (Gst.DebugLevel level);
40                 [CCode (cheader_filename = "gst/gst.h")]
41                 [PrintfFormat]
42                 public static void log (Gst.DebugCategory category, Gst.DebugLevel level, string file, string function, int line, GLib.Object? object, string format, ...);
43                 [CCode (cheader_filename = "gst/gst.h")]
44                 public static void log_default (Gst.DebugCategory category, Gst.DebugLevel level, string file, string function, int line, GLib.Object? object, Gst.DebugMessage message, void* user_data = null);
45                 [CCode (cheader_filename = "gst/gst.h")]
46                 public static void log_valist (Gst.DebugCategory category, Gst.DebugLevel level, string file, string function, int line, GLib.Object? object, string format, va_list args);
47                 [CCode (cheader_filename = "gst/gst.h")]
48                 public static void print_stack_trace ();
49                 [CCode (cheader_filename = "gst/gst.h")]
50                 public static uint remove_log_function (Gst.LogFunction? func);
51                 [CCode (cheader_filename = "gst/gst.h")]
52                 public static uint remove_log_function_by_data (void* data);
53                 [CCode (cheader_filename = "gst/gst.h")]
54                 public static void set_active (bool active);
55                 [CCode (cheader_filename = "gst/gst.h")]
56                 [Version (since = "1.2")]
57                 public static void set_color_mode (Gst.DebugColorMode mode);
58                 [CCode (cheader_filename = "gst/gst.h")]
59                 [Version (since = "1.2")]
60                 public static void set_color_mode_from_string (string mode);
61                 [CCode (cheader_filename = "gst/gst.h")]
62                 public static void set_colored (bool colored);
63                 [CCode (cheader_filename = "gst/gst.h")]
64                 public static void set_default_threshold (Gst.DebugLevel level);
65                 [CCode (cheader_filename = "gst/gst.h")]
66                 public static void set_threshold_for_name (string name, Gst.DebugLevel level);
67                 [CCode (cheader_filename = "gst/gst.h")]
68                 [Version (since = "1.2")]
69                 public static void set_threshold_from_string (string list, bool reset);
70                 [CCode (cheader_filename = "gst/gst.h")]
71                 public static void unset_threshold_for_name (string name);
72         }
73         namespace ElementFactoryKlass {
74                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_ELEMENT_FACTORY_KLASS_DECODER")]
75                 public const string DECODER;
76                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_ELEMENT_FACTORY_KLASS_DECRYPTOR")]
77                 public const string DECRYPTOR;
78                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_ELEMENT_FACTORY_KLASS_DEMUXER")]
79                 public const string DEMUXER;
80                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_ELEMENT_FACTORY_KLASS_DEPAYLOADER")]
81                 public const string DEPAYLOADER;
82                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_ELEMENT_FACTORY_KLASS_ENCODER")]
83                 public const string ENCODER;
84                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_ELEMENT_FACTORY_KLASS_ENCRYPTOR")]
85                 public const string ENCRYPTOR;
86                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_ELEMENT_FACTORY_KLASS_FORMATTER")]
87                 public const string FORMATTER;
88                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_ELEMENT_FACTORY_KLASS_MEDIA_AUDIO")]
89                 public const string MEDIA_AUDIO;
90                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_ELEMENT_FACTORY_KLASS_MEDIA_IMAGE")]
91                 public const string MEDIA_IMAGE;
92                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_ELEMENT_FACTORY_KLASS_MEDIA_METADATA")]
93                 public const string MEDIA_METADATA;
94                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_ELEMENT_FACTORY_KLASS_MEDIA_SUBTITLE")]
95                 public const string MEDIA_SUBTITLE;
96                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_ELEMENT_FACTORY_KLASS_MEDIA_VIDEO")]
97                 public const string MEDIA_VIDEO;
98                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_ELEMENT_FACTORY_KLASS_MUXER")]
99                 public const string MUXER;
100                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_ELEMENT_FACTORY_KLASS_PARSER")]
101                 public const string PARSER;
102                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_ELEMENT_FACTORY_KLASS_PAYLOADER")]
103                 public const string PAYLOADER;
104                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_ELEMENT_FACTORY_KLASS_SINK")]
105                 public const string SINK;
106                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_ELEMENT_FACTORY_KLASS_SRC")]
107                 public const string SRC;
108         }
109         namespace ElementFactoryType {
110                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_ELEMENT_FACTORY_TYPE_ANY")]
111                 public const Gst.ElementFactoryListType ANY;
112                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_ELEMENT_FACTORY_TYPE_AUDIOVIDEO_SINKS")]
113                 public const Gst.ElementFactoryListType AUDIOVIDEO_SINKS;
114                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_ELEMENT_FACTORY_TYPE_AUDIO_ENCODER")]
115                 public const Gst.ElementFactoryListType AUDIO_ENCODER;
116                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_ELEMENT_FACTORY_TYPE_DECODABLE")]
117                 public const Gst.ElementFactoryListType DECODABLE;
118                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_ELEMENT_FACTORY_TYPE_DECODER")]
119                 public const Gst.ElementFactoryListType DECODER;
120                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_ELEMENT_FACTORY_TYPE_DECRYPTOR")]
121                 public const Gst.ElementFactoryListType DECRYPTOR;
122                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_ELEMENT_FACTORY_TYPE_DEMUXER")]
123                 public const Gst.ElementFactoryListType DEMUXER;
124                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_ELEMENT_FACTORY_TYPE_DEPAYLOADER")]
125                 public const Gst.ElementFactoryListType DEPAYLOADER;
126                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_ELEMENT_FACTORY_TYPE_ENCODER")]
127                 public const Gst.ElementFactoryListType ENCODER;
128                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_ELEMENT_FACTORY_TYPE_ENCRYPTOR")]
129                 public const Gst.ElementFactoryListType ENCRYPTOR;
130                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_ELEMENT_FACTORY_TYPE_FORMATTER")]
131                 public const Gst.ElementFactoryListType FORMATTER;
132                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_ELEMENT_FACTORY_TYPE_MAX_ELEMENTS")]
133                 public const Gst.ElementFactoryListType MAX_ELEMENTS;
134                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_ELEMENT_FACTORY_TYPE_MEDIA_ANY")]
135                 public const Gst.ElementFactoryListType MEDIA_ANY;
136                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_ELEMENT_FACTORY_TYPE_MEDIA_AUDIO")]
137                 public const Gst.ElementFactoryListType MEDIA_AUDIO;
138                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_ELEMENT_FACTORY_TYPE_MEDIA_IMAGE")]
139                 public const Gst.ElementFactoryListType MEDIA_IMAGE;
140                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_ELEMENT_FACTORY_TYPE_MEDIA_METADATA")]
141                 public const Gst.ElementFactoryListType MEDIA_METADATA;
142                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_ELEMENT_FACTORY_TYPE_MEDIA_SUBTITLE")]
143                 public const Gst.ElementFactoryListType MEDIA_SUBTITLE;
144                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_ELEMENT_FACTORY_TYPE_MEDIA_VIDEO")]
145                 public const Gst.ElementFactoryListType MEDIA_VIDEO;
146                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_ELEMENT_FACTORY_TYPE_MUXER")]
147                 public const Gst.ElementFactoryListType MUXER;
148                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_ELEMENT_FACTORY_TYPE_PARSER")]
149                 public const Gst.ElementFactoryListType PARSER;
150                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_ELEMENT_FACTORY_TYPE_PAYLOADER")]
151                 public const Gst.ElementFactoryListType PAYLOADER;
152                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_ELEMENT_FACTORY_TYPE_SINK")]
153                 public const Gst.ElementFactoryListType SINK;
154                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_ELEMENT_FACTORY_TYPE_SRC")]
155                 public const Gst.ElementFactoryListType SRC;
156                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_ELEMENT_FACTORY_TYPE_VIDEO_ENCODER")]
157                 public const Gst.ElementFactoryListType VIDEO_ENCODER;
158         }
159         namespace Tags {
160                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_ALBUM")]
161                 public const string ALBUM;
162                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_ALBUM_ARTIST")]
163                 public const string ALBUM_ARTIST;
164                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_ALBUM_ARTIST_SORTNAME")]
165                 public const string ALBUM_ARTIST_SORTNAME;
166                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_ALBUM_GAIN")]
167                 public const string ALBUM_GAIN;
168                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_ALBUM_PEAK")]
169                 public const string ALBUM_PEAK;
170                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_ALBUM_SORTNAME")]
171                 public const string ALBUM_SORTNAME;
172                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_ALBUM_VOLUME_COUNT")]
173                 public const string ALBUM_VOLUME_COUNT;
174                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_ALBUM_VOLUME_NUMBER")]
175                 public const string ALBUM_VOLUME_NUMBER;
176                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_APPLICATION_DATA")]
177                 public const string APPLICATION_DATA;
178                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_APPLICATION_NAME")]
179                 public const string APPLICATION_NAME;
180                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_ARTIST")]
181                 public const string ARTIST;
182                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_ARTIST_SORTNAME")]
183                 public const string ARTIST_SORTNAME;
184                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_ATTACHMENT")]
185                 public const string ATTACHMENT;
186                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_AUDIO_CODEC")]
187                 public const string AUDIO_CODEC;
188                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_BEATS_PER_MINUTE")]
189                 public const string BEATS_PER_MINUTE;
190                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_BITRATE")]
191                 public const string BITRATE;
192                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_CODEC")]
193                 public const string CODEC;
194                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_COMMENT")]
195                 public const string COMMENT;
196                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_COMPOSER")]
197                 public const string COMPOSER;
198                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_COMPOSER_SORTNAME")]
199                 public const string COMPOSER_SORTNAME;
200                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_CONDUCTOR")]
201                 [Version (since = "1.8")]
202                 public const string CONDUCTOR;
203                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_CONTACT")]
204                 public const string CONTACT;
205                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_CONTAINER_FORMAT")]
206                 public const string CONTAINER_FORMAT;
207                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_COPYRIGHT")]
208                 public const string COPYRIGHT;
209                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_COPYRIGHT_URI")]
210                 public const string COPYRIGHT_URI;
211                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_DATE")]
212                 public const string DATE;
213                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_DATE_TIME")]
214                 public const string DATE_TIME;
215                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_DESCRIPTION")]
216                 public const string DESCRIPTION;
217                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_DEVICE_MANUFACTURER")]
218                 public const string DEVICE_MANUFACTURER;
219                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_DEVICE_MODEL")]
220                 public const string DEVICE_MODEL;
221                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_DURATION")]
222                 public const string DURATION;
223                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_ENCODED_BY")]
224                 public const string ENCODED_BY;
225                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_ENCODER")]
226                 public const string ENCODER;
227                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_ENCODER_VERSION")]
228                 public const string ENCODER_VERSION;
229                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_EXTENDED_COMMENT")]
230                 public const string EXTENDED_COMMENT;
231                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_GENRE")]
232                 public const string GENRE;
233                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_GEO_LOCATION_CAPTURE_DIRECTION")]
234                 public const string GEO_LOCATION_CAPTURE_DIRECTION;
235                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_GEO_LOCATION_CITY")]
236                 public const string GEO_LOCATION_CITY;
237                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_GEO_LOCATION_COUNTRY")]
238                 public const string GEO_LOCATION_COUNTRY;
239                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_GEO_LOCATION_ELEVATION")]
240                 public const string GEO_LOCATION_ELEVATION;
241                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_GEO_LOCATION_HORIZONTAL_ERROR")]
242                 public const string GEO_LOCATION_HORIZONTAL_ERROR;
243                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_GEO_LOCATION_LATITUDE")]
244                 public const string GEO_LOCATION_LATITUDE;
245                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_GEO_LOCATION_LONGITUDE")]
246                 public const string GEO_LOCATION_LONGITUDE;
247                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_GEO_LOCATION_MOVEMENT_DIRECTION")]
248                 public const string GEO_LOCATION_MOVEMENT_DIRECTION;
249                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_GEO_LOCATION_MOVEMENT_SPEED")]
250                 public const string GEO_LOCATION_MOVEMENT_SPEED;
251                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_GEO_LOCATION_NAME")]
252                 public const string GEO_LOCATION_NAME;
253                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_GEO_LOCATION_SUBLOCATION")]
254                 public const string GEO_LOCATION_SUBLOCATION;
255                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_GROUPING")]
256                 public const string GROUPING;
257                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_HOMEPAGE")]
258                 public const string HOMEPAGE;
259                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_IMAGE")]
260                 public const string IMAGE;
261                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_IMAGE_ORIENTATION")]
262                 public const string IMAGE_ORIENTATION;
263                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_INTERPRETED_BY")]
264                 [Version (since = "1.2")]
265                 public const string INTERPRETED_BY;
266                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_ISRC")]
267                 public const string ISRC;
268                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_KEYWORDS")]
269                 public const string KEYWORDS;
270                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_LANGUAGE_CODE")]
271                 public const string LANGUAGE_CODE;
272                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_LANGUAGE_NAME")]
273                 public const string LANGUAGE_NAME;
274                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_LICENSE")]
275                 public const string LICENSE;
276                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_LICENSE_URI")]
277                 public const string LICENSE_URI;
278                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_LOCATION")]
279                 public const string LOCATION;
280                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_LYRICS")]
281                 public const string LYRICS;
282                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_MAXIMUM_BITRATE")]
283                 public const string MAXIMUM_BITRATE;
284                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_MIDI_BASE_NOTE")]
285                 [Version (since = "1.4")]
286                 public const string MIDI_BASE_NOTE;
287                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_MINIMUM_BITRATE")]
288                 public const string MINIMUM_BITRATE;
289                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_NOMINAL_BITRATE")]
290                 public const string NOMINAL_BITRATE;
291                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_ORGANIZATION")]
292                 public const string ORGANIZATION;
293                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_PERFORMER")]
294                 public const string PERFORMER;
295                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_PREVIEW_IMAGE")]
296                 public const string PREVIEW_IMAGE;
297                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_PRIVATE_DATA")]
298                 [Version (since = "1.8")]
299                 public const string PRIVATE_DATA;
300                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_PUBLISHER")]
301                 [Version (since = "1.2")]
302                 public const string PUBLISHER;
303                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_REFERENCE_LEVEL")]
304                 public const string REFERENCE_LEVEL;
305                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_SERIAL")]
306                 public const string SERIAL;
307                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_SHOW_EPISODE_NUMBER")]
308                 public const string SHOW_EPISODE_NUMBER;
309                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_SHOW_NAME")]
310                 public const string SHOW_NAME;
311                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_SHOW_SEASON_NUMBER")]
312                 public const string SHOW_SEASON_NUMBER;
313                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_SHOW_SORTNAME")]
314                 public const string SHOW_SORTNAME;
315                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_SUBTITLE_CODEC")]
316                 public const string SUBTITLE_CODEC;
317                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_TITLE")]
318                 public const string TITLE;
319                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_TITLE_SORTNAME")]
320                 public const string TITLE_SORTNAME;
321                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_TRACK_COUNT")]
322                 public const string TRACK_COUNT;
323                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_TRACK_GAIN")]
324                 public const string TRACK_GAIN;
325                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_TRACK_NUMBER")]
326                 public const string TRACK_NUMBER;
327                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_TRACK_PEAK")]
328                 public const string TRACK_PEAK;
329                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_USER_RATING")]
330                 public const string USER_RATING;
331                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_VERSION")]
332                 public const string VERSION;
333                 [CCode (cheader_filename = "gst/gst.h", cname = "GST_TAG_VIDEO_CODEC")]
334                 public const string VIDEO_CODEC;
335                 [CCode (cheader_filename = "gst/gst.h", cname = "gst_tag_exists")]
336                 public static bool exists (string tag);
337                 [CCode (cheader_filename = "gst/gst.h", cname = "gst_tag_get_description")]
338                 public static unowned string get_description (string tag);
339                 [CCode (cheader_filename = "gst/gst.h", cname = "gst_tag_get_flag")]
340                 public static Gst.TagFlag get_flag (string tag);
341                 [CCode (cheader_filename = "gst/gst.h", cname = "gst_tag_get_nick")]
342                 public static unowned string get_nick (string tag);
343                 [CCode (cheader_filename = "gst/gst.h", cname = "gst_tag_get_type")]
344                 public static GLib.Type get_type (string tag);
345                 [CCode (cheader_filename = "gst/gst.h", cname = "gst_tag_is_fixed")]
346                 public static bool is_fixed (string tag);
347                 [CCode (cheader_filename = "gst/gst.h", cname = "gst_tag_list_copy_value")]
348                 public static bool list_copy_value (out GLib.Value dest, Gst.TagList list, string tag);
349                 [CCode (cheader_filename = "gst/gst.h", cname = "gst_tag_merge_strings_with_comma")]
350                 public static void merge_strings_with_comma (out GLib.Value dest, GLib.Value src);
351                 [CCode (cheader_filename = "gst/gst.h", cname = "gst_tag_merge_use_first")]
352                 public static void merge_use_first (out GLib.Value dest, GLib.Value src);
353                 [CCode (cheader_filename = "gst/gst.h", cname = "gst_tag_register")]
354                 public static void register (string name, Gst.TagFlag flag, GLib.Type type, string nick, string blurb, Gst.TagMergeFunc? func);
355                 [CCode (cheader_filename = "gst/gst.h", cname = "gst_tag_register_static")]
356                 public static void register_static (string name, Gst.TagFlag flag, GLib.Type type, string nick, string blurb, Gst.TagMergeFunc? func);
357         }
358         namespace URI {
359                 [CCode (cheader_filename = "gst/gst.h")]
360                 public static string @construct (string protocol, string location);
361                 [CCode (cheader_filename = "gst/gst.h")]
362                 public static GLib.Quark error_quark ();
363                 [CCode (cheader_filename = "gst/gst.h")]
364                 [Version (since = "1.6")]
365                 public static Gst.Uri? from_string (string uri);
366                 [CCode (cheader_filename = "gst/gst.h")]
367                 public static string get_location (string uri);
368                 [CCode (cheader_filename = "gst/gst.h")]
369                 public static string get_protocol (string uri);
370                 [CCode (cheader_filename = "gst/gst.h")]
371                 public static bool has_protocol (string uri, string protocol);
372                 [CCode (cheader_filename = "gst/gst.h")]
373                 public static bool is_valid (string uri);
374                 [CCode (cheader_filename = "gst/gst.h")]
375                 [Version (since = "1.6")]
376                 public static string join_strings (string base_uri, string ref_uri);
377                 [CCode (cheader_filename = "gst/gst.h")]
378                 public static bool protocol_is_supported (Gst.URIType type, string protocol);
379                 [CCode (cheader_filename = "gst/gst.h")]
380                 public static bool protocol_is_valid (string protocol);
381         }
382         namespace Util {
383                 [CCode (cheader_filename = "gst/gst.h")]
384                 public static void* array_binary_search (void* array, uint num_elements, size_t element_size, [CCode (delegate_target_pos = 6.1)] GLib.CompareDataFunc<void*> search_func, Gst.SearchMode mode, void* search_data);
385                 [CCode (cheader_filename = "gst/gst.h")]
386                 public static void double_to_fraction (double src, out int dest_n, out int dest_d);
387                 [CCode (cheader_filename = "gst/gst.h")]
388                 public static void dump_mem (uint8 mem, uint size);
389                 [CCode (cheader_filename = "gst/gst.h")]
390                 public static bool fraction_add (int a_n, int a_d, int b_n, int b_d, out int res_n, out int res_d);
391                 [CCode (cheader_filename = "gst/gst.h")]
392                 public static int fraction_compare (int a_n, int a_d, int b_n, int b_d);
393                 [CCode (cheader_filename = "gst/gst.h")]
394                 public static bool fraction_multiply (int a_n, int a_d, int b_n, int b_d, out int res_n, out int res_d);
395                 [CCode (cheader_filename = "gst/gst.h")]
396                 public static void fraction_to_double (int src_n, int src_d, out double dest);
397                 [CCode (cheader_filename = "gst/gst.h")]
398                 public static uint64 gdouble_to_guint64 (double value);
399                 [CCode (cheader_filename = "gst/gst.h")]
400                 [Version (since = "1.12")]
401                 public static bool get_object_array (GLib.Object object, string name, out GLib.ValueArray array);
402                 [CCode (cheader_filename = "gst/gst.h")]
403                 public static Gst.ClockTime get_timestamp ();
404                 [CCode (cheader_filename = "gst/gst.h")]
405                 public static int greatest_common_divisor (int a, int b);
406                 [CCode (cheader_filename = "gst/gst.h")]
407                 public static int64 greatest_common_divisor_int64 (int64 a, int64 b);
408                 [CCode (cheader_filename = "gst/gst.h")]
409                 public static uint group_id_next ();
410                 [CCode (cheader_filename = "gst/gst.h")]
411                 public static double guint64_to_gdouble (uint64 value);
412                 [CCode (cheader_filename = "gst/gst.h")]
413                 public static int32 seqnum_compare (uint32 s1, uint32 s2);
414                 [CCode (cheader_filename = "gst/gst.h")]
415                 public static uint32 seqnum_next ();
416                 [CCode (cheader_filename = "gst/gst.h")]
417                 public static void set_object_arg (GLib.Object object, string name, string value);
418                 [CCode (cheader_filename = "gst/gst.h")]
419                 [Version (since = "1.12")]
420                 public static bool set_object_array (GLib.Object object, string name, GLib.ValueArray array);
421                 [CCode (cheader_filename = "gst/gst.h")]
422                 public static void set_value_from_string (out GLib.Value value, string value_str);
423                 [CCode (cheader_filename = "gst/gst.h")]
424                 public static uint64 uint64_scale (uint64 val, uint64 num, uint64 denom);
425                 [CCode (cheader_filename = "gst/gst.h")]
426                 public static uint64 uint64_scale_ceil (uint64 val, uint64 num, uint64 denom);
427                 [CCode (cheader_filename = "gst/gst.h")]
428                 public static uint64 uint64_scale_int (uint64 val, int num, int denom);
429                 [CCode (cheader_filename = "gst/gst.h")]
430                 public static uint64 uint64_scale_int_ceil (uint64 val, int num, int denom);
431                 [CCode (cheader_filename = "gst/gst.h")]
432                 public static uint64 uint64_scale_int_round (uint64 val, int num, int denom);
433                 [CCode (cheader_filename = "gst/gst.h")]
434                 public static uint64 uint64_scale_round (uint64 val, uint64 num, uint64 denom);
435         }
436         namespace Value {
437                 [CCode (cheader_filename = "gst/gst.h")]
438                 public static bool can_compare (GLib.Value value1, GLib.Value value2);
439                 [CCode (cheader_filename = "gst/gst.h")]
440                 public static bool can_intersect (GLib.Value value1, GLib.Value value2);
441                 [CCode (cheader_filename = "gst/gst.h")]
442                 public static bool can_subtract (GLib.Value minuend, GLib.Value subtrahend);
443                 [CCode (cheader_filename = "gst/gst.h")]
444                 public static bool can_union (GLib.Value value1, GLib.Value value2);
445                 [CCode (cheader_filename = "gst/gst.h")]
446                 public static int compare (GLib.Value value1, GLib.Value value2);
447                 [CCode (cheader_filename = "gst/gst.h")]
448                 public static bool deserialize (out GLib.Value dest, string src);
449                 [CCode (cheader_filename = "gst/gst.h")]
450                 public static bool fixate (GLib.Value dest, GLib.Value src);
451                 [CCode (cheader_filename = "gst/gst.h")]
452                 public static bool fraction_multiply (GLib.Value product, GLib.Value factor1, GLib.Value factor2);
453                 [CCode (cheader_filename = "gst/gst.h")]
454                 public static bool fraction_subtract (GLib.Value dest, GLib.Value minuend, GLib.Value subtrahend);
455                 [CCode (cheader_filename = "gst/gst.h")]
456                 public static uint64 get_bitmask (GLib.Value value);
457                 [CCode (cheader_filename = "gst/gst.h")]
458                 public static unowned Gst.Caps get_caps (GLib.Value value);
459                 [CCode (cheader_filename = "gst/gst.h")]
460                 public static unowned Gst.CapsFeatures get_caps_features (GLib.Value value);
461                 [CCode (cheader_filename = "gst/gst.h")]
462                 public static double get_double_range_max (GLib.Value value);
463                 [CCode (cheader_filename = "gst/gst.h")]
464                 public static double get_double_range_min (GLib.Value value);
465                 [CCode (cheader_filename = "gst/gst.h")]
466                 [Version (since = "1.6")]
467                 public static uint get_flagset_flags (GLib.Value value);
468                 [CCode (cheader_filename = "gst/gst.h")]
469                 [Version (since = "1.6")]
470                 public static uint get_flagset_mask (GLib.Value value);
471                 [CCode (cheader_filename = "gst/gst.h")]
472                 public static int get_fraction_denominator (GLib.Value value);
473                 [CCode (cheader_filename = "gst/gst.h")]
474                 public static int get_fraction_numerator (GLib.Value value);
475                 [CCode (cheader_filename = "gst/gst.h")]
476                 public static unowned GLib.Value? get_fraction_range_max (GLib.Value value);
477                 [CCode (cheader_filename = "gst/gst.h")]
478                 public static unowned GLib.Value? get_fraction_range_min (GLib.Value value);
479                 [CCode (cheader_filename = "gst/gst.h")]
480                 public static int64 get_int64_range_max (GLib.Value value);
481                 [CCode (cheader_filename = "gst/gst.h")]
482                 public static int64 get_int64_range_min (GLib.Value value);
483                 [CCode (cheader_filename = "gst/gst.h")]
484                 public static int64 get_int64_range_step (GLib.Value value);
485                 [CCode (cheader_filename = "gst/gst.h")]
486                 public static int get_int_range_max (GLib.Value value);
487                 [CCode (cheader_filename = "gst/gst.h")]
488                 public static int get_int_range_min (GLib.Value value);
489                 [CCode (cheader_filename = "gst/gst.h")]
490                 public static int get_int_range_step (GLib.Value value);
491                 [CCode (cheader_filename = "gst/gst.h")]
492                 public static unowned Gst.Structure get_structure (GLib.Value value);
493                 [CCode (cheader_filename = "gst/gst.h")]
494                 public static void init_and_copy (out GLib.Value dest, GLib.Value src);
495                 [CCode (cheader_filename = "gst/gst.h")]
496                 public static bool intersect (out GLib.Value dest, GLib.Value value1, GLib.Value value2);
497                 [CCode (cheader_filename = "gst/gst.h")]
498                 public static bool is_fixed (GLib.Value value);
499                 [CCode (cheader_filename = "gst/gst.h")]
500                 public static bool is_subset (GLib.Value value1, GLib.Value value2);
501                 [CCode (cheader_filename = "gst/gst.h")]
502                 public static void register (Gst.ValueTable table);
503                 [CCode (cheader_filename = "gst/gst.h")]
504                 public static string? serialize (GLib.Value value);
505                 [CCode (cheader_filename = "gst/gst.h")]
506                 public static void set_bitmask (GLib.Value value, uint64 bitmask);
507                 [CCode (cheader_filename = "gst/gst.h")]
508                 public static void set_caps (GLib.Value value, Gst.Caps caps);
509                 [CCode (cheader_filename = "gst/gst.h")]
510                 public static void set_caps_features (GLib.Value value, Gst.CapsFeatures features);
511                 [CCode (cheader_filename = "gst/gst.h")]
512                 public static void set_double_range (GLib.Value value, double start, double end);
513                 [CCode (cheader_filename = "gst/gst.h")]
514                 [Version (since = "1.6")]
515                 public static void set_flagset (GLib.Value value, uint flags, uint mask);
516                 [CCode (cheader_filename = "gst/gst.h")]
517                 public static void set_fraction (GLib.Value value, int numerator, int denominator);
518                 [CCode (cheader_filename = "gst/gst.h")]
519                 public static void set_fraction_range (GLib.Value value, GLib.Value start, GLib.Value end);
520                 [CCode (cheader_filename = "gst/gst.h")]
521                 public static void set_fraction_range_full (GLib.Value value, int numerator_start, int denominator_start, int numerator_end, int denominator_end);
522                 [CCode (cheader_filename = "gst/gst.h")]
523                 public static void set_int64_range (GLib.Value value, int64 start, int64 end);
524                 [CCode (cheader_filename = "gst/gst.h")]
525                 public static void set_int64_range_step (GLib.Value value, int64 start, int64 end, int64 step);
526                 [CCode (cheader_filename = "gst/gst.h")]
527                 public static void set_int_range (GLib.Value value, int start, int end);
528                 [CCode (cheader_filename = "gst/gst.h")]
529                 public static void set_int_range_step (GLib.Value value, int start, int end, int step);
530                 [CCode (cheader_filename = "gst/gst.h")]
531                 public static void set_structure (GLib.Value value, Gst.Structure structure);
532                 [CCode (cheader_filename = "gst/gst.h")]
533                 public static bool subtract (out GLib.Value dest, GLib.Value minuend, GLib.Value subtrahend);
534                 [CCode (cheader_filename = "gst/gst.h")]
535                 public static bool union (out GLib.Value dest, GLib.Value value1, GLib.Value value2);
536         }
537         [CCode (cheader_filename = "gst/gst.h", copy_function = "gst_allocation_params_copy", free_function = "gst_allocation_params_free", type_id = "gst_allocation_params_get_type ()")]
538         [Compact]
539         public class AllocationParams {
540                 public size_t align;
541                 public Gst.MemoryFlags flags;
542                 public size_t padding;
543                 public size_t prefix;
544                 public Gst.AllocationParams copy ();
545                 public void free ();
546                 public void init ();
547         }
548         [CCode (cheader_filename = "gst/gst.h", type_id = "gst_allocator_get_type ()")]
549         public abstract class Allocator : Gst.Object {
550                 public weak Gst.MemoryCopyFunction mem_copy;
551                 public weak Gst.MemoryIsSpanFunction mem_is_span;
552                 public weak Gst.MemoryMapFunction mem_map;
553                 public weak Gst.MemoryMapFullFunction mem_map_full;
554                 public weak Gst.MemoryShareFunction mem_share;
555                 public weak string mem_type;
556                 public weak Gst.MemoryUnmapFunction mem_unmap;
557                 public weak Gst.MemoryUnmapFullFunction mem_unmap_full;
558                 [CCode (has_construct_function = false)]
559                 protected Allocator ();
560                 public virtual Gst.Memory alloc (size_t size, Gst.AllocationParams? @params);
561                 public static Gst.Allocator? find (string? name);
562                 public virtual void free (owned Gst.Memory memory);
563                 public static void register (string name, owned Gst.Allocator allocator);
564                 public void set_default ();
565         }
566         [CCode (cheader_filename = "gst/gst.h", ref_function = "gst_atomic_queue_ref", type_id = "gst_atomic_queue_get_type ()", unref_function = "gst_atomic_queue_unref")]
567         [Compact]
568         public class AtomicQueue<T> {
569                 [CCode (has_construct_function = false)]
570                 public AtomicQueue (uint initial_size);
571                 public uint length ();
572                 public unowned T peek<T> ();
573                 public T pop ();
574                 public void push (owned T data);
575                 public void @ref ();
576                 public void unref ();
577         }
578         [CCode (cheader_filename = "gst/gst.h", type_id = "gst_bin_get_type ()")]
579         public class Bin : Gst.Element, Gst.ChildProxy {
580                 public Gst.Bus child_bus;
581                 public GLib.List<Gst.Element> children;
582                 public uint32 children_cookie;
583                 public bool clock_dirty;
584                 public Gst.Element clock_provider;
585                 public GLib.List<Gst.Message> messages;
586                 public int numchildren;
587                 public bool polling;
588                 public Gst.Clock provided_clock;
589                 public bool state_dirty;
590                 [CCode (has_construct_function = false, returns_floating_reference = true, type = "GstElement*")]
591                 public Bin (string? name);
592                 public bool add (Gst.Element element);
593                 [NoWrapper]
594                 public virtual bool add_element (Gst.Element element);
595                 public void add_many (params Gst.Element[] elements);
596                 public Gst.Pad? find_unlinked_pad (Gst.PadDirection direction);
597                 public Gst.Element get_by_interface (GLib.Type iface);
598                 public Gst.Element? get_by_name (string name);
599                 public Gst.Element? get_by_name_recurse_up (string name);
600                 [Version (since = "1.10")]
601                 public Gst.ElementFlags get_suppressed_flags ();
602                 [NoWrapper]
603                 public virtual void handle_message (Gst.Message message);
604                 public Gst.Iterator? iterate_all_by_interface (GLib.Type iface);
605                 public Gst.Iterator? iterate_elements ();
606                 public Gst.Iterator? iterate_recurse ();
607                 public Gst.Iterator? iterate_sinks ();
608                 public Gst.Iterator? iterate_sorted ();
609                 public Gst.Iterator? iterate_sources ();
610                 public bool recalculate_latency ();
611                 public bool remove (Gst.Element element);
612                 [NoWrapper]
613                 public virtual bool remove_element (Gst.Element element);
614                 public void remove_many (params Gst.Element[] elements);
615                 [Version (since = "1.10")]
616                 public void set_suppressed_flags (Gst.ElementFlags flags);
617                 [Version (since = "1.6")]
618                 public bool sync_children_states ();
619                 [NoAccessorMethod]
620                 public bool async_handling { get; set; }
621                 [NoAccessorMethod]
622                 public bool message_forward { get; set; }
623                 [Version (since = "1.10")]
624                 public virtual signal void deep_element_added (Gst.Bin sub_bin, Gst.Element child);
625                 [Version (since = "1.10")]
626                 public virtual signal void deep_element_removed (Gst.Bin sub_bin, Gst.Element child);
627                 public virtual signal bool do_latency ();
628                 public virtual signal void element_added (Gst.Element child);
629                 public virtual signal void element_removed (Gst.Element child);
630         }
631         [CCode (cheader_filename = "gst/gst.h", type_id = "gst_bitmask_get_type ()")]
632         public class Bitmask {
633                 [CCode (has_construct_function = false)]
634                 protected Bitmask ();
635         }
636         [CCode (cheader_filename = "gst/gst.h", ref_function = "gst_buffer_ref", type_id = "gst_buffer_get_type ()", unref_function = "gst_buffer_unref")]
637         [Compact]
638         public class Buffer : Gst.MiniObject {
639                 public Gst.ClockTime dts;
640                 public Gst.ClockTime duration;
641                 public uint64 offset;
642                 public uint64 offset_end;
643                 public weak Gst.BufferPool pool;
644                 public Gst.ClockTime pts;
645                 [CCode (has_construct_function = false)]
646                 public Buffer ();
647                 public unowned Gst.Meta? add_meta (Gst.MetaInfo info, void* @params);
648                 [Version (since = "1.6")]
649                 public unowned Gst.ParentBufferMeta? add_parent_buffer_meta (Gst.Buffer @ref);
650                 [Version (since = "1.6")]
651                 public unowned Gst.ProtectionMeta? add_protection_meta (owned Gst.Structure info);
652                 [CCode (has_construct_function = false)]
653                 public Buffer.allocate (Gst.Allocator? allocator, size_t size, Gst.AllocationParams? @params);
654                 public Gst.Buffer append (owned Gst.Buffer buf2);
655                 public void append_memory (owned Gst.Memory mem);
656                 public Gst.Buffer append_region (owned Gst.Buffer buf2, ssize_t offset, ssize_t size);
657                 [Version (since = "1.6")]
658                 public Gst.Buffer copy_deep ();
659                 [CCode (instance_pos = 1.9)]
660                 public bool copy_into (Gst.Buffer dst, Gst.BufferCopyFlags flags, size_t offset, size_t size);
661                 public Gst.Buffer copy_region (Gst.BufferCopyFlags flags, size_t offset, size_t size);
662                 public size_t extract (size_t offset, void* dest, size_t size);
663                 [Version (since = "1.0.10")]
664                 public void extract_dup (size_t offset, size_t size, [CCode (array_length_cname = "dest_size", array_length_pos = 3.1, array_length_type = "gsize")] out uint8[] dest);
665                 public size_t fill (size_t offset, [CCode (array_length_cname = "size", array_length_pos = 2.1, array_length_type = "gsize")] uint8[] src);
666                 public bool find_memory (size_t offset, size_t size, out uint idx, out uint length, out size_t skip);
667                 public bool foreach_meta (Gst.BufferForeachMetaFunc func);
668                 public Gst.Memory get_all_memory ();
669                 [Version (since = "1.10")]
670                 public Gst.BufferFlags get_flags ();
671                 [Version (since = "1.2")]
672                 public static uint get_max_memory ();
673                 public Gst.Memory get_memory (uint idx);
674                 public Gst.Memory get_memory_range (uint idx, int length);
675                 public unowned Gst.Meta? get_meta (GLib.Type api);
676                 public size_t get_size ();
677                 public size_t get_sizes (out size_t offset, out size_t maxsize);
678                 public size_t get_sizes_range (uint idx, int length, out size_t offset, out size_t maxsize);
679                 public bool has_flags (Gst.BufferFlags flags);
680                 public void insert_memory (int idx, owned Gst.Memory mem);
681                 [Version (since = "1.4")]
682                 public bool is_all_memory_writable ();
683                 [Version (since = "1.4")]
684                 public bool is_memory_range_writable (uint idx, int length);
685                 public bool map (out Gst.MapInfo info, Gst.MapFlags flags);
686                 public bool map_range (uint idx, int length, out Gst.MapInfo info, Gst.MapFlags flags);
687                 public int memcmp (size_t offset, [CCode (array_length_cname = "size", array_length_pos = 2.1, array_length_type = "gsize")] uint8[] mem);
688                 public size_t memset (size_t offset, uint8 val, size_t size);
689                 public uint n_memory ();
690                 [CCode (has_construct_function = false, simple_generics = true)]
691                 public static Gst.Buffer new_wrapped_full<T> (Gst.MemoryFlags flags, [CCode (array_length_cname = "maxsize", array_length_pos = 2.5, array_length_type = "gsize")] uint8[] data, size_t offset, size_t size, owned T user_data);
692                 public unowned Gst.Memory peek_memory (uint idx);
693                 public void prepend_memory (owned Gst.Memory mem);
694                 public void remove_all_memory ();
695                 public void remove_memory (uint idx);
696                 public void remove_memory_range (uint idx, int length);
697                 public bool remove_meta (Gst.Meta meta);
698                 public void replace_all_memory (owned Gst.Memory mem);
699                 public void replace_memory (uint idx, owned Gst.Memory mem);
700                 public void replace_memory_range (uint idx, int length, owned Gst.Memory mem);
701                 public void resize (ssize_t offset, ssize_t size);
702                 public bool resize_range (uint idx, int length, ssize_t offset, ssize_t size);
703                 [Version (since = "1.10")]
704                 public bool set_flags (Gst.BufferFlags flags);
705                 public void set_size (ssize_t size);
706                 public void unmap (Gst.MapInfo info);
707                 [Version (since = "1.10")]
708                 public bool unset_flags (Gst.BufferFlags flags);
709                 [CCode (has_construct_function = false)]
710                 public Buffer.wrapped ([CCode (array_length_cname = "size", array_length_pos = 1.1, array_length_type = "gsize")] owned uint8[] data);
711         }
712         [CCode (cheader_filename = "gst/gst.h", ref_function = "gst_buffer_list_ref", type_id = "gst_buffer_list_get_type ()", unref_function = "gst_buffer_list_unref")]
713         [Compact]
714         public class BufferList : Gst.MiniObject {
715                 [CCode (has_construct_function = false)]
716                 public BufferList ();
717                 [Version (since = "1.6")]
718                 public Gst.BufferList copy_deep ();
719                 public bool @foreach (Gst.BufferListFunc func);
720                 public unowned Gst.Buffer? @get (uint idx);
721                 public void insert (int idx, owned Gst.Buffer buffer);
722                 public uint length ();
723                 public void remove (uint idx, uint length);
724                 [CCode (has_construct_function = false)]
725                 public BufferList.sized (uint size);
726         }
727         [CCode (cheader_filename = "gst/gst.h", type_id = "gst_buffer_pool_get_type ()")]
728         public class BufferPool : Gst.Object {
729                 public int flushing;
730                 [CCode (has_construct_function = false, returns_floating_reference = true)]
731                 public BufferPool ();
732                 public virtual Gst.FlowReturn acquire_buffer (out Gst.Buffer buffer, Gst.BufferPoolAcquireParams? @params);
733                 [NoWrapper]
734                 public virtual Gst.FlowReturn alloc_buffer (Gst.Buffer buffer, Gst.BufferPoolAcquireParams @params);
735                 public static void config_add_option (Gst.Structure config, string option);
736                 public static bool config_get_allocator (Gst.Structure config, out unowned Gst.Allocator allocator, out unowned Gst.AllocationParams @params);
737                 public static unowned string config_get_option (Gst.Structure config, uint index);
738                 public static bool config_get_params (Gst.Structure config, out unowned Gst.Caps caps, out uint size, out uint min_buffers, out uint max_buffers);
739                 public static bool config_has_option (Gst.Structure config, string option);
740                 public static uint config_n_options (Gst.Structure config);
741                 public static void config_set_allocator (Gst.Structure config, Gst.Allocator? allocator, Gst.AllocationParams? @params);
742                 public static void config_set_params (Gst.Structure config, Gst.Caps caps, uint size, uint min_buffers, uint max_buffers);
743                 [Version (since = "1.4")]
744                 public static bool config_validate_params (Gst.Structure config, Gst.Caps caps, uint size, uint min_buffers, uint max_buffers);
745                 [NoWrapper]
746                 public virtual void flush_start ();
747                 [NoWrapper]
748                 public virtual void flush_stop ();
749                 [NoWrapper]
750                 public virtual void free_buffer (Gst.Buffer buffer);
751                 public Gst.Structure get_config ();
752                 [CCode (array_length = false, array_null_terminated = true)]
753                 public virtual unowned string[] get_options ();
754                 public bool has_option (string option);
755                 public bool is_active ();
756                 public virtual void release_buffer (owned Gst.Buffer buffer);
757                 [NoWrapper]
758                 public virtual void reset_buffer (Gst.Buffer buffer);
759                 public bool set_active (bool active);
760                 public virtual bool set_config (owned Gst.Structure config);
761                 [Version (since = "1.4")]
762                 public void set_flushing (bool flushing);
763                 [NoWrapper]
764                 public virtual bool start ();
765                 [NoWrapper]
766                 public virtual bool stop ();
767         }
768         [CCode (cheader_filename = "gst/gst.h", type_id = "gst_bus_get_type ()")]
769         public class Bus : Gst.Object {
770                 [CCode (has_construct_function = false)]
771                 public Bus ();
772                 [CCode (cname = "gst_bus_add_signal_watch_full")]
773                 public void add_signal_watch (int priority = GLib.Priority.DEFAULT);
774                 [CCode (cname = "gst_bus_add_watch_full")]
775                 public uint add_watch (int priority, owned Gst.BusFunc func);
776                 public bool async_signal_func (Gst.Message message, void* data);
777                 public GLib.Source create_watch ();
778                 public void disable_sync_message_emission ();
779                 public void enable_sync_message_emission ();
780                 public bool have_pending ();
781                 public Gst.Message? peek ();
782                 public Gst.Message? poll (Gst.MessageType events, Gst.ClockTime timeout);
783                 public Gst.Message? pop ();
784                 public Gst.Message? pop_filtered (Gst.MessageType types);
785                 public bool post (owned Gst.Message message);
786                 public void remove_signal_watch ();
787                 [Version (since = "1.6")]
788                 public bool remove_watch ();
789                 public void set_flushing (bool flushing);
790                 public void set_sync_handler (owned Gst.BusSyncHandler? func);
791                 public Gst.BusSyncReply sync_signal_handler (Gst.Message message, void* data);
792                 public Gst.Message? timed_pop (Gst.ClockTime timeout);
793                 public Gst.Message? timed_pop_filtered (Gst.ClockTime timeout, Gst.MessageType types);
794                 public bool enable_async { construct; }
795                 public virtual signal void message (Gst.Message message);
796                 public virtual signal void sync_message (Gst.Message message);
797         }
798         [CCode (cheader_filename = "gst/gst.h", ref_function = "gst_caps_ref", type_id = "gst_caps_get_type ()", unref_function = "gst_caps_unref")]
799         [Compact]
800         public class Caps : Gst.MiniObject {
801                 [CCode (has_construct_function = false)]
802                 public Caps.any ();
803                 public void append (owned Gst.Caps caps2);
804                 public void append_structure (owned Gst.Structure structure);
805                 [Version (since = "1.2")]
806                 public void append_structure_full (owned Gst.Structure structure, owned Gst.CapsFeatures? features = null);
807                 public bool can_intersect (Gst.Caps caps2);
808                 public Gst.Caps copy_nth (uint nth);
809                 [CCode (has_construct_function = false)]
810                 public Caps.empty ();
811                 [CCode (has_construct_function = false)]
812                 public Caps.empty_simple (string media_type);
813                 [Version (since = "1.6")]
814                 public void filter_and_map_in_place (Gst.CapsFilterMapFunc func);
815                 public Gst.Caps fixate ();
816                 [Version (since = "1.6")]
817                 public bool @foreach (Gst.CapsForeachFunc func);
818                 public static Gst.Caps from_string (string string);
819                 [CCode (has_construct_function = false)]
820                 public Caps.full (params Gst.Structure[] structure);
821                 [CCode (has_construct_function = false)]
822                 public Caps.full_valist (Gst.Structure structure, va_list var_args);
823                 [Version (since = "1.2")]
824                 public unowned Gst.CapsFeatures get_features (uint index);
825                 public uint get_size ();
826                 public unowned Gst.Structure get_structure (uint index);
827                 [CCode (cname = "gst_caps_intersect_full")]
828                 public Gst.Caps intersect (Gst.Caps caps2, Gst.CapsIntersectMode mode = Gst.CapsIntersectMode.ZIG_ZAG);
829                 public bool is_always_compatible (Gst.Caps caps2);
830                 public bool is_any ();
831                 public bool is_empty ();
832                 public bool is_equal (Gst.Caps caps2);
833                 public bool is_equal_fixed (Gst.Caps caps2);
834                 public bool is_fixed ();
835                 public bool is_strictly_equal (Gst.Caps caps2);
836                 public bool is_subset (Gst.Caps superset);
837                 public bool is_subset_structure (Gst.Structure structure);
838                 [Version (since = "1.2")]
839                 public bool is_subset_structure_full (Gst.Structure structure, Gst.CapsFeatures? features);
840                 [Version (since = "1.6")]
841                 public bool map_in_place (Gst.CapsMapFunc func);
842                 public Gst.Caps merge (owned Gst.Caps caps2);
843                 public Gst.Caps merge_structure (owned Gst.Structure structure);
844                 [Version (since = "1.2")]
845                 public Gst.Caps merge_structure_full (owned Gst.Structure structure, owned Gst.CapsFeatures? features);
846                 public Gst.Caps normalize ();
847                 public void remove_structure (uint idx);
848                 [Version (since = "1.2")]
849                 public void set_features (uint index, owned Gst.CapsFeatures? features);
850                 public void set_simple (string field, ...);
851                 public void set_simple_valist (string field, va_list varargs);
852                 public void set_value (string field, GLib.Value value);
853                 [CCode (has_construct_function = false)]
854                 public Caps.simple (string media_type, string fieldname, ...);
855                 public Gst.Caps simplify ();
856                 public Gst.Structure steal_structure (uint index);
857                 public Gst.Caps subtract (Gst.Caps subtrahend);
858                 public string to_string ();
859                 public Gst.Caps truncate ();
860         }
861         [CCode (cheader_filename = "gst/gst.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "gst_caps_features_get_type ()")]
862         [Compact]
863         public class CapsFeatures {
864                 [CCode (has_construct_function = false)]
865                 [Version (since = "1.2")]
866                 public CapsFeatures (string feature1, ...);
867                 [Version (since = "1.2")]
868                 public void add (string feature);
869                 [Version (since = "1.2")]
870                 public void add_id (GLib.Quark feature);
871                 [CCode (has_construct_function = false)]
872                 [Version (since = "1.2")]
873                 public CapsFeatures.any ();
874                 [Version (since = "1.2")]
875                 public bool contains (string feature);
876                 [Version (since = "1.2")]
877                 public bool contains_id (GLib.Quark feature);
878                 [Version (since = "1.2")]
879                 public Gst.CapsFeatures copy ();
880                 [CCode (has_construct_function = false)]
881                 [Version (since = "1.2")]
882                 public CapsFeatures.empty ();
883                 [Version (since = "1.2")]
884                 public void free ();
885                 [Version (since = "1.2")]
886                 public static Gst.CapsFeatures? from_string (string features);
887                 [Version (since = "1.2")]
888                 public unowned string get_nth (uint i);
889                 [Version (since = "1.2")]
890                 public GLib.Quark get_nth_id (uint i);
891                 [Version (since = "1.2")]
892                 public uint get_size ();
893                 [CCode (has_construct_function = false)]
894                 public CapsFeatures.id (params GLib.Quark[] features);
895                 [CCode (has_construct_function = false)]
896                 [Version (since = "1.2")]
897                 public CapsFeatures.id_valist (GLib.Quark feature1, va_list varargs);
898                 [Version (since = "1.2")]
899                 public bool is_any ();
900                 [Version (since = "1.2")]
901                 public bool is_equal (Gst.CapsFeatures features2);
902                 [Version (since = "1.2")]
903                 public void remove (string feature);
904                 [Version (since = "1.2")]
905                 public void remove_id (GLib.Quark feature);
906                 [Version (since = "1.2")]
907                 public bool set_parent_refcount (int refcount);
908                 [Version (since = "1.2")]
909                 public string to_string ();
910                 [CCode (has_construct_function = false)]
911                 [Version (since = "1.2")]
912                 public CapsFeatures.valist (string feature1, va_list varargs);
913         }
914         [CCode (cheader_filename = "gst/gst.h", type_id = "gst_clock_get_type ()")]
915         public abstract class Clock : Gst.Object {
916                 [CCode (has_construct_function = false)]
917                 protected Clock ();
918                 public bool add_observation (Gst.ClockTime slave, Gst.ClockTime master, out double r_squared);
919                 [Version (since = "1.6")]
920                 public bool add_observation_unapplied (Gst.ClockTime slave, Gst.ClockTime master, out double r_squared, out Gst.ClockTime @internal, out Gst.ClockTime external, out Gst.ClockTime rate_num, out Gst.ClockTime rate_denom);
921                 public Gst.ClockTime adjust_unlocked (Gst.ClockTime @internal);
922                 [Version (since = "1.6")]
923                 public Gst.ClockTime adjust_with_calibration (Gst.ClockTime internal_target, Gst.ClockTime cinternal, Gst.ClockTime cexternal, Gst.ClockTime cnum, Gst.ClockTime cdenom);
924                 [NoWrapper]
925                 public virtual Gst.ClockTime change_resolution (Gst.ClockTime old_resolution, Gst.ClockTime new_resolution);
926                 public void get_calibration (out Gst.ClockTime @internal, out Gst.ClockTime external, out Gst.ClockTime rate_num, out Gst.ClockTime rate_denom);
927                 public virtual Gst.ClockTime get_internal_time ();
928                 public Gst.Clock? get_master ();
929                 public virtual Gst.ClockTime get_resolution ();
930                 public Gst.ClockTime get_time ();
931                 public Gst.ClockTime get_timeout ();
932                 public static int id_compare_func (void* id1, void* id2);
933                 public static Gst.ClockTime id_get_time (Gst.ClockID id);
934                 public static Gst.ClockID id_ref (Gst.ClockID id);
935                 public static void id_unref (owned Gst.ClockID id);
936                 public static void id_unschedule (Gst.ClockID id);
937                 public static Gst.ClockReturn id_wait (Gst.ClockID id, out Gst.ClockTimeDiff jitter);
938                 public static Gst.ClockReturn id_wait_async (Gst.ClockID id, owned Gst.ClockCallback func);
939                 [Version (since = "1.6")]
940                 public bool is_synced ();
941                 public Gst.ClockID new_periodic_id (Gst.ClockTime start_time, Gst.ClockTime interval);
942                 public Gst.ClockID new_single_shot_id (Gst.ClockTime time);
943                 public bool periodic_id_reinit (Gst.ClockID id, Gst.ClockTime start_time, Gst.ClockTime interval);
944                 public void set_calibration (Gst.ClockTime @internal, Gst.ClockTime external, Gst.ClockTime rate_num, Gst.ClockTime rate_denom);
945                 public bool set_master (Gst.Clock? master);
946                 public Gst.ClockTime set_resolution (Gst.ClockTime resolution);
947                 [Version (since = "1.6")]
948                 public void set_synced (bool synced);
949                 public void set_timeout (Gst.ClockTime timeout);
950                 public bool single_shot_id_reinit (Gst.ClockID id, Gst.ClockTime time);
951                 public Gst.ClockTime unadjust_unlocked (Gst.ClockTime external);
952                 [Version (since = "1.8")]
953                 public Gst.ClockTime unadjust_with_calibration (Gst.ClockTime external_target, Gst.ClockTime cinternal, Gst.ClockTime cexternal, Gst.ClockTime cnum, Gst.ClockTime cdenom);
954                 [NoWrapper]
955                 public virtual void unschedule (Gst.ClockEntry entry);
956                 [NoWrapper]
957                 public virtual Gst.ClockReturn wait (Gst.ClockEntry entry, Gst.ClockTimeDiff jitter);
958                 [NoWrapper]
959                 public virtual Gst.ClockReturn wait_async (Gst.ClockEntry entry);
960                 [Version (since = "1.6")]
961                 public bool wait_for_sync (Gst.ClockTime timeout);
962                 public uint64 timeout { get; set; }
963                 [NoAccessorMethod]
964                 public int window_size { get; set; }
965                 [NoAccessorMethod]
966                 public int window_threshold { get; set; }
967                 [Version (since = "1.6")]
968                 public signal void synced (bool synced);
969         }
970         [CCode (cheader_filename = "gst/gst.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "gst_context_get_type ()")]
971         [Compact]
972         public class Context {
973                 [CCode (has_construct_function = false)]
974                 [Version (since = "1.2")]
975                 public Context (string context_type, bool persistent);
976                 [Version (since = "1.2")]
977                 public unowned string get_context_type ();
978                 [Version (since = "1.2")]
979                 public unowned Gst.Structure get_structure ();
980                 [Version (since = "1.2")]
981                 public bool has_context_type (string context_type);
982                 [Version (since = "1.2")]
983                 public bool is_persistent ();
984                 [Version (since = "1.2")]
985                 public Gst.Structure writable_structure ();
986         }
987         [CCode (cheader_filename = "gst/gst.h", type_id = "gst_control_binding_get_type ()")]
988         public abstract class ControlBinding : Gst.Object {
989                 public weak GLib.ParamSpec pspec;
990                 [CCode (has_construct_function = false)]
991                 protected ControlBinding ();
992                 public virtual bool get_g_value_array (Gst.ClockTime timestamp, Gst.ClockTime interval, [CCode (array_length_cname = "n_values", array_length_pos = 2.5, array_length_type = "guint")] GLib.Value[] values);
993                 public virtual GLib.Value? get_value (Gst.ClockTime timestamp);
994                 public virtual bool get_value_array<T> (Gst.ClockTime timestamp, Gst.ClockTime interval, [CCode (array_length_pos = 2.5, array_length_type = "guint")] T[] values);
995                 public bool is_disabled ();
996                 public void set_disabled (bool disabled);
997                 public virtual bool sync_values (Gst.Object object, Gst.ClockTime timestamp, Gst.ClockTime last_sync);
998                 [NoAccessorMethod]
999                 public string name { owned get; construct; }
1000                 [NoAccessorMethod]
1001                 public Gst.Object object { owned get; construct; }
1002         }
1003         [CCode (cheader_filename = "gst/gst.h", type_id = "gst_control_source_get_type ()")]
1004         public abstract class ControlSource : Gst.Object {
1005                 [CCode (cname = "get_value_array")]
1006                 public weak Gst.ControlSourceGetValueArray get_value_array_func;
1007                 [CCode (cname = "get_value")]
1008                 public weak Gst.ControlSourceGetValue get_value_func;
1009                 [CCode (has_construct_function = false)]
1010                 protected ControlSource ();
1011                 public bool get_value (Gst.ClockTime timestamp, out double value);
1012                 public bool get_value_array (Gst.ClockTime timestamp, Gst.ClockTime interval, [CCode (array_length_cname = "n_values", array_length_pos = 2.5, array_length_type = "guint")] double[] values);
1013         }
1014         [CCode (cheader_filename = "gst/gst.h", ref_function = "gst_date_time_ref", type_id = "gst_date_time_get_type ()", unref_function = "gst_date_time_unref")]
1015         [Compact]
1016         public class DateTime {
1017                 [CCode (has_construct_function = false)]
1018                 public DateTime (float tzoffset, int year, int month, int day, int hour, int minute, double seconds);
1019                 [CCode (has_construct_function = false)]
1020                 public DateTime.from_g_date_time (owned GLib.DateTime dt);
1021                 [CCode (has_construct_function = false)]
1022                 public DateTime.from_iso8601_string (string string);
1023                 [CCode (has_construct_function = false)]
1024                 public DateTime.from_unix_epoch_local_time (int64 secs);
1025                 [CCode (has_construct_function = false)]
1026                 public DateTime.from_unix_epoch_utc (int64 secs);
1027                 public int get_day ();
1028                 public int get_hour ();
1029                 public int get_microsecond ();
1030                 public int get_minute ();
1031                 public int get_month ();
1032                 public int get_second ();
1033                 public float get_time_zone_offset ();
1034                 public int get_year ();
1035                 public bool has_day ();
1036                 public bool has_month ();
1037                 public bool has_second ();
1038                 public bool has_time ();
1039                 public bool has_year ();
1040                 [CCode (has_construct_function = false)]
1041                 public DateTime.local_time (int year, int month, int day, int hour, int minute, double seconds);
1042                 [CCode (has_construct_function = false)]
1043                 public DateTime.now_local_time ();
1044                 [CCode (has_construct_function = false)]
1045                 public DateTime.now_utc ();
1046                 public unowned Gst.DateTime @ref ();
1047                 public GLib.DateTime? to_g_date_time ();
1048                 public string? to_iso8601_string ();
1049                 public void unref ();
1050                 [CCode (has_construct_function = false)]
1051                 public DateTime.y (int year);
1052                 [CCode (has_construct_function = false)]
1053                 public DateTime.ym (int year, int month);
1054                 [CCode (has_construct_function = false)]
1055                 public DateTime.ymd (int year, int month, int day);
1056         }
1057         [CCode (cheader_filename = "gst/gst.h", has_type_id = false)]
1058         [Compact]
1059         public class DebugMessage {
1060                 public unowned string @get ();
1061         }
1062         [CCode (cheader_filename = "gst/gst.h", type_id = "gst_device_get_type ()")]
1063         [Version (since = "1.4")]
1064         public abstract class Device : Gst.Object {
1065                 [CCode (has_construct_function = false)]
1066                 protected Device ();
1067                 public virtual Gst.Element create_element (string? name);
1068                 public Gst.Caps get_caps ();
1069                 public string get_device_class ();
1070                 public string get_display_name ();
1071                 [Version (since = "1.6")]
1072                 public Gst.Structure get_properties ();
1073                 public bool has_classes (string classes);
1074                 public bool has_classesv ([CCode (array_length = false, array_null_terminated = true)] string[] classes);
1075                 public virtual bool reconfigure_element (Gst.Element element);
1076                 public Gst.Caps caps { owned get; construct; }
1077                 public string device_class { owned get; construct; }
1078                 public string display_name { owned get; construct; }
1079                 public Gst.Structure properties { owned get; construct; }
1080                 public signal void removed ();
1081         }
1082         [CCode (cheader_filename = "gst/gst.h", type_id = "gst_device_monitor_get_type ()")]
1083         [Version (since = "1.4")]
1084         public class DeviceMonitor : Gst.Object {
1085                 [CCode (has_construct_function = false)]
1086                 public DeviceMonitor ();
1087                 public uint add_filter (string? classes, Gst.Caps? caps);
1088                 public Gst.Bus get_bus ();
1089                 public GLib.List<Gst.Device> get_devices ();
1090                 [CCode (array_length = false, array_null_terminated = true)]
1091                 [Version (since = "1.6")]
1092                 public string[] get_providers ();
1093                 [Version (since = "1.6")]
1094                 public bool get_show_all_devices ();
1095                 public bool remove_filter (uint filter_id);
1096                 [Version (since = "1.6")]
1097                 public void set_show_all_devices (bool show_all);
1098                 public bool start ();
1099                 public void stop ();
1100                 [NoAccessorMethod]
1101                 public bool show_all { get; set; }
1102         }
1103         [CCode (cheader_filename = "gst/gst.h", type_id = "gst_device_provider_get_type ()")]
1104         [Version (since = "1.4")]
1105         public abstract class DeviceProvider : Gst.Object {
1106                 public weak GLib.List<void*> devices;
1107                 [CCode (has_construct_function = false)]
1108                 protected DeviceProvider ();
1109                 [CCode (cname = "gst_device_provider_class_add_metadata")]
1110                 public class void add_metadata (string key, string value);
1111                 [CCode (cname = "gst_device_provider_class_add_static_metadata")]
1112                 public class void add_static_metadata (string key, owned string value);
1113                 public bool can_monitor ();
1114                 public void device_add (owned Gst.Device device);
1115                 public void device_remove (Gst.Device device);
1116                 public Gst.Bus get_bus ();
1117                 public GLib.List<Gst.Device> get_devices ();
1118                 public unowned Gst.DeviceProviderFactory get_factory ();
1119                 [CCode (array_length = false, array_null_terminated = true)]
1120                 [Version (since = "1.6")]
1121                 public string[] get_hidden_providers ();
1122                 [CCode (cname = "gst_device_provider_class_get_metadata")]
1123                 public class unowned string get_metadata (string key);
1124                 [Version (since = "1.6")]
1125                 public void hide_provider (string name);
1126                 public static bool register (Gst.Plugin? plugin, string name, uint rank, GLib.Type type);
1127                 [CCode (cname = "gst_device_provider_class_set_metadata")]
1128                 public class void set_metadata (string longname, string classification, string description, string author);
1129                 [CCode (cname = "gst_device_provider_class_set_static_metadata")]
1130                 public class void set_static_metadata (owned string longname, owned string classification, owned string description, owned string author);
1131                 public virtual bool start ();
1132                 public virtual void stop ();
1133                 [Version (since = "1.6")]
1134                 public void unhide_provider (string name);
1135                 public signal void provider_hidden (string object);
1136                 public signal void provider_unhidden (string object);
1137         }
1138         [CCode (cheader_filename = "gst/gst.h", type_id = "gst_device_provider_factory_get_type ()")]
1139         [Version (since = "1.4")]
1140         public class DeviceProviderFactory : Gst.PluginFeature {
1141                 [CCode (has_construct_function = false)]
1142                 protected DeviceProviderFactory ();
1143                 public static Gst.DeviceProviderFactory? find (string name);
1144                 public Gst.DeviceProvider? @get ();
1145                 public static Gst.DeviceProvider? get_by_name (string factoryname);
1146                 public GLib.Type get_device_provider_type ();
1147                 public unowned string? get_metadata (string key);
1148                 [CCode (array_length = false, array_null_terminated = true)]
1149                 public string[]? get_metadata_keys ();
1150                 public bool has_classes (string? classes);
1151                 public bool has_classesv ([CCode (array_length = false, array_null_terminated = true)] string[]? classes);
1152                 public static GLib.List<Gst.DeviceProviderFactory> list_get_device_providers (Gst.Rank minrank);
1153         }
1154         [CCode (cheader_filename = "gst/gst.h", type_id = "gst_double_range_get_type ()")]
1155         public class DoubleRange {
1156                 [CCode (has_construct_function = false)]
1157                 protected DoubleRange ();
1158         }
1159         [CCode (cheader_filename = "gst/gst.h", type_id = "gst_dynamic_type_factory_get_type ()")]
1160         public class DynamicTypeFactory : Gst.PluginFeature {
1161                 [CCode (has_construct_function = false)]
1162                 protected DynamicTypeFactory ();
1163                 public static GLib.Type load (string factoryname);
1164         }
1165         [CCode (cheader_filename = "gst/gst.h", type_id = "gst_element_get_type ()")]
1166         public abstract class Element : Gst.Object {
1167                 public Gst.ClockTimeDiff base_time;
1168                 public Gst.Bus bus;
1169                 public Gst.Clock clock;
1170                 public weak GLib.List<Gst.Context> contexts;
1171                 public Gst.State current_state;
1172                 public Gst.StateChangeReturn last_return;
1173                 public Gst.State next_state;
1174                 public uint16 numpads;
1175                 public uint16 numsinkpads;
1176                 public uint16 numsrcpads;
1177                 public GLib.List<Gst.Pad> pads;
1178                 public uint32 pads_cookie;
1179                 public Gst.State pending_state;
1180                 public GLib.List<weak Gst.Pad> sinkpads;
1181                 public GLib.List<weak Gst.Pad> srcpads;
1182                 public Gst.ClockTime start_time;
1183                 public GLib.Cond state_cond;
1184                 public uint32 state_cookie;
1185                 public GLib.RecMutex state_lock;
1186                 public Gst.State target_state;
1187                 [CCode (has_construct_function = false)]
1188                 protected Element ();
1189                 public void abort_state ();
1190                 [CCode (cname = "gst_element_class_add_metadata")]
1191                 public class void add_metadata (string key, string value);
1192                 public bool add_pad (Gst.Pad pad);
1193                 [CCode (cname = "gst_element_class_add_pad_template")]
1194                 public class void add_pad_template (owned Gst.PadTemplate templ);
1195                 [Version (since = "1.10")]
1196                 public ulong add_property_deep_notify_watch (string? property_name, bool include_value);
1197                 [Version (since = "1.10")]
1198                 public ulong add_property_notify_watch (string? property_name, bool include_value);
1199                 [CCode (cname = "gst_element_class_add_static_metadata")]
1200                 public class void add_static_metadata (string key, string value);
1201                 [CCode (cname = "gst_element_class_add_static_pad_template")]
1202                 [Version (since = "1.8")]
1203                 public class void add_static_pad_template (Gst.StaticPadTemplate static_templ);
1204                 [Version (since = "1.10")]
1205                 public void call_async (owned Gst.ElementCallAsyncFunc func);
1206                 public virtual Gst.StateChangeReturn change_state (Gst.StateChange transition);
1207                 public Gst.StateChangeReturn continue_state (Gst.StateChangeReturn ret);
1208                 public void create_all_pads ();
1209                 public Gst.ClockTime get_base_time ();
1210                 public Gst.Bus get_bus ();
1211                 public Gst.Clock get_clock ();
1212                 public Gst.Pad? get_compatible_pad (Gst.Pad pad, Gst.Caps? caps);
1213                 public unowned Gst.PadTemplate? get_compatible_pad_template (Gst.PadTemplate compattempl);
1214                 [Version (since = "1.8")]
1215                 public Gst.Context get_context (string context_type);
1216                 [Version (since = "1.8")]
1217                 public Gst.Context get_context_unlocked (string context_type);
1218                 [Version (since = "1.8")]
1219                 public GLib.List<Gst.Context> get_contexts ();
1220                 public unowned Gst.ElementFactory get_factory ();
1221                 [CCode (cname = "gst_element_class_get_metadata")]
1222                 public class unowned string get_metadata (string key);
1223                 [CCode (cname = "gst_element_class_get_pad_template")]
1224                 public class unowned Gst.PadTemplate? get_pad_template (string name);
1225                 [CCode (cname = "gst_element_class_get_pad_template_list")]
1226                 public class unowned GLib.List<Gst.PadTemplate> get_pad_template_list ();
1227                 public Gst.Pad? get_request_pad (string name);
1228                 public Gst.ClockTime get_start_time ();
1229                 public virtual Gst.StateChangeReturn get_state (out Gst.State state, out Gst.State pending, Gst.ClockTime timeout);
1230                 public Gst.Pad? get_static_pad (string name);
1231                 public bool is_locked_state ();
1232                 public Gst.Iterator iterate_pads ();
1233                 public Gst.Iterator iterate_sink_pads ();
1234                 public Gst.Iterator iterate_src_pads ();
1235                 public bool link (Gst.Element dest);
1236                 public bool link_filtered (Gst.Element dest, Gst.Caps? filter);
1237                 public bool link_many (params Gst.Element[] elements);
1238                 [CCode (cname = "gst_element_link_pads_full")]
1239                 public bool link_pads (string? srcpadname, Gst.Element dest, string? destpadname, Gst.PadLinkCheck flags = Gst.PadLinkCheck.DEFAULT);
1240                 public bool link_pads_filtered (string? srcpadname, Gst.Element dest, string? destpadname, Gst.Caps? filter);
1241                 public void lost_state ();
1242                 [CCode (returns_floating_reference = true)]
1243                 public static Gst.Element make_from_uri (Gst.URIType type, string uri, string? elementname) throws GLib.Error;
1244                 public void message_full (Gst.MessageType type, GLib.Quark domain, int code, owned string? text, owned string? debug, string file, string function, int line);
1245                 [Version (since = "1.10")]
1246                 public void message_full_with_details (Gst.MessageType type, GLib.Quark domain, int code, owned string? text, owned string? debug, string file, string function, int line, owned Gst.Structure structure);
1247                 public virtual bool post_message (owned Gst.Message message);
1248                 public virtual Gst.Clock? provide_clock ();
1249                 public virtual bool query (Gst.Query query);
1250                 public bool query_convert (Gst.Format src_format, int64 src_val, Gst.Format dest_format, out int64 dest_val);
1251                 public bool query_duration (Gst.Format format, out int64 duration);
1252                 public bool query_position (Gst.Format format, out int64 cur);
1253                 public static bool register (Gst.Plugin? plugin, string name, uint rank, GLib.Type type);
1254                 [NoWrapper]
1255                 public virtual void release_pad (Gst.Pad pad);
1256                 public void release_request_pad (Gst.Pad pad);
1257                 public bool remove_pad (owned Gst.Pad pad);
1258                 [Version (since = "1.10")]
1259                 public void remove_property_notify_watch (ulong watch_id);
1260                 [CCode (vfunc_name = "request_new_pad")]
1261                 public virtual Gst.Pad? request_pad (Gst.PadTemplate templ, string? name, Gst.Caps? caps);
1262                 public bool seek (double rate, Gst.Format format, Gst.SeekFlags flags, Gst.SeekType start_type, int64 start, Gst.SeekType stop_type, int64 stop);
1263                 public bool seek_simple (Gst.Format format, Gst.SeekFlags seek_flags, int64 seek_pos);
1264                 public virtual bool send_event (owned Gst.Event event);
1265                 public void set_base_time (Gst.ClockTime time);
1266                 public virtual void set_bus (Gst.Bus bus);
1267                 public virtual bool set_clock (Gst.Clock clock);
1268                 public virtual void set_context (Gst.Context context);
1269                 public bool set_locked_state (bool locked_state);
1270                 [CCode (cname = "gst_element_class_set_metadata")]
1271                 public class void set_metadata (string longname, string classification, string description, string author);
1272                 public void set_start_time (Gst.ClockTime time);
1273                 public virtual Gst.StateChangeReturn set_state (Gst.State state);
1274                 [CCode (cname = "gst_element_class_set_static_metadata")]
1275                 public class void set_static_metadata (string longname, string classification, string description, string author);
1276                 public static unowned string state_change_return_get_name (Gst.StateChangeReturn state_ret);
1277                 [NoWrapper]
1278                 public virtual void state_changed (Gst.State oldstate, Gst.State newstate, Gst.State pending);
1279                 public static unowned string state_get_name (Gst.State state);
1280                 public bool sync_state_with_parent ();
1281                 public void unlink (Gst.Element dest);
1282                 public void unlink_many (params Gst.Element[] elements);
1283                 public void unlink_pads (string srcpadname, Gst.Element dest, string destpadname);
1284                 [HasEmitter]
1285                 public virtual signal void no_more_pads ();
1286                 public virtual signal void pad_added (Gst.Pad pad);
1287                 public virtual signal void pad_removed (Gst.Pad pad);
1288         }
1289         [CCode (cheader_filename = "gst/gst.h", type_id = "gst_element_factory_get_type ()")]
1290         public class ElementFactory : Gst.PluginFeature {
1291                 [CCode (has_construct_function = false)]
1292                 protected ElementFactory ();
1293                 public bool can_sink_all_caps (Gst.Caps caps);
1294                 public bool can_sink_any_caps (Gst.Caps caps);
1295                 public bool can_src_all_caps (Gst.Caps caps);
1296                 public bool can_src_any_caps (Gst.Caps caps);
1297                 [CCode (returns_floating_reference = true)]
1298                 public Gst.Element? create (string? name);
1299                 public static Gst.ElementFactory? find (string name);
1300                 public GLib.Type get_element_type ();
1301                 public unowned string? get_metadata (string key);
1302                 [CCode (array_length = false, array_null_terminated = true)]
1303                 public string[]? get_metadata_keys ();
1304                 public uint get_num_pad_templates ();
1305                 public unowned GLib.List<Gst.StaticPadTemplate?> get_static_pad_templates ();
1306                 [CCode (array_length = false, array_null_terminated = true)]
1307                 public unowned string[] get_uri_protocols ();
1308                 public Gst.URIType get_uri_type ();
1309                 public bool has_interface (string interfacename);
1310                 public static GLib.List<Gst.ElementFactory> list_filter (GLib.List<Gst.ElementFactory> list, Gst.Caps caps, Gst.PadDirection direction, bool subsetonly);
1311                 public static GLib.List<Gst.ElementFactory> list_get_elements (Gst.ElementFactoryListType type, Gst.Rank minrank);
1312                 public bool list_is_type (Gst.ElementFactoryListType type);
1313                 [CCode (returns_floating_reference = true)]
1314                 public static Gst.Element? make (string factoryname, string? name);
1315         }
1316         [CCode (cheader_filename = "gst/gst.h", ref_function = "gst_event_ref", type_id = "gst_event_get_type ()", unref_function = "gst_event_unref")]
1317         [Compact]
1318         public class Event : Gst.MiniObject {
1319                 public uint32 seqnum;
1320                 public uint64 timestamp;
1321                 public Gst.EventType type;
1322                 [CCode (has_construct_function = false)]
1323                 public Event.buffer_size (Gst.Format format, int64 minsize, int64 maxsize, bool @async);
1324                 [CCode (has_construct_function = false)]
1325                 public Event.caps (Gst.Caps caps);
1326                 public void copy_segment (Gst.Segment segment);
1327                 [CCode (has_construct_function = false)]
1328                 public Event.custom (Gst.EventType type, owned Gst.Structure structure);
1329                 [CCode (has_construct_function = false)]
1330                 public Event.eos ();
1331                 [CCode (has_construct_function = false)]
1332                 public Event.flush_start ();
1333                 [CCode (has_construct_function = false)]
1334                 public Event.flush_stop (bool reset_time);
1335                 [CCode (has_construct_function = false)]
1336                 public Event.gap (Gst.ClockTime timestamp, Gst.ClockTime duration);
1337                 [Version (since = "1.4")]
1338                 public int64 get_running_time_offset ();
1339                 public uint32 get_seqnum ();
1340                 public unowned Gst.Structure get_structure ();
1341                 public bool has_name (string name);
1342                 [CCode (has_construct_function = false)]
1343                 public Event.latency (Gst.ClockTime latency);
1344                 [CCode (has_construct_function = false)]
1345                 public Event.navigation (owned Gst.Structure structure);
1346                 public void parse_buffer_size (out Gst.Format format, out int64 minsize, out int64 maxsize, out bool @async);
1347                 public void parse_caps (out unowned Gst.Caps caps);
1348                 public void parse_flush_stop (out bool reset_time);
1349                 public void parse_gap (out Gst.ClockTime timestamp, out Gst.ClockTime duration);
1350                 [Version (since = "1.2")]
1351                 public bool parse_group_id (out uint group_id);
1352                 public void parse_latency (out Gst.ClockTime latency);
1353                 [Version (since = "1.6")]
1354                 public void parse_protection (out unowned string system_id, out unowned Gst.Buffer data, string? origin);
1355                 public void parse_qos (out Gst.QOSType type, out double proportion, out Gst.ClockTimeDiff diff, out Gst.ClockTime timestamp);
1356                 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);
1357                 public void parse_segment (out unowned Gst.Segment segment);
1358                 public void parse_segment_done (out Gst.Format format, out int64 position);
1359                 [Version (since = "1.10")]
1360                 public void parse_select_streams (out GLib.List<string> streams);
1361                 public void parse_sink_message (out Gst.Message msg);
1362                 public void parse_step (out Gst.Format format, out uint64 amount, out double rate, out bool flush, out bool intermediate);
1363                 [Version (since = "1.10")]
1364                 public void parse_stream (out Gst.Stream stream);
1365                 [Version (since = "1.10")]
1366                 public void parse_stream_collection (out Gst.StreamCollection collection);
1367                 [Version (since = "1.2")]
1368                 public void parse_stream_flags (out Gst.StreamFlags flags);
1369                 [Version (since = "1.10")]
1370                 public void parse_stream_group_done (out uint group_id);
1371                 public void parse_stream_start (out unowned string stream_id);
1372                 public void parse_tag (out unowned Gst.TagList taglist);
1373                 public void parse_toc (out Gst.Toc toc, out bool updated);
1374                 public void parse_toc_select (out string uid);
1375                 [CCode (has_construct_function = false)]
1376                 [Version (since = "1.6")]
1377                 public Event.protection (string system_id, Gst.Buffer data, string origin);
1378                 [CCode (has_construct_function = false)]
1379                 public Event.qos (Gst.QOSType type, double proportion, Gst.ClockTimeDiff diff, Gst.ClockTime timestamp);
1380                 [CCode (has_construct_function = false)]
1381                 public Event.reconfigure ();
1382                 [CCode (has_construct_function = false)]
1383                 public Event.seek (double rate, Gst.Format format, Gst.SeekFlags flags, Gst.SeekType start_type, int64 start, Gst.SeekType stop_type, int64 stop);
1384                 [CCode (has_construct_function = false)]
1385                 public Event.segment (Gst.Segment segment);
1386                 [CCode (has_construct_function = false)]
1387                 public Event.segment_done (Gst.Format format, int64 position);
1388                 [CCode (has_construct_function = false)]
1389                 [Version (since = "1.10")]
1390                 public Event.select_streams (GLib.List<string> streams);
1391                 [Version (since = "1.2")]
1392                 public void set_group_id (uint group_id);
1393                 [Version (since = "1.4")]
1394                 public void set_running_time_offset (int64 offset);
1395                 public void set_seqnum (uint32 seqnum);
1396                 [Version (since = "1.10")]
1397                 public void set_stream (Gst.Stream stream);
1398                 [Version (since = "1.2")]
1399                 public void set_stream_flags (Gst.StreamFlags flags);
1400                 [CCode (has_construct_function = false)]
1401                 public Event.sink_message (string name, Gst.Message msg);
1402                 [CCode (has_construct_function = false)]
1403                 public Event.step (Gst.Format format, uint64 amount, double rate, bool flush, bool intermediate);
1404                 [CCode (has_construct_function = false)]
1405                 [Version (since = "1.10")]
1406                 public Event.stream_collection (Gst.StreamCollection collection);
1407                 [CCode (has_construct_function = false)]
1408                 [Version (since = "1.10")]
1409                 public Event.stream_group_done (uint group_id);
1410                 [CCode (has_construct_function = false)]
1411                 public Event.stream_start (string stream_id);
1412                 [CCode (has_construct_function = false)]
1413                 public Event.tag (owned Gst.TagList taglist);
1414                 [CCode (has_construct_function = false)]
1415                 public Event.toc (Gst.Toc toc, bool updated);
1416                 [CCode (has_construct_function = false)]
1417                 public Event.toc_select (string uid);
1418                 public unowned Gst.Structure writable_structure ();
1419         }
1420         [CCode (cheader_filename = "gst/gst.h", lower_case_csuffix = "flagset", type_id = "gst_flagset_get_type ()")]
1421         public class FlagSet {
1422                 [CCode (has_construct_function = false)]
1423                 protected FlagSet ();
1424                 [Version (since = "1.6")]
1425                 public static GLib.Type register (GLib.Type flags_type);
1426         }
1427         [CCode (cheader_filename = "gst/gst.h", type_id = "gst_fraction_get_type ()")]
1428         public class Fraction {
1429                 [CCode (has_construct_function = false)]
1430                 protected Fraction ();
1431         }
1432         [CCode (cheader_filename = "gst/gst.h", type_id = "gst_fraction_range_get_type ()")]
1433         public class FractionRange {
1434                 [CCode (has_construct_function = false)]
1435                 protected FractionRange ();
1436         }
1437         [CCode (cheader_filename = "gst/gst.h", type_id = "gst_ghost_pad_get_type ()")]
1438         public class GhostPad : Gst.ProxyPad {
1439                 [CCode (has_construct_function = false, returns_floating_reference = true, type = "GstPad*")]
1440                 public GhostPad (string? name, Gst.Pad target);
1441                 public static bool activate_mode_default (Gst.Pad pad, Gst.Object? parent, Gst.PadMode mode, bool active);
1442                 public bool @construct ();
1443                 [CCode (has_construct_function = false, type = "GstPad*")]
1444                 public GhostPad.from_template (string? name, Gst.Pad target, Gst.PadTemplate templ);
1445                 public Gst.Pad? get_target ();
1446                 public static bool internal_activate_mode_default (Gst.Pad pad, Gst.Object? parent, Gst.PadMode mode, bool active);
1447                 [CCode (has_construct_function = false, type = "GstPad*")]
1448                 public GhostPad.no_target (string? name, Gst.PadDirection dir);
1449                 [CCode (has_construct_function = false, type = "GstPad*")]
1450                 public GhostPad.no_target_from_template (string? name, Gst.PadTemplate templ);
1451                 public bool set_target (Gst.Pad? newtarget);
1452         }
1453         [CCode (cheader_filename = "gst/gst.h", type_id = "gst_int64_range_get_type ()")]
1454         public class Int64Range {
1455                 [CCode (has_construct_function = false)]
1456                 protected Int64Range ();
1457         }
1458         [CCode (cheader_filename = "gst/gst.h", type_id = "gst_int_range_get_type ()")]
1459         public class IntRange {
1460                 [CCode (has_construct_function = false)]
1461                 protected IntRange ();
1462         }
1463         [CCode (cheader_filename = "gst/gst.h", copy_function = "gst_iterator_copy", free_function = "gst_iterator_free", type_id = "gst_iterator_get_type ()")]
1464         [Compact]
1465         public class Iterator {
1466                 public uint32 cookie;
1467                 public weak Gst.IteratorItemFunction item;
1468                 public GLib.Mutex @lock;
1469                 public uint32 master_cookie;
1470                 public weak Gst.Iterator pushed;
1471                 public uint size;
1472                 public GLib.Type type;
1473                 [CCode (simple_generics = true)]
1474                 public Gst.Iterator filter<T> ([CCode (type = "GCompareFunc")] GLib.SearchFunc<GLib.Value,T> func, T user_data);
1475                 [CCode (simple_generics = true)]
1476                 public bool find_custom<T> ([CCode (type = "GCompareFunc")] GLib.SearchFunc<GLib.Value,T> func, out GLib.Value elem, T user_data);
1477                 public Gst.IteratorResult fold ([CCode (delegate_target_pos = 2.1)] Gst.IteratorFoldFunction func, GLib.Value ret);
1478                 public Gst.IteratorResult @foreach (Gst.IteratorForeachFunction func);
1479                 public void free ();
1480                 public Gst.IteratorResult next (out GLib.Value elem);
1481                 public void push (Gst.Iterator other);
1482                 public void resync ();
1483                 [CCode (has_construct_function = false)]
1484                 public Iterator.single (GLib.Type type, GLib.Value object);
1485         }
1486         [CCode (cheader_filename = "gst/gst.h", ref_function = "gst_memory_ref", type_id = "gst_memory_get_type ()", unref_function = "gst_memory_unref")]
1487         [Compact]
1488         public class Memory : Gst.MiniObject {
1489                 public size_t align;
1490                 public weak Gst.Allocator allocator;
1491                 public size_t maxsize;
1492                 public size_t offset;
1493                 public weak Gst.Memory parent;
1494                 public size_t size;
1495                 public Gst.Memory copy (ssize_t offset, ssize_t size);
1496                 public size_t get_sizes (size_t offset, size_t maxsize);
1497                 public bool is_span (Gst.Memory mem2, size_t offset);
1498                 [Version (since = "1.2")]
1499                 public bool is_type (string mem_type);
1500                 public Gst.Memory? make_mapped (out Gst.MapInfo info, Gst.MapFlags flags);
1501                 public bool map (out Gst.MapInfo info, Gst.MapFlags flags);
1502                 [CCode (has_construct_function = false, simple_generics = true)]
1503                 public static Gst.Memory new_wrapped<T> (Gst.MemoryFlags flags, [CCode (array_length_cname = "maxsize", array_length_pos = 2.5, array_length_type = "gsize")] uint8[] data, size_t offset, size_t size, owned T user_data);
1504                 public void resize (ssize_t offset, size_t size);
1505                 public Gst.Memory share (ssize_t offset, ssize_t size);
1506                 public void unmap (Gst.MapInfo info);
1507         }
1508         [CCode (cheader_filename = "gst/gst.h", ref_function = "gst_message_ref", type_id = "gst_message_get_type ()", unref_function = "gst_message_unref")]
1509         [Compact]
1510         public class Message : Gst.MiniObject {
1511                 public uint32 seqnum;
1512                 public weak Gst.Object src;
1513                 public uint64 timestamp;
1514                 public Gst.MessageType type;
1515                 [Version (since = "1.10")]
1516                 public void add_redirect_entry (string location, owned Gst.TagList? tag_list, owned Gst.Structure? entry_struct);
1517                 [CCode (has_construct_function = false)]
1518                 public Message.application (Gst.Object? src, owned Gst.Structure structure);
1519                 [CCode (has_construct_function = false)]
1520                 public Message.async_done (Gst.Object? src, Gst.ClockTime running_time);
1521                 [CCode (has_construct_function = false)]
1522                 public Message.async_start (Gst.Object? src);
1523                 [CCode (has_construct_function = false)]
1524                 public Message.buffering (Gst.Object? src, int percent);
1525                 [CCode (has_construct_function = false)]
1526                 public Message.clock_lost (Gst.Object? src, Gst.Clock clock);
1527                 [CCode (has_construct_function = false)]
1528                 public Message.clock_provide (Gst.Object? src, Gst.Clock clock, bool ready);
1529                 [CCode (has_construct_function = false)]
1530                 public Message.custom (Gst.MessageType type, Gst.Object? src, owned Gst.Structure? structure);
1531                 [CCode (has_construct_function = false)]
1532                 [Version (since = "1.4")]
1533                 public Message.device_added (Gst.Object src, Gst.Device device);
1534                 [CCode (has_construct_function = false)]
1535                 [Version (since = "1.4")]
1536                 public Message.device_removed (Gst.Object src, Gst.Device device);
1537                 [CCode (has_construct_function = false)]
1538                 public Message.duration_changed (Gst.Object? src);
1539                 [CCode (has_construct_function = false)]
1540                 public Message.element (Gst.Object? src, owned Gst.Structure structure);
1541                 [CCode (has_construct_function = false)]
1542                 public Message.eos (Gst.Object? src);
1543                 [CCode (has_construct_function = false)]
1544                 public Message.error (Gst.Object? src, GLib.Error error, string debug);
1545                 [CCode (has_construct_function = false)]
1546                 [Version (since = "1.10")]
1547                 public Message.error_with_details (Gst.Object? src, GLib.Error error, string debug, owned Gst.Structure details);
1548                 [Version (since = "1.10")]
1549                 public size_t get_num_redirect_entries ();
1550                 public uint32 get_seqnum ();
1551                 public unowned GLib.Value? get_stream_status_object ();
1552                 public unowned Gst.Structure get_structure ();
1553                 public bool has_name (string name);
1554                 [CCode (has_construct_function = false)]
1555                 [Version (since = "1.2")]
1556                 public Message.have_context (Gst.Object? src, owned Gst.Context context);
1557                 [CCode (has_construct_function = false)]
1558                 public Message.info (Gst.Object? src, GLib.Error error, string debug);
1559                 [CCode (has_construct_function = false)]
1560                 [Version (since = "1.10")]
1561                 public Message.info_with_details (Gst.Object? src, GLib.Error error, string debug, owned Gst.Structure details);
1562                 [CCode (has_construct_function = false)]
1563                 public Message.latency (Gst.Object? src);
1564                 [CCode (has_construct_function = false)]
1565                 [Version (since = "1.2")]
1566                 public Message.need_context (Gst.Object? src, string context_type);
1567                 [CCode (has_construct_function = false)]
1568                 public Message.new_clock (Gst.Object? src, Gst.Clock clock);
1569                 public void parse_async_done (out Gst.ClockTime running_time);
1570                 public void parse_buffering (out int percent);
1571                 public void parse_buffering_stats (out Gst.BufferingMode mode, out int avg_in, out int avg_out, out int64 buffering_left);
1572                 public void parse_clock_lost (out unowned Gst.Clock clock);
1573                 public void parse_clock_provide (out unowned Gst.Clock clock, out bool ready);
1574                 [Version (since = "1.2")]
1575                 public bool parse_context_type (out string context_type);
1576                 [Version (since = "1.4")]
1577                 public void parse_device_added (out Gst.Device device);
1578                 [Version (since = "1.4")]
1579                 public void parse_device_removed (out Gst.Device device);
1580                 public void parse_error (out GLib.Error gerror, out string debug);
1581                 [Version (since = "1.10")]
1582                 public void parse_error_details (out Gst.Structure structure);
1583                 [Version (since = "1.2")]
1584                 public bool parse_group_id (out uint group_id);
1585                 [Version (since = "1.2")]
1586                 public void parse_have_context (out Gst.Context context);
1587                 public void parse_info (out GLib.Error gerror, out string debug);
1588                 [Version (since = "1.10")]
1589                 public void parse_info_details (out Gst.Structure structure);
1590                 public void parse_new_clock (out unowned Gst.Clock clock);
1591                 public void parse_progress (out Gst.ProgressType type, out string code, out string text);
1592                 [Version (since = "1.10")]
1593                 public void parse_property_notify (out unowned Gst.Object object, out string property_name, out GLib.Value property_value);
1594                 public void parse_qos (out bool live, out uint64 running_time, out uint64 stream_time, out uint64 timestamp, out uint64 duration);
1595                 public void parse_qos_stats (out Gst.Format format, out uint64 processed, out uint64 dropped);
1596                 public void parse_qos_values (out int64 jitter, out double proportion, out int quality);
1597                 [Version (since = "1.10")]
1598                 public void parse_redirect_entry (size_t entry_index, out unowned string location, out unowned Gst.TagList tag_list, out unowned Gst.Structure entry_struct);
1599                 public void parse_request_state (out Gst.State state);
1600                 public void parse_reset_time (out Gst.ClockTime running_time);
1601                 public void parse_segment_done (out Gst.Format format, out int64 position);
1602                 public void parse_segment_start (out Gst.Format format, out int64 position);
1603                 public void parse_state_changed (out Gst.State oldstate, out Gst.State newstate, out Gst.State pending);
1604                 public void parse_step_done (out Gst.Format format, out uint64 amount, out double rate, out bool flush, out bool intermediate, out uint64 duration, out bool eos);
1605                 public void parse_step_start (out bool active, out Gst.Format format, out uint64 amount, out double rate, out bool flush, out bool intermediate);
1606                 [Version (since = "1.10")]
1607                 public void parse_stream_collection (out Gst.StreamCollection collection);
1608                 public void parse_stream_status (out Gst.StreamStatusType type, out unowned Gst.Element owner);
1609                 [Version (since = "1.10")]
1610                 public void parse_streams_selected (out Gst.StreamCollection collection);
1611                 public void parse_structure_change (out Gst.StructureChangeType type, out unowned Gst.Element owner, out bool busy);
1612                 public void parse_tag (out Gst.TagList tag_list);
1613                 public void parse_toc (out Gst.Toc toc, out bool updated);
1614                 public void parse_warning (out GLib.Error gerror, out string debug);
1615                 [Version (since = "1.10")]
1616                 public void parse_warning_details (out Gst.Structure structure);
1617                 [CCode (has_construct_function = false)]
1618                 public Message.progress (Gst.Object src, Gst.ProgressType type, string code, string text);
1619                 [CCode (has_construct_function = false)]
1620                 [Version (since = "1.10")]
1621                 public Message.property_notify (Gst.Object src, string property_name, owned GLib.Value? val);
1622                 [CCode (has_construct_function = false)]
1623                 public Message.qos (Gst.Object src, bool live, uint64 running_time, uint64 stream_time, uint64 timestamp, uint64 duration);
1624                 [CCode (has_construct_function = false)]
1625                 [Version (since = "1.10")]
1626                 public Message.redirect (Gst.Object src, string location, owned Gst.TagList? tag_list, owned Gst.Structure? entry_struct);
1627                 [CCode (has_construct_function = false)]
1628                 public Message.request_state (Gst.Object? src, Gst.State state);
1629                 [CCode (has_construct_function = false)]
1630                 public Message.reset_time (Gst.Object? src, Gst.ClockTime running_time);
1631                 [CCode (has_construct_function = false)]
1632                 public Message.segment_done (Gst.Object? src, Gst.Format format, int64 position);
1633                 [CCode (has_construct_function = false)]
1634                 public Message.segment_start (Gst.Object? src, Gst.Format format, int64 position);
1635                 public void set_buffering_stats (Gst.BufferingMode mode, int avg_in, int avg_out, int64 buffering_left);
1636                 [Version (since = "1.2")]
1637                 public void set_group_id (uint group_id);
1638                 public void set_qos_stats (Gst.Format format, uint64 processed, uint64 dropped);
1639                 public void set_qos_values (int64 jitter, double proportion, int quality);
1640                 public void set_seqnum (uint32 seqnum);
1641                 public void set_stream_status_object (GLib.Value object);
1642                 [CCode (has_construct_function = false)]
1643                 public Message.state_changed (Gst.Object? src, Gst.State oldstate, Gst.State newstate, Gst.State pending);
1644                 [CCode (has_construct_function = false)]
1645                 public Message.state_dirty (Gst.Object? src);
1646                 [CCode (has_construct_function = false)]
1647                 public Message.step_done (Gst.Object src, Gst.Format format, uint64 amount, double rate, bool flush, bool intermediate, uint64 duration, bool eos);
1648                 [CCode (has_construct_function = false)]
1649                 public Message.step_start (Gst.Object src, bool active, Gst.Format format, uint64 amount, double rate, bool flush, bool intermediate);
1650                 [CCode (has_construct_function = false)]
1651                 [Version (since = "1.10")]
1652                 public Message.stream_collection (Gst.Object src, Gst.StreamCollection collection);
1653                 [CCode (has_construct_function = false)]
1654                 public Message.stream_start (Gst.Object? src);
1655                 [CCode (has_construct_function = false)]
1656                 public Message.stream_status (Gst.Object src, Gst.StreamStatusType type, Gst.Element owner);
1657                 [CCode (has_construct_function = false)]
1658                 [Version (since = "1.10")]
1659                 public Message.streams_selected (Gst.Object src, Gst.StreamCollection collection);
1660                 [Version (since = "1.10")]
1661                 public void streams_selected_add (Gst.Stream stream);
1662                 [Version (since = "1.10")]
1663                 public uint streams_selected_get_size ();
1664                 [Version (since = "1.10")]
1665                 public Gst.Stream streams_selected_get_stream (uint idx);
1666                 [CCode (has_construct_function = false)]
1667                 public Message.structure_change (Gst.Object? src, Gst.StructureChangeType type, Gst.Element owner, bool busy);
1668                 [CCode (has_construct_function = false)]
1669                 public Message.tag (Gst.Object? src, owned Gst.TagList tag_list);
1670                 [CCode (has_construct_function = false)]
1671                 public Message.toc (Gst.Object src, Gst.Toc toc, bool updated);
1672                 [CCode (has_construct_function = false)]
1673                 public Message.warning (Gst.Object? src, GLib.Error error, string debug);
1674                 [CCode (has_construct_function = false)]
1675                 [Version (since = "1.10")]
1676                 public Message.warning_with_details (Gst.Object? src, GLib.Error error, string debug, owned Gst.Structure details);
1677         }
1678         [CCode (cheader_filename = "gst/gst.h", get_value_function = "g_value_get_boxed", has_type_id = false, ref_function = "gst_mini_object_ref", set_value_function = "g_value_set_boxed", take_value_function = "g_value_take_boxed", unref_function = "gst_mini_object_unref")]
1679         [Compact]
1680         public abstract class MiniObject {
1681                 public weak Gst.MiniObjectDisposeFunction dispose;
1682                 public uint flags;
1683                 public weak Gst.MiniObjectFreeFunction free;
1684                 public int lockstate;
1685                 public int refcount;
1686                 public GLib.Type type;
1687                 [CCode (simple_generics = true)]
1688                 public T get_qdata<T> (GLib.Quark quark);
1689                 public bool is_writable ();
1690                 public bool @lock (Gst.LockFlags flags);
1691                 [ReturnsModifiedPointer]
1692                 public Gst.MiniObject make_writable ();
1693                 public unowned Gst.MiniObject @ref ();
1694                 public static bool replace (ref Gst.MiniObject? olddata, Gst.MiniObject? newdata);
1695                 [CCode (simple_generics = true)]
1696                 public void set_qdata<T> (GLib.Quark quark, owned T data);
1697                 public void* steal_qdata (GLib.Quark quark);
1698                 public static bool take (ref Gst.MiniObject olddata, Gst.MiniObject newdata);
1699                 public void unlock (Gst.LockFlags flags);
1700                 public void unref ();
1701                 public void weak_ref (Gst.MiniObjectNotify notify);
1702                 public void weak_unref (Gst.MiniObjectNotify notify);
1703         }
1704         [CCode (cheader_filename = "gst/gst.h", type_id = "gst_object_get_type ()")]
1705         public abstract class Object : GLib.InitiallyUnowned {
1706                 public uint32 flags;
1707                 public GLib.Mutex @lock;
1708                 [CCode (has_construct_function = false)]
1709                 protected Object ();
1710                 public bool add_control_binding (owned Gst.ControlBinding binding);
1711                 public static bool check_uniqueness (GLib.List<Gst.Object> list, string name);
1712                 public static void default_deep_notify (GLib.Object object, Gst.Object orig, GLib.ParamSpec pspec, [CCode (array_length = false, array_null_terminated = true)] string[]? excluded_props);
1713                 public void default_error (GLib.Error error, string? debug);
1714                 public Gst.ControlBinding? get_control_binding (string property_name);
1715                 public Gst.ClockTime get_control_rate ();
1716                 public bool get_g_value_array (string property_name, Gst.ClockTime timestamp, Gst.ClockTime interval, uint n_values, GLib.Value values);
1717                 public string? get_name ();
1718                 public Gst.Object? get_parent ();
1719                 public string get_path_string ();
1720                 public GLib.Value? get_value (string property_name, Gst.ClockTime timestamp);
1721                 public bool get_value_array (string property_name, Gst.ClockTime timestamp, Gst.ClockTime interval, uint n_values, void* values);
1722                 public bool has_active_control_bindings ();
1723                 [Version (deprecated = true)]
1724                 public bool has_ancestor (Gst.Object ancestor);
1725                 public bool has_as_ancestor (Gst.Object ancestor);
1726                 [Version (since = "1.6")]
1727                 public bool has_as_parent (Gst.Object parent);
1728                 public unowned Gst.Object @ref ();
1729                 public bool remove_control_binding (Gst.ControlBinding binding);
1730                 public static bool replace (ref Gst.Object? oldobj, Gst.Object? newobj);
1731                 public void set_control_binding_disabled (string property_name, bool disabled);
1732                 public void set_control_bindings_disabled (bool disabled);
1733                 public void set_control_rate (Gst.ClockTime control_rate);
1734                 public bool set_name (string? name);
1735                 public bool set_parent (Gst.Object parent);
1736                 public Gst.ClockTime suggest_next_sync ();
1737                 public bool sync_values (Gst.ClockTime timestamp);
1738                 public void unparent ();
1739                 public void unref ();
1740                 [NoAccessorMethod]
1741                 public string name { owned get; set construct; }
1742                 [NoAccessorMethod]
1743                 public Gst.Object parent { owned get; set; }
1744                 public virtual signal void deep_notify (Gst.Object orig, GLib.ParamSpec pspec);
1745         }
1746         [CCode (cheader_filename = "gst/gst.h", type_id = "gst_pad_get_type ()")]
1747         public class Pad : Gst.Object {
1748                 public void* element_private;
1749                 public weak Gst.PadTemplate padtemplate;
1750                 [CCode (has_construct_function = false, returns_floating_reference = true)]
1751                 public Pad (string? name, Gst.PadDirection direction);
1752                 public bool activate_mode (Gst.PadMode mode, bool active);
1753                 public ulong add_probe (Gst.PadProbeType mask, owned Gst.PadProbeCallback callback);
1754                 public bool can_link (Gst.Pad sinkpad);
1755                 public Gst.FlowReturn chain (owned Gst.Buffer buffer);
1756                 public Gst.FlowReturn chain_list (owned Gst.BufferList list);
1757                 public bool check_reconfigure ();
1758                 public string create_stream_id (Gst.Element parent, string? stream_id);
1759                 [PrintfFormat]
1760                 public string create_stream_id_printf (Gst.Element parent, string? stream_id, ...);
1761                 public string create_stream_id_printf_valist (Gst.Element parent, string? stream_id, va_list var_args);
1762                 public bool event_default (Gst.Object? parent, owned Gst.Event event);
1763                 public bool forward (Gst.PadForwardFunction forward);
1764                 [CCode (has_construct_function = false)]
1765                 public Pad.from_static_template (Gst.StaticPadTemplate templ, string name);
1766                 [CCode (has_construct_function = false, returns_floating_reference = true)]
1767                 public Pad.from_template (Gst.PadTemplate templ, string? name);
1768                 public Gst.Caps? get_allowed_caps ();
1769                 public Gst.Caps? get_current_caps ();
1770                 public Gst.PadDirection get_direction ();
1771                 public void* get_element_private ();
1772                 [Version (since = "1.4")]
1773                 public Gst.FlowReturn get_last_flow_return ();
1774                 public int64 get_offset ();
1775                 public Gst.PadTemplate? get_pad_template ();
1776                 public Gst.Caps get_pad_template_caps ();
1777                 public Gst.Element? get_parent_element ();
1778                 public Gst.Pad get_peer ();
1779                 public Gst.FlowReturn get_range (uint64 offset, uint size, out Gst.Buffer buffer);
1780                 public Gst.Event? get_sticky_event (Gst.EventType event_type, uint idx);
1781                 [Version (since = "1.10")]
1782                 public Gst.Stream? get_stream ();
1783                 [Version (since = "1.2")]
1784                 public string? get_stream_id ();
1785                 [Version (since = "1.12")]
1786                 public Gst.TaskState get_task_state ();
1787                 public bool has_current_caps ();
1788                 public bool is_active ();
1789                 public bool is_blocked ();
1790                 public bool is_blocking ();
1791                 public bool is_linked ();
1792                 public Gst.Iterator? iterate_internal_links ();
1793                 public Gst.Iterator? iterate_internal_links_default (Gst.Object? parent);
1794                 [CCode (cname = "gst_pad_link_full")]
1795                 public Gst.PadLinkReturn link (Gst.Pad sinkpad, Gst.PadLinkCheck flags = Gst.PadLinkCheck.DEFAULT);
1796                 [Version (since = "1.4")]
1797                 public static unowned string link_get_name (Gst.PadLinkReturn ret);
1798                 [Version (since = "1.10")]
1799                 public bool link_maybe_ghosting (Gst.Pad sink);
1800                 [Version (since = "1.10")]
1801                 public bool link_maybe_ghosting_full (Gst.Pad sink, Gst.PadLinkCheck flags);
1802                 public void mark_reconfigure ();
1803                 public bool needs_reconfigure ();
1804                 public bool pause_task ();
1805                 public bool peer_query (Gst.Query query);
1806                 public bool peer_query_accept_caps (Gst.Caps caps);
1807                 public Gst.Caps peer_query_caps (Gst.Caps? filter);
1808                 public bool peer_query_convert (Gst.Format src_format, int64 src_val, Gst.Format dest_format, out int64 dest_val);
1809                 public bool peer_query_duration (Gst.Format format, out int64 duration);
1810                 public bool peer_query_position (Gst.Format format, out int64 cur);
1811                 public bool proxy_query_accept_caps (Gst.Query query);
1812                 public bool proxy_query_caps (Gst.Query query);
1813                 public Gst.FlowReturn pull_range (uint64 offset, uint size, out Gst.Buffer buffer);
1814                 public Gst.FlowReturn push (owned Gst.Buffer buffer);
1815                 public bool push_event (owned Gst.Event event);
1816                 public Gst.FlowReturn push_list (owned Gst.BufferList list);
1817                 public bool query (Gst.Query query);
1818                 public bool query_accept_caps (Gst.Caps caps);
1819                 public Gst.Caps query_caps (Gst.Caps? filter);
1820                 public bool query_convert (Gst.Format src_format, int64 src_val, Gst.Format dest_format, out int64 dest_val);
1821                 public bool query_default (Gst.Object? parent, Gst.Query query);
1822                 public bool query_duration (Gst.Format format, out int64 duration);
1823                 public bool query_position (Gst.Format format, out int64 cur);
1824                 public void remove_probe (ulong id);
1825                 public bool send_event (owned Gst.Event event);
1826                 [CCode (cname = "gst_pad_set_activate_function_full")]
1827                 public void set_activate_function (Gst.PadActivateFunction activate, void* user_data = null, GLib.DestroyNotify? notify = null);
1828                 [CCode (cname = "gst_pad_set_activatemode_function_full")]
1829                 public void set_activatemode_function (Gst.PadActivateModeFunction activatemode, void* user_data = null, GLib.DestroyNotify? notify = null);
1830                 public bool set_active (bool active);
1831                 [CCode (cname = "gst_pad_set_chain_function_full")]
1832                 public void set_chain_function (Gst.PadChainFunction chain, void* user_data = null, GLib.DestroyNotify? notify = null);
1833                 [CCode (cname = "gst_pad_set_chain_list_function_full")]
1834                 public void set_chain_list_function (Gst.PadChainListFunction chainlist, void* user_data = null, GLib.DestroyNotify? notify = null);
1835                 public void set_element_private (void* priv);
1836                 [Version (since = "1.8")]
1837                 public void set_event_full_function_full (owned Gst.PadEventFullFunction event);
1838                 [CCode (cname = "gst_pad_set_event_function_full")]
1839                 public void set_event_function (Gst.PadEventFunction event, void* user_data = null, GLib.DestroyNotify? notify = null);
1840                 [CCode (cname = "gst_pad_set_getrange_function_full")]
1841                 public void set_getrange_function (Gst.PadGetRangeFunction @get, void* user_data = null, GLib.DestroyNotify? notify = null);
1842                 [CCode (cname = "gst_pad_set_iterate_internal_links_function_full")]
1843                 public void set_iterate_internal_links_function (Gst.PadIterIntLinkFunction iterintlink, void* user_data = null, GLib.DestroyNotify? notify = null);
1844                 [CCode (cname = "gst_pad_set_link_function_full")]
1845                 public void set_link_function (Gst.PadLinkFunction link, void* user_data = null, GLib.DestroyNotify? notify = null);
1846                 public void set_offset (int64 offset);
1847                 [CCode (cname = "gst_pad_set_query_function_full")]
1848                 public void set_query_function (Gst.PadQueryFunction query, void* user_data = null, GLib.DestroyNotify? notify = null);
1849                 [CCode (cname = "gst_pad_set_unlink_function_full")]
1850                 public void set_unlink_function (Gst.PadUnlinkFunction unlink, void* user_data = null, GLib.DestroyNotify? notify = null);
1851                 public bool start_task (owned Gst.TaskFunction func);
1852                 public void sticky_events_foreach (Gst.PadStickyEventsForeachFunction foreach_func);
1853                 public bool stop_task ();
1854                 [Version (since = "1.2")]
1855                 public Gst.FlowReturn store_sticky_event (Gst.Event event);
1856                 public bool unlink (Gst.Pad sinkpad);
1857                 public void use_fixed_caps ();
1858                 [NoAccessorMethod]
1859                 public Gst.Caps caps { owned get; }
1860                 public Gst.PadDirection direction { get; construct; }
1861                 [Version (since = "1.6")]
1862                 public int64 offset { get; set; }
1863                 [NoAccessorMethod]
1864                 public Gst.PadTemplate template { owned get; set; }
1865                 public virtual signal void linked (Gst.Pad peer);
1866                 public virtual signal void unlinked (Gst.Pad peer);
1867         }
1868         [CCode (cheader_filename = "gst/gst.h", type_id = "gst_pad_template_get_type ()")]
1869         public class PadTemplate : Gst.Object {
1870                 [CCode (has_construct_function = false, returns_floating_reference = true)]
1871                 public PadTemplate (string name_template, Gst.PadDirection direction, Gst.PadPresence presence, Gst.Caps caps);
1872                 public Gst.Caps get_caps ();
1873                 public Gst.Caps caps { owned get; construct; }
1874                 [NoAccessorMethod]
1875                 public Gst.PadDirection direction { get; construct; }
1876                 [NoAccessorMethod]
1877                 public string name_template { owned get; construct; }
1878                 [NoAccessorMethod]
1879                 public Gst.PadPresence presence { get; construct; }
1880                 [HasEmitter]
1881                 public virtual signal void pad_created (Gst.Pad pad);
1882         }
1883         [CCode (cheader_filename = "gst/gst.h", lower_case_csuffix = "param_spec_array", type_id = "gst_param_spec_array_get_type ()")]
1884         public class ParamArray : GLib.ParamSpec {
1885                 [CCode (has_construct_function = false)]
1886                 protected ParamArray ();
1887         }
1888         [CCode (cheader_filename = "gst/gst.h", lower_case_csuffix = "param_spec_fraction", type_id = "gst_param_spec_fraction_get_type ()")]
1889         public class ParamFraction : GLib.ParamSpec {
1890                 [CCode (has_construct_function = false)]
1891                 protected ParamFraction ();
1892         }
1893         [CCode (cheader_filename = "gst/gst.h", free_function = "gst_parse_context_free", type_id = "gst_parse_context_get_type ()")]
1894         [Compact]
1895         public class ParseContext {
1896                 [CCode (has_construct_function = false)]
1897                 public ParseContext ();
1898                 public void free ();
1899                 [CCode (array_length = false, array_null_terminated = true)]
1900                 public string[] get_missing_elements ();
1901         }
1902         [CCode (cheader_filename = "gst/gst.h", type_id = "gst_pipeline_get_type ()")]
1903         public class Pipeline : Gst.Bin, Gst.ChildProxy {
1904                 public weak Gst.Clock fixed_clock;
1905                 public Gst.ClockTime stream_time;
1906                 [CCode (has_construct_function = false, returns_floating_reference = true, type = "GstElement*")]
1907                 public Pipeline (string? name);
1908                 public void auto_clock ();
1909                 public bool get_auto_flush_bus ();
1910                 public Gst.Bus get_bus ();
1911                 public Gst.Clock get_clock ();
1912                 public Gst.ClockTime get_delay ();
1913                 [Version (since = "1.6")]
1914                 public Gst.ClockTime get_latency ();
1915                 [Version (since = "1.6")]
1916                 public Gst.Clock get_pipeline_clock ();
1917                 public void set_auto_flush_bus (bool auto_flush);
1918                 public bool set_clock (Gst.Clock clock);
1919                 public void set_delay (Gst.ClockTime delay);
1920                 [Version (since = "1.6")]
1921                 public void set_latency (Gst.ClockTime latency);
1922                 public void use_clock (Gst.Clock? clock);
1923                 public bool auto_flush_bus { get; set; }
1924                 public uint64 delay { get; set; }
1925                 [Version (since = "1.6")]
1926                 public uint64 latency { get; set; }
1927         }
1928         [CCode (cheader_filename = "gst/gst.h", type_id = "gst_plugin_get_type ()")]
1929         public class Plugin : Gst.Object {
1930                 [CCode (has_construct_function = false)]
1931                 protected Plugin ();
1932                 public void add_dependency (string? env_vars, string? paths, string? names, Gst.PluginDependencyFlags flags);
1933                 public void add_dependency_simple (string? env_vars, string? paths, string? names, Gst.PluginDependencyFlags flags);
1934                 public unowned Gst.Structure? get_cache_data ();
1935                 public unowned string get_description ();
1936                 public unowned string get_filename ();
1937                 public unowned string get_license ();
1938                 public unowned string get_name ();
1939                 public unowned string get_origin ();
1940                 public unowned string get_package ();
1941                 public unowned string? get_release_date_string ();
1942                 public unowned string get_source ();
1943                 public unowned string get_version ();
1944                 public bool is_loaded ();
1945                 public static void list_free (owned GLib.List<Gst.Plugin> list);
1946                 public Gst.Plugin load ();
1947                 public static Gst.Plugin load_by_name (string name);
1948                 public static Gst.Plugin load_file (string filename) throws GLib.Error;
1949                 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);
1950                 public static bool register_static_full (int major_version, int minor_version, string name, string description, [CCode (delegate_target_pos = 10.1)] Gst.PluginInitFullFunc init_full_func, string version, string license, string source, string package, string origin);
1951                 public void set_cache_data (owned Gst.Structure cache_data);
1952         }
1953         [CCode (cheader_filename = "gst/gst.h", type_id = "gst_plugin_feature_get_type ()")]
1954         public abstract class PluginFeature : Gst.Object {
1955                 [CCode (has_construct_function = false)]
1956                 protected PluginFeature ();
1957                 public bool check_version (uint min_major, uint min_minor, uint min_micro);
1958                 public Gst.Plugin? get_plugin ();
1959                 [Version (since = "1.2")]
1960                 public unowned string? get_plugin_name ();
1961                 public uint get_rank ();
1962                 public static GLib.List<Gst.PluginFeature> list_copy (GLib.List<Gst.PluginFeature> list);
1963                 public static void list_debug (GLib.List<Gst.PluginFeature> list);
1964                 public static void list_free (owned GLib.List<Gst.PluginFeature> list);
1965                 public Gst.PluginFeature? load ();
1966                 public static int rank_compare_func (void* p1, void* p2);
1967                 public void set_rank (uint rank);
1968         }
1969         [CCode (cheader_filename = "gst/gst.h", has_type_id = false)]
1970         [Compact]
1971         public class Poll {
1972                 [CCode (has_construct_function = false)]
1973                 public Poll (bool controllable);
1974                 public bool add_fd (Gst.PollFD fd);
1975                 public bool fd_can_read (Gst.PollFD fd);
1976                 public bool fd_can_write (Gst.PollFD fd);
1977                 public bool fd_ctl_read (Gst.PollFD fd, bool active);
1978                 public bool fd_ctl_write (Gst.PollFD fd, bool active);
1979                 public bool fd_has_closed (Gst.PollFD fd);
1980                 public bool fd_has_error (Gst.PollFD fd);
1981                 public void fd_ignored (Gst.PollFD fd);
1982                 public void free ();
1983                 public void get_read_gpollfd (GLib.PollFD fd);
1984                 public bool read_control ();
1985                 public bool remove_fd (Gst.PollFD fd);
1986                 public void restart ();
1987                 public bool set_controllable (bool controllable);
1988                 public void set_flushing (bool flushing);
1989                 [CCode (has_construct_function = false)]
1990                 public Poll.timer ();
1991                 public int wait (Gst.ClockTime timeout);
1992                 public bool write_control ();
1993         }
1994         [CCode (cheader_filename = "gst/gst.h", type_id = "gst_proxy_pad_get_type ()")]
1995         public class ProxyPad : Gst.Pad {
1996                 [CCode (has_construct_function = false)]
1997                 protected ProxyPad ();
1998                 public static Gst.FlowReturn chain_default (Gst.Pad pad, Gst.Object? parent, owned Gst.Buffer buffer);
1999                 public static Gst.FlowReturn chain_list_default (Gst.Pad pad, Gst.Object? parent, owned Gst.BufferList list);
2000                 public Gst.ProxyPad? get_internal ();
2001                 public static Gst.FlowReturn getrange_default (Gst.Pad pad, Gst.Object parent, uint64 offset, uint size, out Gst.Buffer buffer);
2002                 public static Gst.Iterator? iterate_internal_links_default (Gst.Pad pad, Gst.Object? parent);
2003         }
2004         [CCode (cheader_filename = "gst/gst.h", ref_function = "gst_query_ref", type_id = "gst_query_get_type ()", unref_function = "gst_query_unref")]
2005         [Compact]
2006         public class Query : Gst.MiniObject {
2007                 public Gst.QueryType type;
2008                 [CCode (has_construct_function = false)]
2009                 public Query.accept_caps (Gst.Caps caps);
2010                 public void add_allocation_meta (GLib.Type api, Gst.Structure? @params);
2011                 public void add_allocation_param (Gst.Allocator? allocator, Gst.AllocationParams? @params);
2012                 public void add_allocation_pool (Gst.BufferPool? pool, uint size, uint min_buffers, uint max_buffers);
2013                 public bool add_buffering_range (int64 start, int64 stop);
2014                 public void add_scheduling_mode (Gst.PadMode mode);
2015                 [CCode (has_construct_function = false)]
2016                 public Query.allocation (Gst.Caps caps, bool need_pool);
2017                 [CCode (has_construct_function = false)]
2018                 public Query.buffering (Gst.Format format);
2019                 [CCode (has_construct_function = false)]
2020                 public Query.caps (Gst.Caps filter);
2021                 [CCode (has_construct_function = false)]
2022                 [Version (since = "1.2")]
2023                 public Query.context (string context_type);
2024                 [CCode (has_construct_function = false)]
2025                 public Query.convert (Gst.Format src_format, int64 value, Gst.Format dest_format);
2026                 [CCode (has_construct_function = false)]
2027                 public Query.custom (Gst.QueryType type, owned Gst.Structure? structure);
2028                 [CCode (has_construct_function = false)]
2029                 public Query.drain ();
2030                 [CCode (has_construct_function = false)]
2031                 public Query.duration (Gst.Format format);
2032                 public bool find_allocation_meta (GLib.Type api, out uint index);
2033                 [CCode (has_construct_function = false)]
2034                 public Query.formats ();
2035                 public uint get_n_allocation_metas ();
2036                 public uint get_n_allocation_params ();
2037                 public uint get_n_allocation_pools ();
2038                 public uint get_n_buffering_ranges ();
2039                 public uint get_n_scheduling_modes ();
2040                 public unowned Gst.Structure get_structure ();
2041                 public bool has_scheduling_mode (Gst.PadMode mode);
2042                 public bool has_scheduling_mode_with_flags (Gst.PadMode mode, Gst.SchedulingFlags flags);
2043                 [CCode (has_construct_function = false)]
2044                 public Query.latency ();
2045                 public void parse_accept_caps (out unowned Gst.Caps caps);
2046                 public void parse_accept_caps_result (bool result);
2047                 public void parse_allocation (out unowned Gst.Caps caps, out bool need_pool);
2048                 public void parse_buffering_percent (out bool busy, out int percent);
2049                 public void parse_buffering_range (out Gst.Format format, out int64 start, out int64 stop, out int64 estimated_total);
2050                 public void parse_buffering_stats (out Gst.BufferingMode mode, out int avg_in, out int avg_out, out int64 buffering_left);
2051                 public void parse_caps (out unowned Gst.Caps filter);
2052                 public void parse_caps_result (out unowned Gst.Caps caps);
2053                 [Version (since = "1.2")]
2054                 public void parse_context (out unowned Gst.Context context);
2055                 [Version (since = "1.2")]
2056                 public bool parse_context_type (out unowned string context_type);
2057                 public void parse_convert (out Gst.Format src_format, out int64 src_value, out Gst.Format dest_format, out int64 dest_value);
2058                 public void parse_duration (out Gst.Format format, out int64 duration);
2059                 public void parse_latency (out bool live, out Gst.ClockTime min_latency, out Gst.ClockTime max_latency);
2060                 public void parse_n_formats (out uint n_formats);
2061                 public GLib.Type parse_nth_allocation_meta (uint index, out unowned Gst.Structure @params);
2062                 public void parse_nth_allocation_param (uint index, out Gst.Allocator allocator, out unowned Gst.AllocationParams @params);
2063                 public void parse_nth_allocation_pool (uint index, out Gst.BufferPool pool, out uint size, out uint min_buffers, out uint max_buffers);
2064                 public bool parse_nth_buffering_range (uint index, out int64 start, out int64 stop);
2065                 public void parse_nth_format (out uint nth, out Gst.Format format);
2066                 public Gst.PadMode parse_nth_scheduling_mode (uint index);
2067                 public void parse_position (out Gst.Format format, out int64 cur);
2068                 public void parse_scheduling (out Gst.SchedulingFlags flags, out int minsize, out int maxsize, out int align);
2069                 public void parse_seeking (out Gst.Format format, out bool seekable, out int64 segment_start, out int64 segment_end);
2070                 public void parse_segment (out double rate, out Gst.Format format, out int64 start_value, out int64 stop_value);
2071                 public void parse_uri (out string uri);
2072                 [Version (since = "1.2")]
2073                 public void parse_uri_redirection (out string uri);
2074                 [Version (since = "1.4")]
2075                 public void parse_uri_redirection_permanent (out bool permanent);
2076                 [CCode (has_construct_function = false)]
2077                 public Query.position (Gst.Format format);
2078                 public void remove_nth_allocation_meta (uint index);
2079                 [Version (since = "1.2")]
2080                 public void remove_nth_allocation_param (uint index);
2081                 [Version (since = "1.2")]
2082                 public void remove_nth_allocation_pool (uint index);
2083                 [CCode (has_construct_function = false)]
2084                 public Query.scheduling ();
2085                 [CCode (has_construct_function = false)]
2086                 public Query.seeking (Gst.Format format);
2087                 [CCode (has_construct_function = false)]
2088                 public Query.segment (Gst.Format format);
2089                 public void set_accept_caps_result (bool result);
2090                 public void set_buffering_percent (bool busy, int percent);
2091                 public void set_buffering_range (Gst.Format format, int64 start, int64 stop, int64 estimated_total);
2092                 public void set_buffering_stats (Gst.BufferingMode mode, int avg_in, int avg_out, int64 buffering_left);
2093                 public void set_caps_result (Gst.Caps caps);
2094                 [Version (since = "1.2")]
2095                 public void set_context (Gst.Context context);
2096                 public void set_convert (Gst.Format src_format, int64 src_value, Gst.Format dest_format, int64 dest_value);
2097                 public void set_duration (Gst.Format format, int64 duration);
2098                 [CCode (sentinel = "")]
2099                 public void set_formats (int n_formats, params Gst.Format[] formats);
2100                 public void set_formatsv ([CCode (array_length_cname = "n_formats", array_length_pos = 0.5)] Gst.Format[] formats);
2101                 public void set_latency (bool live, Gst.ClockTime min_latency, Gst.ClockTime max_latency);
2102                 public void set_nth_allocation_param (uint index, Gst.Allocator? allocator, Gst.AllocationParams? @params);
2103                 public void set_nth_allocation_pool (uint index, Gst.BufferPool? pool, uint size, uint min_buffers, uint max_buffers);
2104                 public void set_position (Gst.Format format, int64 cur);
2105                 public void set_scheduling (Gst.SchedulingFlags flags, int minsize, int maxsize, int align);
2106                 public void set_seeking (Gst.Format format, bool seekable, int64 segment_start, int64 segment_end);
2107                 public void set_segment (double rate, Gst.Format format, int64 start_value, int64 stop_value);
2108                 public void set_uri (string uri);
2109                 [Version (since = "1.2")]
2110                 public void set_uri_redirection (string uri);
2111                 [Version (since = "1.4")]
2112                 public void set_uri_redirection_permanent (bool permanent);
2113                 [CCode (has_construct_function = false)]
2114                 public Query.uri ();
2115                 public unowned Gst.Structure writable_structure ();
2116         }
2117         [CCode (cheader_filename = "gst/gst.h", type_id = "gst_registry_get_type ()")]
2118         public class Registry : Gst.Object {
2119                 [CCode (has_construct_function = false)]
2120                 protected Registry ();
2121                 public bool add_feature (owned Gst.PluginFeature feature);
2122                 public bool add_plugin (owned Gst.Plugin plugin);
2123                 public bool check_feature_version (string feature_name, uint min_major, uint min_minor, uint min_micro);
2124                 public GLib.List<Gst.PluginFeature> feature_filter ([CCode (delegate_target_pos = 2.1)] Gst.PluginFeatureFilter filter, bool first);
2125                 public Gst.PluginFeature? find_feature (string name, GLib.Type type);
2126                 public Gst.Plugin? find_plugin (string name);
2127                 public static bool fork_is_enabled ();
2128                 public static void fork_set_enabled (bool enabled);
2129                 public static unowned Gst.Registry @get ();
2130                 public GLib.List<Gst.PluginFeature> get_feature_list (GLib.Type type);
2131                 public GLib.List<Gst.PluginFeature> get_feature_list_by_plugin (string name);
2132                 public uint32 get_feature_list_cookie ();
2133                 public GLib.List<Gst.Plugin> get_plugin_list ();
2134                 public Gst.Plugin? lookup (string filename);
2135                 public Gst.PluginFeature lookup_feature (string name);
2136                 public GLib.List<Gst.Plugin> plugin_filter ([CCode (delegate_target_pos = 2.1)] Gst.PluginFilter filter, bool first);
2137                 public void remove_feature (Gst.PluginFeature feature);
2138                 public void remove_plugin (Gst.Plugin plugin);
2139                 public bool scan_path (string path);
2140                 public signal void feature_added (Gst.PluginFeature feature);
2141                 public signal void plugin_added (Gst.Plugin plugin);
2142         }
2143         [CCode (cheader_filename = "gst/gst.h", ref_function = "gst_sample_ref", type_id = "gst_sample_get_type ()", unref_function = "gst_sample_unref")]
2144         [Compact]
2145         public class Sample : Gst.MiniObject {
2146                 [CCode (has_construct_function = false)]
2147                 public Sample (Gst.Buffer? buffer, Gst.Caps? caps, Gst.Segment? segment, owned Gst.Structure? info);
2148                 public unowned Gst.Buffer? get_buffer ();
2149                 [Version (since = "1.6")]
2150                 public unowned Gst.BufferList? get_buffer_list ();
2151                 public unowned Gst.Caps? get_caps ();
2152                 public unowned Gst.Structure get_info ();
2153                 public unowned Gst.Segment get_segment ();
2154                 [Version (since = "1.6")]
2155                 public void set_buffer_list (Gst.BufferList buffer_list);
2156         }
2157         [CCode (cheader_filename = "gst/gst.h", copy_function = "gst_segment_copy", free_function = "gst_segment_free", type_id = "gst_segment_get_type ()")]
2158         [Compact]
2159         public class Segment {
2160                 public double applied_rate;
2161                 public uint64 @base;
2162                 public uint64 duration;
2163                 public Gst.SegmentFlags flags;
2164                 public Gst.Format format;
2165                 public uint64 offset;
2166                 public uint64 position;
2167                 public double rate;
2168                 public uint64 start;
2169                 public uint64 stop;
2170                 public uint64 time;
2171                 [CCode (has_construct_function = false)]
2172                 public Segment ();
2173                 public bool clip (Gst.Format format, uint64 start, uint64 stop, out uint64 clip_start, out uint64 clip_stop);
2174                 public Gst.Segment copy ();
2175                 public void copy_into (Gst.Segment dest);
2176                 public bool do_seek (double rate, Gst.Format format, Gst.SeekFlags flags, Gst.SeekType start_type, uint64 start, Gst.SeekType stop_type, uint64 stop, bool update);
2177                 public void free ();
2178                 public void init (Gst.Format format);
2179                 [Version (since = "1.6")]
2180                 public bool is_equal (Gst.Segment s1);
2181                 [Version (since = "1.2.3")]
2182                 public bool offset_running_time (Gst.Format format, int64 offset);
2183                 [Version (since = "1.8")]
2184                 public uint64 position_from_running_time (Gst.Format format, uint64 running_time);
2185                 [Version (since = "1.8")]
2186                 public int position_from_running_time_full (Gst.Format format, uint64 running_time, uint64 position);
2187                 [Version (since = "1.8")]
2188                 public uint64 position_from_stream_time (Gst.Format format, uint64 stream_time);
2189                 [Version (since = "1.8")]
2190                 public int position_from_stream_time_full (Gst.Format format, uint64 stream_time, uint64 position);
2191                 public bool set_running_time (Gst.Format format, uint64 running_time);
2192                 public uint64 to_position (Gst.Format format, uint64 running_time);
2193                 public uint64 to_running_time (Gst.Format format, uint64 position);
2194                 [Version (since = "1.6")]
2195                 public int to_running_time_full (Gst.Format format, uint64 position, uint64 running_time);
2196                 [Version (since = "1.8")]
2197                 public uint64 to_stream_time (Gst.Format format, uint64 position);
2198                 [Version (since = "1.8")]
2199                 public int to_stream_time_full (Gst.Format format, uint64 position, uint64 stream_time);
2200         }
2201         [CCode (cheader_filename = "gst/gst.h", type_id = "gst_stream_get_type ()")]
2202         public class Stream : Gst.Object {
2203                 [CCode (has_construct_function = false)]
2204                 [Version (since = "1.10")]
2205                 public Stream (string? stream_id, Gst.Caps? caps, Gst.StreamType type, Gst.StreamFlags flags);
2206                 [Version (since = "1.10")]
2207                 public Gst.Caps? get_caps ();
2208                 [Version (since = "1.10")]
2209                 public Gst.StreamFlags get_stream_flags ();
2210                 [Version (since = "1.10")]
2211                 public unowned string? get_stream_id ();
2212                 [Version (since = "1.10")]
2213                 public Gst.StreamType get_stream_type ();
2214                 [Version (since = "1.10")]
2215                 public Gst.TagList? get_tags ();
2216                 [Version (since = "1.10")]
2217                 public void set_caps (Gst.Caps? caps);
2218                 [Version (since = "1.10")]
2219                 public void set_stream_flags (Gst.StreamFlags flags);
2220                 [Version (since = "1.10")]
2221                 public void set_stream_type (Gst.StreamType stream_type);
2222                 [Version (since = "1.10")]
2223                 public void set_tags (Gst.TagList? tags);
2224                 public Gst.Caps caps { owned get; set; }
2225                 public Gst.StreamFlags stream_flags { get; set construct; }
2226                 public string stream_id { get; construct; }
2227                 public Gst.StreamType stream_type { get; set construct; }
2228                 public Gst.TagList tags { owned get; set; }
2229         }
2230         [CCode (cheader_filename = "gst/gst.h", type_id = "gst_stream_collection_get_type ()")]
2231         [Version (since = "1.10")]
2232         public class StreamCollection : Gst.Object {
2233                 [CCode (has_construct_function = false)]
2234                 public StreamCollection (string? upstream_id);
2235                 public bool add_stream (owned Gst.Stream stream);
2236                 public uint get_size ();
2237                 public unowned Gst.Stream get_stream (uint index);
2238                 public unowned string get_upstream_id ();
2239                 [NoAccessorMethod]
2240                 public string upstream_id { owned get; set construct; }
2241                 public virtual signal void stream_notify (Gst.Stream stream, GLib.ParamSpec pspec);
2242         }
2243         [CCode (cheader_filename = "gst/gst.h", copy_function = "gst_structure_copy", free_function = "gst_structure_free", type_id = "gst_structure_get_type ()")]
2244         [Compact]
2245         public class Structure {
2246                 public GLib.Type type;
2247                 [CCode (has_construct_function = false)]
2248                 public Structure (string name, string firstfield, ...);
2249                 public bool can_intersect (Gst.Structure struct2);
2250                 public Gst.Structure copy ();
2251                 [CCode (has_construct_function = false)]
2252                 public Structure.empty (string name);
2253                 [Version (since = "1.6")]
2254                 public void filter_and_map_in_place (Gst.StructureFilterMapFunc func);
2255                 public void fixate ();
2256                 public bool fixate_field (string field_name);
2257                 public bool fixate_field_boolean (string field_name, bool target);
2258                 public bool fixate_field_nearest_double (string field_name, double target);
2259                 public bool fixate_field_nearest_fraction (string field_name, int target_numerator, int target_denominator);
2260                 public bool fixate_field_nearest_int (string field_name, int target);
2261                 public bool fixate_field_string (string field_name, string target);
2262                 public bool @foreach (Gst.StructureForeachFunc func);
2263                 public void free ();
2264                 public static Gst.Structure? from_string (string string, out unowned string end);
2265                 public bool @get (...);
2266                 public bool get_array (string fieldname, out GLib.ValueArray array);
2267                 public bool get_boolean (string fieldname, out bool value);
2268                 public bool get_clock_time (string fieldname, out Gst.ClockTime value);
2269                 public bool get_date (string fieldname, out GLib.Date value);
2270                 public bool get_date_time (string fieldname, out Gst.DateTime value);
2271                 public bool get_double (string fieldname, out double value);
2272                 public bool get_enum (string fieldname, GLib.Type enumtype, out int value);
2273                 public GLib.Type get_field_type (string fieldname);
2274                 [Version (since = "1.6")]
2275                 public bool get_flagset (string fieldname, out uint value_flags, out uint value_mask);
2276                 public bool get_fraction (string fieldname, out int value_numerator, out int value_denominator);
2277                 public bool get_int (string fieldname, out int value);
2278                 [Version (since = "1.4")]
2279                 public bool get_int64 (string fieldname, out int64 value);
2280                 public bool get_list (string fieldname, out GLib.ValueArray array);
2281                 public unowned string get_name ();
2282                 public GLib.Quark get_name_id ();
2283                 public unowned string? get_string (string fieldname);
2284                 public bool get_uint (string fieldname, out uint value);
2285                 [Version (since = "1.4")]
2286                 public bool get_uint64 (string fieldname, out uint64 value);
2287                 public bool get_valist (string first_fieldname, va_list args);
2288                 public unowned GLib.Value? get_value (string fieldname);
2289                 public bool has_field (string fieldname);
2290                 public bool has_field_typed (string fieldname, GLib.Type type);
2291                 public bool has_name (string name);
2292                 [CCode (has_construct_function = false)]
2293                 public Structure.id_empty (GLib.Quark quark);
2294                 public bool id_get (...);
2295                 public bool id_get_valist (GLib.Quark first_field_id, va_list args);
2296                 public unowned GLib.Value? id_get_value (GLib.Quark field);
2297                 public bool id_has_field (GLib.Quark field);
2298                 public bool id_has_field_typed (GLib.Quark field, GLib.Type type);
2299                 public void id_set (GLib.Quark fieldname, ...);
2300                 public void id_set_valist (GLib.Quark fieldname, va_list varargs);
2301                 public void id_set_value (GLib.Quark field, GLib.Value value);
2302                 public void id_take_value (GLib.Quark field, owned GLib.Value value);
2303                 public Gst.Structure intersect (Gst.Structure struct2);
2304                 public bool is_equal (Gst.Structure structure2);
2305                 public bool is_subset (Gst.Structure superset);
2306                 public bool map_in_place (Gst.StructureMapFunc func);
2307                 public int n_fields ();
2308                 public unowned string nth_field_name (uint index);
2309                 public void remove_all_fields ();
2310                 public void remove_field (string fieldname);
2311                 public void remove_fields (params string[] field_names);
2312                 public void remove_fields_valist (string fieldname, va_list varargs);
2313                 public void @set (string fieldname, ...);
2314                 public void set_array (string fieldname, GLib.ValueArray array);
2315                 public void set_list (string fieldname, GLib.ValueArray array);
2316                 public void set_name (string name);
2317                 public bool set_parent_refcount (int refcount);
2318                 public void set_valist (string fieldname, va_list varargs);
2319                 public void set_value (string fieldname, GLib.Value value);
2320                 public void take_value (string fieldname, owned GLib.Value value);
2321                 public string to_string ();
2322                 [CCode (has_construct_function = false)]
2323                 public Structure.valist (string name, string firstfield, va_list varargs);
2324         }
2325         [CCode (cheader_filename = "gst/gst.h", type_id = "gst_system_clock_get_type ()")]
2326         public class SystemClock : Gst.Clock {
2327                 [CCode (has_construct_function = false)]
2328                 protected SystemClock ();
2329                 public static Gst.Clock obtain ();
2330                 [Version (since = "1.4")]
2331                 public static void set_default (Gst.Clock new_clock);
2332                 [NoAccessorMethod]
2333                 public Gst.ClockType clock_type { get; set; }
2334         }
2335         [CCode (cheader_filename = "gst/gst.h", ref_function = "gst_tag_list_ref", type_id = "gst_tag_list_get_type ()", unref_function = "gst_tag_list_unref")]
2336         [Compact]
2337         public class TagList : Gst.MiniObject {
2338                 public void add (Gst.TagMergeMode mode, string tag, ...);
2339                 public void add_valist (Gst.TagMergeMode mode, string tag, va_list var_args);
2340                 public void add_valist_values (Gst.TagMergeMode mode, string tag, va_list var_args);
2341                 public void add_value (Gst.TagMergeMode mode, string tag, GLib.Value value);
2342                 public void add_values (Gst.TagMergeMode mode, string tag, ...);
2343                 [CCode (has_construct_function = false)]
2344                 public TagList.empty ();
2345                 public void @foreach (Gst.TagForeachFunc func);
2346                 [CCode (has_construct_function = false)]
2347                 public TagList.from_string (string str);
2348                 public bool get_boolean (string tag, out bool value);
2349                 public bool get_boolean_index (string tag, uint index, out bool value);
2350                 public bool get_date (string tag, out GLib.Date value);
2351                 public bool get_date_index (string tag, uint index, out GLib.Date value);
2352                 public bool get_date_time (string tag, out Gst.DateTime value);
2353                 public bool get_date_time_index (string tag, uint index, out Gst.DateTime value);
2354                 public bool get_double (string tag, out double value);
2355                 public bool get_double_index (string tag, uint index, out double value);
2356                 public bool get_float (string tag, out float value);
2357                 public bool get_float_index (string tag, uint index, out float value);
2358                 public bool get_int (string tag, out int value);
2359                 public bool get_int64 (string tag, int64 value);
2360                 public bool get_int64_index (string tag, uint index, out int64 value);
2361                 public bool get_int_index (string tag, uint index, out int value);
2362                 public bool get_pointer (string tag, out void* value);
2363                 public bool get_pointer_index (string tag, uint index, out void* value);
2364                 public bool get_sample (string tag, out Gst.Sample sample);
2365                 public bool get_sample_index (string tag, uint index, out Gst.Sample sample);
2366                 public Gst.TagScope get_scope ();
2367                 public bool get_string (string tag, out string value);
2368                 public bool get_string_index (string tag, uint index, out string value);
2369                 public uint get_tag_size (string tag);
2370                 public bool get_uint (string tag, out uint value);
2371                 public bool get_uint64 (string tag, out uint64 value);
2372                 public bool get_uint64_index (string tag, uint index, out uint64 value);
2373                 public bool get_uint_index (string tag, uint index, out uint value);
2374                 public unowned GLib.Value? get_value_index (string tag, uint index);
2375                 public void insert (Gst.TagList from, Gst.TagMergeMode mode);
2376                 public bool is_empty ();
2377                 public bool is_equal (Gst.TagList list2);
2378                 public Gst.TagList? merge (Gst.TagList? list2, Gst.TagMergeMode mode);
2379                 public int n_tags ();
2380                 public unowned string nth_tag_name (uint index);
2381                 public bool peek_string_index (string tag, uint index, out unowned string value);
2382                 public void remove_tag (string tag);
2383                 public void set_scope (Gst.TagScope scope);
2384                 public string? to_string ();
2385                 [CCode (has_construct_function = false)]
2386                 public TagList.valist (va_list var_args);
2387         }
2388         [CCode (cheader_filename = "gst/gst.h", type_id = "gst_task_get_type ()")]
2389         public class Task : Gst.Object {
2390                 public GLib.Cond cond;
2391                 public weak Gst.TaskFunction func;
2392                 public GLib.RecMutex @lock;
2393                 public weak GLib.DestroyNotify notify;
2394                 public bool running;
2395                 public Gst.TaskState state;
2396                 public void* user_data;
2397                 [CCode (has_construct_function = false)]
2398                 public Task (owned Gst.TaskFunction func);
2399                 public static void cleanup_all ();
2400                 public Gst.TaskPool get_pool ();
2401                 public Gst.TaskState get_state ();
2402                 public bool join ();
2403                 public bool pause ();
2404                 public void set_enter_callback (owned Gst.TaskThreadFunc enter_func);
2405                 public void set_leave_callback (owned Gst.TaskThreadFunc leave_func);
2406                 public void set_lock (GLib.RecMutex mutex);
2407                 public void set_pool (Gst.TaskPool pool);
2408                 public bool set_state (Gst.TaskState state);
2409                 public bool start ();
2410                 public bool stop ();
2411         }
2412         [CCode (cheader_filename = "gst/gst.h", type_id = "gst_task_pool_get_type ()")]
2413         public class TaskPool : Gst.Object {
2414                 [CCode (has_construct_function = false)]
2415                 public TaskPool ();
2416                 public virtual void cleanup ();
2417                 public virtual void join (void* id);
2418                 public virtual void prepare () throws GLib.Error;
2419                 public virtual void* push ([CCode (scope = "async")] Gst.TaskPoolFunction func) throws GLib.Error;
2420         }
2421         [CCode (cheader_filename = "gst/gst.h", ref_function = "gst_toc_ref", type_id = "gst_toc_get_type ()", unref_function = "gst_toc_unref")]
2422         [Compact]
2423         public class Toc : Gst.MiniObject {
2424                 [CCode (has_construct_function = false)]
2425                 public Toc (Gst.TocScope scope);
2426                 public void append_entry (owned Gst.TocEntry entry);
2427                 public void dump ();
2428                 public unowned Gst.TocEntry? find_entry (string uid);
2429                 public unowned GLib.List<Gst.TocEntry> get_entries ();
2430                 public Gst.TocScope get_scope ();
2431                 public unowned Gst.TagList get_tags ();
2432                 public void merge_tags (Gst.TagList? tags, Gst.TagMergeMode mode);
2433                 public void set_tags (owned Gst.TagList? tags);
2434         }
2435         [CCode (cheader_filename = "gst/gst.h", ref_function = "gst_toc_entry_ref", type_id = "gst_toc_entry_get_type ()", unref_function = "gst_toc_entry_unref")]
2436         [Compact]
2437         public class TocEntry : Gst.MiniObject {
2438                 [CCode (has_construct_function = false)]
2439                 public TocEntry (Gst.TocEntryType type, string uid);
2440                 public void append_sub_entry (owned Gst.TocEntry subentry);
2441                 public Gst.TocEntryType get_entry_type ();
2442                 [Version (since = "1.4")]
2443                 public bool get_loop (out Gst.TocLoopType loop_type, out int repeat_count);
2444                 public unowned Gst.TocEntry get_parent ();
2445                 public bool get_start_stop_times (out int64 start, out int64 stop);
2446                 public unowned GLib.List<Gst.TocEntry> get_sub_entries ();
2447                 public unowned Gst.TagList get_tags ();
2448                 public unowned Gst.Toc get_toc ();
2449                 public unowned string get_uid ();
2450                 public bool is_alternative ();
2451                 public bool is_sequence ();
2452                 public void merge_tags (Gst.TagList? tags, Gst.TagMergeMode mode);
2453                 [Version (since = "1.4")]
2454                 public void set_loop (Gst.TocLoopType loop_type, int repeat_count);
2455                 public void set_start_stop_times (int64 start, int64 stop);
2456                 public void set_tags (owned Gst.TagList? tags);
2457         }
2458         [CCode (cheader_filename = "gst/gst.h", type_id = "gst_tracer_get_type ()")]
2459         public abstract class Tracer : Gst.Object {
2460                 [CCode (has_construct_function = false)]
2461                 protected Tracer ();
2462                 [NoAccessorMethod]
2463                 public string @params { owned get; set construct; }
2464         }
2465         [CCode (cheader_filename = "gst/gst.h", type_id = "gst_tracer_factory_get_type ()")]
2466         [Version (since = "1.8")]
2467         public class TracerFactory : Gst.PluginFeature {
2468                 [CCode (has_construct_function = false)]
2469                 protected TracerFactory ();
2470                 public static GLib.List<Gst.TracerFactory> get_list ();
2471         }
2472         [CCode (cheader_filename = "gst/gst.h", type_id = "gst_tracer_record_get_type ()")]
2473         public class TracerRecord : Gst.Object {
2474                 [CCode (has_construct_function = false)]
2475                 protected TracerRecord ();
2476         }
2477         [CCode (cheader_filename = "gst/gst.h", type_id = "gst_type_find_factory_get_type ()")]
2478         public class TypeFindFactory : Gst.PluginFeature {
2479                 [CCode (has_construct_function = false)]
2480                 protected TypeFindFactory ();
2481                 public void call_function (Gst.TypeFind find);
2482                 public unowned Gst.Caps get_caps ();
2483                 [CCode (array_length = false, array_null_terminated = true)]
2484                 public unowned string[]? get_extensions ();
2485                 public static GLib.List<Gst.TypeFindFactory> get_list ();
2486                 public bool has_function ();
2487         }
2488         [CCode (cheader_filename = "gst/gst.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "gst_uri_get_type ()")]
2489         [Compact]
2490         public class Uri {
2491                 [CCode (has_construct_function = false)]
2492                 [Version (since = "1.6")]
2493                 public Uri (string? scheme, string? userinfo, string? host, uint port, string? path, string? query, string? fragment);
2494                 [Version (since = "1.6")]
2495                 public bool append_path (string relative_path);
2496                 [Version (since = "1.6")]
2497                 public bool append_path_segment (string path_segment);
2498                 [Version (since = "1.6")]
2499                 public bool equal (Gst.Uri second);
2500                 [Version (since = "1.6")]
2501                 public Gst.Uri from_string_with_base (string uri);
2502                 [Version (since = "1.6")]
2503                 public unowned string get_fragment ();
2504                 [Version (since = "1.6")]
2505                 public unowned string get_host ();
2506                 [Version (since = "1.12")]
2507                 public GLib.HashTable<string,string> get_media_fragment_table ();
2508                 [Version (since = "1.6")]
2509                 public string get_path ();
2510                 [Version (since = "1.6")]
2511                 public GLib.List<string> get_path_segments ();
2512                 [Version (since = "1.6")]
2513                 public string get_path_string ();
2514                 [Version (since = "1.6")]
2515                 public uint get_port ();
2516                 [Version (since = "1.6")]
2517                 public GLib.List<weak string> get_query_keys ();
2518                 [Version (since = "1.6")]
2519                 public string get_query_string ();
2520                 [Version (since = "1.6")]
2521                 public GLib.HashTable<string,string> get_query_table ();
2522                 [Version (since = "1.6")]
2523                 public unowned string get_query_value (string query_key);
2524                 public unowned string get_scheme ();
2525                 [Version (since = "1.6")]
2526                 public unowned string get_userinfo ();
2527                 [Version (since = "1.6")]
2528                 public bool is_normalized ();
2529                 [Version (since = "1.6")]
2530                 public bool is_writable ();
2531                 [Version (since = "1.6")]
2532                 public Gst.Uri join (Gst.Uri? ref_uri);
2533                 [ReturnsModifiedPointer]
2534                 [Version (since = "1.6")]
2535                 public Gst.Uri make_writable ();
2536                 [Version (since = "1.6")]
2537                 public Gst.Uri new_with_base (string? scheme, string? userinfo, string? host, uint port, string? path, string? query, string? fragment);
2538                 [Version (since = "1.6")]
2539                 public bool normalize ();
2540                 [Version (since = "1.6")]
2541                 public bool query_has_key (string query_key);
2542                 [Version (since = "1.6")]
2543                 public bool remove_query_key (string query_key);
2544                 [Version (since = "1.6")]
2545                 public bool set_fragment (string? fragment);
2546                 [Version (since = "1.6")]
2547                 public bool set_host (string host);
2548                 [Version (since = "1.6")]
2549                 public bool set_path (string path);
2550                 [Version (since = "1.6")]
2551                 public bool set_path_segments (owned GLib.List<string>? path_segments);
2552                 [Version (since = "1.6")]
2553                 public bool set_path_string (string path);
2554                 [Version (since = "1.6")]
2555                 public bool set_port (uint port);
2556                 [Version (since = "1.6")]
2557                 public bool set_query_string (string query);
2558                 [Version (since = "1.6")]
2559                 public bool set_query_table (GLib.HashTable<string,string>? query_table);
2560                 [Version (since = "1.6")]
2561                 public bool set_query_value (string query_key, string? query_value);
2562                 [Version (since = "1.6")]
2563                 public bool set_scheme (string scheme);
2564                 [Version (since = "1.6")]
2565                 public bool set_userinfo (string userinfo);
2566                 [Version (since = "1.6")]
2567                 public string to_string ();
2568         }
2569         [CCode (cheader_filename = "gst/gst.h", type_id = "gst_value_array_get_type ()")]
2570         public class ValueArray {
2571                 [CCode (has_construct_function = false)]
2572                 protected ValueArray ();
2573                 [Version (since = "1.2")]
2574                 public static void append_and_take_value (GLib.Value value, owned GLib.Value append_value);
2575                 public static void append_value (GLib.Value value, GLib.Value append_value);
2576                 public static uint get_size (GLib.Value value);
2577                 public static unowned GLib.Value? get_value (GLib.Value value, uint index);
2578                 public static void prepend_value (GLib.Value value, GLib.Value prepend_value);
2579         }
2580         [CCode (cheader_filename = "gst/gst.h", type_id = "gst_value_list_get_type ()")]
2581         public class ValueList {
2582                 [CCode (has_construct_function = false)]
2583                 protected ValueList ();
2584                 [Version (since = "1.2")]
2585                 public static void append_and_take_value (GLib.Value value, owned GLib.Value append_value);
2586                 public static void append_value (GLib.Value value, GLib.Value append_value);
2587                 public static void concat (out GLib.Value dest, GLib.Value value1, GLib.Value value2);
2588                 public static uint get_size (GLib.Value value);
2589                 public static unowned GLib.Value? get_value (GLib.Value value, uint index);
2590                 public static void merge (out GLib.Value dest, GLib.Value value1, GLib.Value value2);
2591                 public static void prepend_value (GLib.Value value, GLib.Value prepend_value);
2592         }
2593         [CCode (cheader_filename = "gst/gst.h", type_cname = "GstChildProxyInterface", type_id = "gst_child_proxy_get_type ()")]
2594         public interface ChildProxy : GLib.Object {
2595                 public void @get (...);
2596                 public abstract GLib.Object? get_child_by_index (uint index);
2597                 public abstract GLib.Object? get_child_by_name (string name);
2598                 public abstract uint get_children_count ();
2599                 public GLib.Value get_property (string name);
2600                 public void get_valist (string first_property_name, va_list var_args);
2601                 public bool lookup (string name, out GLib.Object target, out unowned GLib.ParamSpec pspec);
2602                 public void @set (...);
2603                 public void set_property (string name, GLib.Value value);
2604                 public void set_valist (string first_property_name, va_list var_args);
2605                 [HasEmitter]
2606                 public virtual signal void child_added (GLib.Object child, string name);
2607                 [HasEmitter]
2608                 public virtual signal void child_removed (GLib.Object child, string name);
2609         }
2610         [CCode (cheader_filename = "gst/gst.h", type_cname = "GstPresetInterface", type_id = "gst_preset_get_type ()")]
2611         public interface Preset : GLib.Object {
2612                 public abstract bool delete_preset (string name);
2613                 public static unowned string? get_app_dir ();
2614                 public abstract bool get_meta (string name, string tag, out string value);
2615                 [CCode (array_length = false, array_null_terminated = true)]
2616                 public abstract string[] get_preset_names ();
2617                 [CCode (array_length = false, array_null_terminated = true)]
2618                 public abstract string[] get_property_names ();
2619                 [Version (since = "1.6")]
2620                 public bool is_editable ();
2621                 public abstract bool load_preset (string name);
2622                 public abstract bool rename_preset (string old_name, string new_name);
2623                 public abstract bool save_preset (string name);
2624                 public static bool set_app_dir (string app_dir);
2625                 public abstract bool set_meta (string name, string tag, string? value);
2626         }
2627         [CCode (cheader_filename = "gst/gst.h", type_cname = "GstTagSetterInterface", type_id = "gst_tag_setter_get_type ()")]
2628         public interface TagSetter : Gst.Element {
2629                 public void add_tag_valist (Gst.TagMergeMode mode, string tag, va_list var_args);
2630                 public void add_tag_valist_values (Gst.TagMergeMode mode, string tag, va_list var_args);
2631                 public void add_tag_value (Gst.TagMergeMode mode, string tag, GLib.Value value);
2632                 public void add_tag_values (Gst.TagMergeMode mode, string tag, ...);
2633                 public void add_tags (Gst.TagMergeMode mode, string tag, ...);
2634                 public unowned Gst.TagList? get_tag_list ();
2635                 public Gst.TagMergeMode get_tag_merge_mode ();
2636                 public void merge_tags (Gst.TagList list, Gst.TagMergeMode mode);
2637                 public void reset_tags ();
2638                 public void set_tag_merge_mode (Gst.TagMergeMode mode);
2639         }
2640         [CCode (cheader_filename = "gst/gst.h", type_cname = "GstTocSetterInterface", type_id = "gst_toc_setter_get_type ()")]
2641         public interface TocSetter : Gst.Element {
2642                 public Gst.Toc? get_toc ();
2643                 public void reset ();
2644                 public void set_toc (Gst.Toc? toc);
2645         }
2646         [CCode (cheader_filename = "gst/gst.h", type_cname = "GstURIHandlerInterface", type_id = "gst_uri_handler_get_type ()")]
2647         public interface URIHandler : GLib.Object {
2648                 [CCode (array_length = false, array_null_terminated = true)]
2649                 public abstract unowned string[]? get_protocols ();
2650                 public abstract string? get_uri ();
2651                 [CCode (vfunc_name = "get_type")]
2652                 public abstract Gst.URIType get_uri_type ();
2653                 public abstract bool set_uri (string uri) throws GLib.Error;
2654         }
2655         [CCode (cheader_filename = "gst/gst.h", has_type_id = false)]
2656         public struct BufferPoolAcquireParams {
2657                 public Gst.Format format;
2658                 public int64 start;
2659                 public int64 stop;
2660                 public Gst.BufferPoolAcquireFlags flags;
2661         }
2662         [CCode (cheader_filename = "gst/gst.h", has_type_id = false)]
2663         public struct ClockEntry {
2664                 public int refcount;
2665                 public weak Gst.Clock clock;
2666                 public Gst.ClockEntryType type;
2667                 public Gst.ClockTime time;
2668                 public Gst.ClockTime interval;
2669                 public Gst.ClockReturn status;
2670                 public weak Gst.ClockCallback func;
2671                 public void* user_data;
2672                 public weak GLib.DestroyNotify destroy_data;
2673                 public bool unscheduled;
2674                 public bool woken_up;
2675         }
2676         [CCode (cheader_filename = "gst/gst.h")]
2677         [SimpleType]
2678         public struct ClockID {
2679         }
2680         [CCode (cheader_filename = "gst/gst.h")]
2681         [SimpleType]
2682         public struct ClockTime : uint64 {
2683         }
2684         [CCode (cheader_filename = "gst/gst.h")]
2685         [SimpleType]
2686         public struct ClockTimeDiff : int64 {
2687         }
2688         [CCode (cheader_filename = "gst/gst.h", has_type_id = false)]
2689         public struct DebugCategory {
2690                 public void free ();
2691                 public uint get_color ();
2692                 public unowned string get_description ();
2693                 public unowned string get_name ();
2694                 public Gst.DebugLevel get_threshold ();
2695                 public void reset_threshold ();
2696                 public void set_threshold (Gst.DebugLevel level);
2697         }
2698         [CCode (cheader_filename = "gst/gst.h")]
2699         [SimpleType]
2700         public struct ElementFactoryListType : uint64 {
2701         }
2702         [CCode (cheader_filename = "gst/gst.h", has_type_id = false)]
2703         public struct FormatDefinition {
2704                 public Gst.Format value;
2705                 public weak string nick;
2706                 public weak string description;
2707                 public GLib.Quark quark;
2708         }
2709         [CCode (cheader_filename = "gst/gst.h", has_type_id = false)]
2710         public struct MapInfo {
2711                 public weak Gst.Memory memory;
2712                 public Gst.MapFlags flags;
2713                 [CCode (array_length_cname = "size", array_length_type = "gsize")]
2714                 public weak uint8[] data;
2715                 public size_t size;
2716                 public size_t maxsize;
2717                 [CCode (array_length = false)]
2718                 public weak void* user_data[4];
2719         }
2720         [CCode (cheader_filename = "gst/gst.h", has_type_id = false)]
2721         public struct Meta {
2722                 public Gst.MetaFlags flags;
2723                 public Gst.MetaInfo info;
2724                 [CCode (array_length = false, array_null_terminated = true)]
2725                 [Version (since = "1.2")]
2726                 public static unowned string[] api_type_get_tags (GLib.Type api);
2727                 public static bool api_type_has_tag (GLib.Type api, GLib.Quark tag);
2728                 public static GLib.Type api_type_register (string api, string tags);
2729                 public static unowned Gst.MetaInfo? get_info (string impl);
2730                 public static unowned Gst.MetaInfo? register (GLib.Type api, string impl, size_t size, [CCode (scope = "async")] Gst.MetaInitFunction init_func, [CCode (scope = "async")] Gst.MetaFreeFunction free_func, [CCode (scope = "async")] Gst.MetaTransformFunction transform_func);
2731         }
2732         [CCode (cheader_filename = "gst/gst.h", has_type_id = false)]
2733         public struct MetaInfo {
2734                 public GLib.Type api;
2735                 public GLib.Type type;
2736                 public size_t size;
2737                 public weak Gst.MetaInitFunction init_func;
2738                 public weak Gst.MetaFreeFunction free_func;
2739                 public weak Gst.MetaTransformFunction transform_func;
2740         }
2741         [CCode (cheader_filename = "gst/gst.h", has_type_id = false)]
2742         public struct MetaTransformCopy {
2743                 public bool region;
2744                 public size_t offset;
2745                 public size_t size;
2746         }
2747         [CCode (cheader_filename = "gst/gst.h", has_type_id = false)]
2748         public struct PadProbeInfo {
2749                 public Gst.PadProbeType type;
2750                 public ulong id;
2751                 public void* data;
2752                 public uint64 offset;
2753                 public uint size;
2754                 [CCode (cname = "ABI.abi.flow_ret")]
2755                 public Gst.FlowReturn ABI_abi_flow_ret;
2756                 public unowned Gst.Buffer get_buffer ();
2757                 public unowned Gst.BufferList get_buffer_list ();
2758                 public unowned Gst.Event get_event ();
2759                 public unowned Gst.Query get_query ();
2760         }
2761         [CCode (cheader_filename = "gst/gst.h", has_type_id = false)]
2762         public struct ParamSpecArray {
2763                 public weak GLib.ParamSpec parent_instance;
2764                 public weak GLib.ParamSpec element_spec;
2765         }
2766         [CCode (cheader_filename = "gst/gst.h", has_type_id = false)]
2767         public struct ParamSpecFraction {
2768                 public weak GLib.ParamSpec parent_instance;
2769                 public int min_num;
2770                 public int min_den;
2771                 public int max_num;
2772                 public int max_den;
2773                 public int def_num;
2774                 public int def_den;
2775         }
2776         [CCode (cheader_filename = "gst/gst.h", has_type_id = false)]
2777         [Version (since = "1.6")]
2778         public struct ParentBufferMeta {
2779                 public Gst.Meta parent;
2780                 public weak Gst.Buffer buffer;
2781                 public static GLib.Type api_get_type ();
2782                 public static unowned Gst.MetaInfo? get_info ();
2783         }
2784         [CCode (cheader_filename = "gst/gst.h", has_type_id = false)]
2785         public struct PluginDesc {
2786                 public int major_version;
2787                 public int minor_version;
2788                 public weak string name;
2789                 public weak string description;
2790                 public weak Gst.PluginInitFunc plugin_init;
2791                 public weak string version;
2792                 public weak string license;
2793                 public weak string source;
2794                 public weak string package;
2795                 public weak string origin;
2796                 public weak string release_datetime;
2797         }
2798         [CCode (cheader_filename = "gst/gst.h", has_type_id = false)]
2799         public struct PollFD {
2800                 public int fd;
2801                 public void init ();
2802         }
2803         [CCode (cheader_filename = "gst/gst.h", has_type_id = false)]
2804         [Version (since = "1.6")]
2805         public struct ProtectionMeta {
2806                 public Gst.Meta meta;
2807                 public weak Gst.Structure info;
2808                 public static GLib.Type api_get_type ();
2809                 public static unowned Gst.MetaInfo? get_info ();
2810         }
2811         [CCode (cheader_filename = "gst/gst.h", has_type_id = false)]
2812         public struct StaticCaps {
2813                 public weak Gst.Caps caps;
2814                 public weak global::string string;
2815                 public void cleanup ();
2816                 public Gst.Caps @get ();
2817                 public static GLib.Type get_type ();
2818         }
2819         [CCode (cheader_filename = "gst/gst.h", has_type_id = false)]
2820         public struct StaticPadTemplate {
2821                 public weak string name_template;
2822                 public Gst.PadDirection direction;
2823                 public Gst.PadPresence presence;
2824                 public Gst.StaticCaps static_caps;
2825                 public Gst.PadTemplate @get ();
2826                 public Gst.Caps get_caps ();
2827                 public static GLib.Type get_type ();
2828         }
2829         [CCode (cheader_filename = "gst/gst.h", has_type_id = false)]
2830         public struct TimedValue {
2831                 public Gst.ClockTime timestamp;
2832                 public double value;
2833         }
2834         [CCode (cheader_filename = "gst/gst.h", has_type_id = false)]
2835         public struct TypeFind {
2836                 public void* data;
2837                 public static GLib.Type get_type ();
2838                 [CCode (array_length_pos = 1.1, array_length_type = "guint")]
2839                 public unowned uint8[]? peek (int64 offset);
2840                 public static bool register (Gst.Plugin? plugin, string name, uint rank, [CCode (delegate_target_pos = 6.1, destroy_notify_pos = 6.2)] owned Gst.TypeFindFunction func, string? extensions, Gst.Caps possible_caps);
2841                 public void suggest (uint probability, Gst.Caps caps);
2842                 public void suggest_simple (uint probability, string media_type, string? fieldname, ...);
2843         }
2844         [CCode (cheader_filename = "gst/gst.h", has_type_id = false)]
2845         public struct ValueTable {
2846                 public GLib.Type type;
2847                 public weak Gst.ValueCompareFunc compare;
2848                 public weak Gst.ValueSerializeFunc serialize;
2849                 public weak Gst.ValueDeserializeFunc deserialize;
2850         }
2851         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_ALLOCATOR_FLAG_", type_id = "gst_allocator_flags_get_type ()")]
2852         [Flags]
2853         public enum AllocatorFlags {
2854                 CUSTOM_ALLOC,
2855                 LAST
2856         }
2857         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_BIN_FLAG_", type_id = "gst_bin_flags_get_type ()")]
2858         [Flags]
2859         public enum BinFlags {
2860                 NO_RESYNC,
2861                 STREAMS_AWARE,
2862                 LAST
2863         }
2864         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_BUFFER_COPY_", type_id = "gst_buffer_copy_flags_get_type ()")]
2865         [Flags]
2866         public enum BufferCopyFlags {
2867                 NONE,
2868                 FLAGS,
2869                 TIMESTAMPS,
2870                 META,
2871                 MEMORY,
2872                 MERGE,
2873                 DEEP
2874         }
2875         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_BUFFER_FLAG_", type_id = "gst_buffer_flags_get_type ()")]
2876         [Flags]
2877         public enum BufferFlags {
2878                 LIVE,
2879                 DECODE_ONLY,
2880                 DISCONT,
2881                 RESYNC,
2882                 CORRUPTED,
2883                 MARKER,
2884                 HEADER,
2885                 GAP,
2886                 DROPPABLE,
2887                 DELTA_UNIT,
2888                 TAG_MEMORY,
2889                 SYNC_AFTER,
2890                 LAST
2891         }
2892         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_BUFFER_POOL_ACQUIRE_FLAG_", type_id = "gst_buffer_pool_acquire_flags_get_type ()")]
2893         [Flags]
2894         public enum BufferPoolAcquireFlags {
2895                 NONE,
2896                 KEY_UNIT,
2897                 DONTWAIT,
2898                 DISCONT,
2899                 LAST
2900         }
2901         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_BUFFERING_", type_id = "gst_buffering_mode_get_type ()")]
2902         public enum BufferingMode {
2903                 STREAM,
2904                 DOWNLOAD,
2905                 TIMESHIFT,
2906                 LIVE
2907         }
2908         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_BUS_", type_id = "gst_bus_flags_get_type ()")]
2909         [Flags]
2910         public enum BusFlags {
2911                 FLUSHING,
2912                 FLAG_LAST
2913         }
2914         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_BUS_", type_id = "gst_bus_sync_reply_get_type ()")]
2915         public enum BusSyncReply {
2916                 DROP,
2917                 PASS,
2918                 ASYNC
2919         }
2920         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_CAPS_FLAG_", type_id = "gst_caps_flags_get_type ()")]
2921         [Flags]
2922         public enum CapsFlags {
2923                 ANY
2924         }
2925         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_CAPS_INTERSECT_", type_id = "gst_caps_intersect_mode_get_type ()")]
2926         public enum CapsIntersectMode {
2927                 ZIG_ZAG,
2928                 FIRST
2929         }
2930         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_CLOCK_ENTRY_", type_id = "gst_clock_entry_type_get_type ()")]
2931         public enum ClockEntryType {
2932                 SINGLE,
2933                 PERIODIC
2934         }
2935         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_CLOCK_FLAG_", type_id = "gst_clock_flags_get_type ()")]
2936         [Flags]
2937         public enum ClockFlags {
2938                 CAN_DO_SINGLE_SYNC,
2939                 CAN_DO_SINGLE_ASYNC,
2940                 CAN_DO_PERIODIC_SYNC,
2941                 CAN_DO_PERIODIC_ASYNC,
2942                 CAN_SET_RESOLUTION,
2943                 CAN_SET_MASTER,
2944                 NEEDS_STARTUP_SYNC,
2945                 LAST
2946         }
2947         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_CLOCK_", type_id = "gst_clock_return_get_type ()")]
2948         public enum ClockReturn {
2949                 OK,
2950                 EARLY,
2951                 UNSCHEDULED,
2952                 BUSY,
2953                 BADTIME,
2954                 ERROR,
2955                 UNSUPPORTED,
2956                 DONE
2957         }
2958         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_CLOCK_TYPE_", type_id = "gst_clock_type_get_type ()")]
2959         public enum ClockType {
2960                 REALTIME,
2961                 MONOTONIC,
2962                 OTHER
2963         }
2964         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_DEBUG_", type_id = "gst_debug_color_flags_get_type ()")]
2965         public enum DebugColorFlags {
2966                 FG_BLACK,
2967                 FG_RED,
2968                 FG_GREEN,
2969                 FG_YELLOW,
2970                 FG_BLUE,
2971                 FG_MAGENTA,
2972                 FG_CYAN,
2973                 FG_WHITE,
2974                 BG_BLACK,
2975                 BG_RED,
2976                 BG_GREEN,
2977                 BG_YELLOW,
2978                 BG_BLUE,
2979                 BG_MAGENTA,
2980                 BG_CYAN,
2981                 BG_WHITE,
2982                 BOLD,
2983                 UNDERLINE
2984         }
2985         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_DEBUG_COLOR_MODE_", type_id = "gst_debug_color_mode_get_type ()")]
2986         public enum DebugColorMode {
2987                 OFF,
2988                 ON,
2989                 UNIX
2990         }
2991         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_DEBUG_GRAPH_SHOW_", type_id = "gst_debug_graph_details_get_type ()")]
2992         [Flags]
2993         public enum DebugGraphDetails {
2994                 MEDIA_TYPE,
2995                 CAPS_DETAILS,
2996                 NON_DEFAULT_PARAMS,
2997                 STATES,
2998                 FULL_PARAMS,
2999                 ALL,
3000                 VERBOSE
3001         }
3002         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_LEVEL_", type_id = "gst_debug_level_get_type ()")]
3003         public enum DebugLevel {
3004                 NONE,
3005                 ERROR,
3006                 WARNING,
3007                 FIXME,
3008                 INFO,
3009                 DEBUG,
3010                 LOG,
3011                 TRACE,
3012                 MEMDUMP,
3013                 COUNT
3014         }
3015         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_ELEMENT_FLAG_", type_id = "gst_element_flags_get_type ()")]
3016         [Flags]
3017         public enum ElementFlags {
3018                 LOCKED_STATE,
3019                 SINK,
3020                 SOURCE,
3021                 PROVIDE_CLOCK,
3022                 REQUIRE_CLOCK,
3023                 INDEXABLE,
3024                 LAST
3025         }
3026         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_EVENT_", type_id = "gst_event_type_get_type ()")]
3027         public enum EventType {
3028                 UNKNOWN,
3029                 FLUSH_START,
3030                 FLUSH_STOP,
3031                 STREAM_START,
3032                 CAPS,
3033                 SEGMENT,
3034                 STREAM_COLLECTION,
3035                 TAG,
3036                 BUFFERSIZE,
3037                 SINK_MESSAGE,
3038                 STREAM_GROUP_DONE,
3039                 EOS,
3040                 TOC,
3041                 PROTECTION,
3042                 SEGMENT_DONE,
3043                 GAP,
3044                 QOS,
3045                 SEEK,
3046                 NAVIGATION,
3047                 LATENCY,
3048                 STEP,
3049                 RECONFIGURE,
3050                 TOC_SELECT,
3051                 SELECT_STREAMS,
3052                 CUSTOM_UPSTREAM,
3053                 CUSTOM_DOWNSTREAM,
3054                 CUSTOM_DOWNSTREAM_OOB,
3055                 CUSTOM_DOWNSTREAM_STICKY,
3056                 CUSTOM_BOTH,
3057                 CUSTOM_BOTH_OOB;
3058                 public static Gst.EventTypeFlags get_flags (Gst.EventType type);
3059                 public static unowned string get_name (Gst.EventType type);
3060                 public static GLib.Quark to_quark (Gst.EventType type);
3061         }
3062         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_EVENT_TYPE_", type_id = "gst_event_type_flags_get_type ()")]
3063         [Flags]
3064         public enum EventTypeFlags {
3065                 UPSTREAM,
3066                 DOWNSTREAM,
3067                 SERIALIZED,
3068                 STICKY,
3069                 STICKY_MULTI
3070         }
3071         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_FLOW_", type_id = "gst_flow_return_get_type ()")]
3072         public enum FlowReturn {
3073                 CUSTOM_SUCCESS_2,
3074                 CUSTOM_SUCCESS_1,
3075                 CUSTOM_SUCCESS,
3076                 OK,
3077                 NOT_LINKED,
3078                 FLUSHING,
3079                 EOS,
3080                 NOT_NEGOTIATED,
3081                 ERROR,
3082                 NOT_SUPPORTED,
3083                 CUSTOM_ERROR,
3084                 CUSTOM_ERROR_1,
3085                 CUSTOM_ERROR_2;
3086                 [CCode (cname = "gst_flow_get_name")]
3087                 public unowned string get_name ();
3088         }
3089         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_FORMAT_", type_id = "gst_format_get_type ()")]
3090         public enum Format {
3091                 UNDEFINED,
3092                 DEFAULT,
3093                 BYTES,
3094                 TIME,
3095                 BUFFERS,
3096                 PERCENT;
3097                 [CCode (cname = "gst_formats_contains")]
3098                 public static bool contains ([CCode (array_length = false, array_null_terminated = true)] Gst.Format[] formats, Gst.Format format);
3099                 public static Gst.Format get_by_nick (string nick);
3100                 public static unowned Gst.FormatDefinition? get_details (Gst.Format format);
3101                 public static unowned string? get_name (Gst.Format format);
3102                 public static Gst.Iterator iterate_definitions ();
3103                 public static Gst.Format register (string nick, string description);
3104                 public static GLib.Quark to_quark (Gst.Format format);
3105         }
3106         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_ITERATOR_ITEM_", type_id = "gst_iterator_item_get_type ()")]
3107         public enum IteratorItem {
3108                 SKIP,
3109                 PASS,
3110                 END
3111         }
3112         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_ITERATOR_", type_id = "gst_iterator_result_get_type ()")]
3113         public enum IteratorResult {
3114                 DONE,
3115                 OK,
3116                 RESYNC,
3117                 ERROR
3118         }
3119         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_LOCK_FLAG_", type_id = "gst_lock_flags_get_type ()")]
3120         [Flags]
3121         public enum LockFlags {
3122                 READ,
3123                 WRITE,
3124                 EXCLUSIVE,
3125                 LAST
3126         }
3127         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_MAP_", type_id = "gst_map_flags_get_type ()")]
3128         [Flags]
3129         public enum MapFlags {
3130                 READ,
3131                 WRITE,
3132                 FLAG_LAST
3133         }
3134         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_MEMORY_FLAG_", type_id = "gst_memory_flags_get_type ()")]
3135         [Flags]
3136         public enum MemoryFlags {
3137                 READONLY,
3138                 NO_SHARE,
3139                 ZERO_PREFIXED,
3140                 ZERO_PADDED,
3141                 PHYSICALLY_CONTIGUOUS,
3142                 NOT_MAPPABLE,
3143                 LAST
3144         }
3145         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_MESSAGE_", type_id = "gst_message_type_get_type ()")]
3146         [Flags]
3147         public enum MessageType {
3148                 UNKNOWN,
3149                 EOS,
3150                 ERROR,
3151                 WARNING,
3152                 INFO,
3153                 TAG,
3154                 BUFFERING,
3155                 STATE_CHANGED,
3156                 STATE_DIRTY,
3157                 STEP_DONE,
3158                 CLOCK_PROVIDE,
3159                 CLOCK_LOST,
3160                 NEW_CLOCK,
3161                 STRUCTURE_CHANGE,
3162                 STREAM_STATUS,
3163                 APPLICATION,
3164                 ELEMENT,
3165                 SEGMENT_START,
3166                 SEGMENT_DONE,
3167                 DURATION_CHANGED,
3168                 LATENCY,
3169                 ASYNC_START,
3170                 ASYNC_DONE,
3171                 REQUEST_STATE,
3172                 STEP_START,
3173                 QOS,
3174                 PROGRESS,
3175                 TOC,
3176                 RESET_TIME,
3177                 STREAM_START,
3178                 NEED_CONTEXT,
3179                 HAVE_CONTEXT,
3180                 EXTENDED,
3181                 DEVICE_ADDED,
3182                 DEVICE_REMOVED,
3183                 PROPERTY_NOTIFY,
3184                 STREAM_COLLECTION,
3185                 STREAMS_SELECTED,
3186                 REDIRECT,
3187                 ANY;
3188                 public static unowned string get_name (Gst.MessageType type);
3189                 public static GLib.Quark to_quark (Gst.MessageType type);
3190         }
3191         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_META_FLAG_", type_id = "gst_meta_flags_get_type ()")]
3192         [Flags]
3193         public enum MetaFlags {
3194                 NONE,
3195                 READONLY,
3196                 POOLED,
3197                 LOCKED,
3198                 LAST
3199         }
3200         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_MINI_OBJECT_FLAG_", type_id = "gst_mini_object_flags_get_type ()")]
3201         [Flags]
3202         public enum MiniObjectFlags {
3203                 LOCKABLE,
3204                 LOCK_READONLY,
3205                 MAY_BE_LEAKED,
3206                 LAST
3207         }
3208         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_OBJECT_FLAG_", type_id = "gst_object_flags_get_type ()")]
3209         [Flags]
3210         public enum ObjectFlags {
3211                 MAY_BE_LEAKED,
3212                 LAST
3213         }
3214         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_PAD_", type_id = "gst_pad_direction_get_type ()")]
3215         public enum PadDirection {
3216                 UNKNOWN,
3217                 SRC,
3218                 SINK
3219         }
3220         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_PAD_FLAG_", type_id = "gst_pad_flags_get_type ()")]
3221         [Flags]
3222         public enum PadFlags {
3223                 BLOCKED,
3224                 FLUSHING,
3225                 EOS,
3226                 BLOCKING,
3227                 NEED_PARENT,
3228                 NEED_RECONFIGURE,
3229                 PENDING_EVENTS,
3230                 FIXED_CAPS,
3231                 PROXY_CAPS,
3232                 PROXY_ALLOCATION,
3233                 PROXY_SCHEDULING,
3234                 ACCEPT_INTERSECT,
3235                 ACCEPT_TEMPLATE,
3236                 LAST
3237         }
3238         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_PAD_LINK_CHECK_", type_id = "gst_pad_link_check_get_type ()")]
3239         [Flags]
3240         public enum PadLinkCheck {
3241                 NOTHING,
3242                 HIERARCHY,
3243                 TEMPLATE_CAPS,
3244                 CAPS,
3245                 NO_RECONFIGURE,
3246                 DEFAULT
3247         }
3248         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_PAD_LINK_", type_id = "gst_pad_link_return_get_type ()")]
3249         public enum PadLinkReturn {
3250                 OK,
3251                 WRONG_HIERARCHY,
3252                 WAS_LINKED,
3253                 WRONG_DIRECTION,
3254                 NOFORMAT,
3255                 NOSCHED,
3256                 REFUSED
3257         }
3258         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_PAD_MODE_", type_id = "gst_pad_mode_get_type ()")]
3259         public enum PadMode {
3260                 NONE,
3261                 PUSH,
3262                 PULL;
3263                 public static unowned string get_name (Gst.PadMode mode);
3264         }
3265         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_PAD_", type_id = "gst_pad_presence_get_type ()")]
3266         public enum PadPresence {
3267                 ALWAYS,
3268                 SOMETIMES,
3269                 REQUEST
3270         }
3271         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_PAD_PROBE_", type_id = "gst_pad_probe_return_get_type ()")]
3272         public enum PadProbeReturn {
3273                 DROP,
3274                 OK,
3275                 REMOVE,
3276                 PASS,
3277                 HANDLED
3278         }
3279         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_PAD_PROBE_TYPE_", type_id = "gst_pad_probe_type_get_type ()")]
3280         [Flags]
3281         public enum PadProbeType {
3282                 INVALID,
3283                 IDLE,
3284                 BLOCK,
3285                 BUFFER,
3286                 BUFFER_LIST,
3287                 EVENT_DOWNSTREAM,
3288                 EVENT_UPSTREAM,
3289                 EVENT_FLUSH,
3290                 QUERY_DOWNSTREAM,
3291                 QUERY_UPSTREAM,
3292                 PUSH,
3293                 PULL,
3294                 BLOCKING,
3295                 DATA_DOWNSTREAM,
3296                 DATA_UPSTREAM,
3297                 DATA_BOTH,
3298                 BLOCK_DOWNSTREAM,
3299                 BLOCK_UPSTREAM,
3300                 EVENT_BOTH,
3301                 QUERY_BOTH,
3302                 ALL_BOTH,
3303                 SCHEDULING
3304         }
3305         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_PAD_TEMPLATE_FLAG_", type_id = "gst_pad_template_flags_get_type ()")]
3306         [Flags]
3307         public enum PadTemplateFlags {
3308                 LAST
3309         }
3310         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_PARSE_FLAG_", type_id = "gst_parse_flags_get_type ()")]
3311         [Flags]
3312         public enum ParseFlags {
3313                 NONE,
3314                 FATAL_ERRORS,
3315                 NO_SINGLE_ELEMENT_BINS,
3316                 PLACE_IN_BIN
3317         }
3318         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_PIPELINE_FLAG_", type_id = "gst_pipeline_flags_get_type ()")]
3319         [Flags]
3320         public enum PipelineFlags {
3321                 FIXED_CLOCK,
3322                 LAST
3323         }
3324         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_PLUGIN_DEPENDENCY_FLAG_", type_id = "gst_plugin_dependency_flags_get_type ()")]
3325         [Flags]
3326         public enum PluginDependencyFlags {
3327                 NONE,
3328                 RECURSE,
3329                 PATHS_ARE_DEFAULT_ONLY,
3330                 FILE_NAME_IS_SUFFIX,
3331                 FILE_NAME_IS_PREFIX
3332         }
3333         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_PLUGIN_FLAG_", type_id = "gst_plugin_flags_get_type ()")]
3334         [Flags]
3335         public enum PluginFlags {
3336                 CACHED,
3337                 BLACKLISTED
3338         }
3339         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_PROGRESS_TYPE_", type_id = "gst_progress_type_get_type ()")]
3340         public enum ProgressType {
3341                 START,
3342                 CONTINUE,
3343                 COMPLETE,
3344                 CANCELED,
3345                 ERROR
3346         }
3347         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_QOS_TYPE_", type_id = "gst_qos_type_get_type ()")]
3348         public enum QOSType {
3349                 OVERFLOW,
3350                 UNDERFLOW,
3351                 THROTTLE
3352         }
3353         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_QUERY_", type_id = "gst_query_type_get_type ()")]
3354         public enum QueryType {
3355                 UNKNOWN,
3356                 POSITION,
3357                 DURATION,
3358                 LATENCY,
3359                 JITTER,
3360                 RATE,
3361                 SEEKING,
3362                 SEGMENT,
3363                 CONVERT,
3364                 FORMATS,
3365                 BUFFERING,
3366                 CUSTOM,
3367                 URI,
3368                 ALLOCATION,
3369                 SCHEDULING,
3370                 ACCEPT_CAPS,
3371                 CAPS,
3372                 DRAIN,
3373                 CONTEXT;
3374                 public static Gst.QueryTypeFlags get_flags (Gst.QueryType type);
3375                 public static unowned string get_name (Gst.QueryType type);
3376                 public static GLib.Quark to_quark (Gst.QueryType type);
3377         }
3378         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_QUERY_TYPE_", type_id = "gst_query_type_flags_get_type ()")]
3379         [Flags]
3380         public enum QueryTypeFlags {
3381                 UPSTREAM,
3382                 DOWNSTREAM,
3383                 SERIALIZED
3384         }
3385         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_RANK_", type_id = "gst_rank_get_type ()")]
3386         public enum Rank {
3387                 NONE,
3388                 MARGINAL,
3389                 SECONDARY,
3390                 PRIMARY
3391         }
3392         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_SCHEDULING_FLAG_", type_id = "gst_scheduling_flags_get_type ()")]
3393         [Flags]
3394         public enum SchedulingFlags {
3395                 SEEKABLE,
3396                 SEQUENTIAL,
3397                 BANDWIDTH_LIMITED
3398         }
3399         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_SEARCH_MODE_", type_id = "gst_search_mode_get_type ()")]
3400         public enum SearchMode {
3401                 EXACT,
3402                 BEFORE,
3403                 AFTER
3404         }
3405         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_SEEK_FLAG_", type_id = "gst_seek_flags_get_type ()")]
3406         [Flags]
3407         public enum SeekFlags {
3408                 NONE,
3409                 FLUSH,
3410                 ACCURATE,
3411                 KEY_UNIT,
3412                 SEGMENT,
3413                 TRICKMODE,
3414                 SKIP,
3415                 SNAP_BEFORE,
3416                 SNAP_AFTER,
3417                 SNAP_NEAREST,
3418                 TRICKMODE_KEY_UNITS,
3419                 TRICKMODE_NO_AUDIO
3420         }
3421         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_SEEK_TYPE_", type_id = "gst_seek_type_get_type ()")]
3422         public enum SeekType {
3423                 NONE,
3424                 SET,
3425                 END
3426         }
3427         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_SEGMENT_FLAG_", type_id = "gst_segment_flags_get_type ()")]
3428         [Flags]
3429         public enum SegmentFlags {
3430                 NONE,
3431                 RESET,
3432                 TRICKMODE,
3433                 SKIP,
3434                 SEGMENT,
3435                 TRICKMODE_KEY_UNITS,
3436                 TRICKMODE_NO_AUDIO
3437         }
3438         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_STACK_TRACE_SHOW_", type_id = "gst_stack_trace_flags_get_type ()")]
3439         [Flags]
3440         public enum StackTraceFlags {
3441                 FULL
3442         }
3443         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_STATE_", type_id = "gst_state_get_type ()")]
3444         public enum State {
3445                 VOID_PENDING,
3446                 NULL,
3447                 READY,
3448                 PAUSED,
3449                 PLAYING
3450         }
3451         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_STATE_CHANGE_", type_id = "gst_state_change_get_type ()")]
3452         public enum StateChange {
3453                 NULL_TO_READY,
3454                 READY_TO_PAUSED,
3455                 PAUSED_TO_PLAYING,
3456                 PLAYING_TO_PAUSED,
3457                 PAUSED_TO_READY,
3458                 READY_TO_NULL
3459         }
3460         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_STATE_CHANGE_", type_id = "gst_state_change_return_get_type ()")]
3461         public enum StateChangeReturn {
3462                 FAILURE,
3463                 SUCCESS,
3464                 ASYNC,
3465                 NO_PREROLL
3466         }
3467         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_STREAM_FLAG_", type_id = "gst_stream_flags_get_type ()")]
3468         [Flags]
3469         [Version (since = "1.2")]
3470         public enum StreamFlags {
3471                 NONE,
3472                 SPARSE,
3473                 SELECT,
3474                 UNSELECT
3475         }
3476         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_STREAM_STATUS_TYPE_", type_id = "gst_stream_status_type_get_type ()")]
3477         public enum StreamStatusType {
3478                 CREATE,
3479                 ENTER,
3480                 LEAVE,
3481                 DESTROY,
3482                 START,
3483                 PAUSE,
3484                 STOP
3485         }
3486         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_STREAM_TYPE_", type_id = "gst_stream_type_get_type ()")]
3487         [Flags]
3488         public enum StreamType {
3489                 UNKNOWN,
3490                 AUDIO,
3491                 VIDEO,
3492                 CONTAINER,
3493                 TEXT;
3494                 [Version (since = "1.10")]
3495                 public static unowned string get_name (Gst.StreamType stype);
3496         }
3497         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_STRUCTURE_CHANGE_TYPE_PAD_", type_id = "gst_structure_change_type_get_type ()")]
3498         public enum StructureChangeType {
3499                 LINK,
3500                 UNLINK
3501         }
3502         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_TAG_FLAG_", type_id = "gst_tag_flag_get_type ()")]
3503         public enum TagFlag {
3504                 UNDEFINED,
3505                 META,
3506                 ENCODED,
3507                 DECODED,
3508                 COUNT
3509         }
3510         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_TAG_MERGE_", type_id = "gst_tag_merge_mode_get_type ()")]
3511         public enum TagMergeMode {
3512                 UNDEFINED,
3513                 REPLACE_ALL,
3514                 REPLACE,
3515                 APPEND,
3516                 PREPEND,
3517                 KEEP,
3518                 KEEP_ALL,
3519                 COUNT
3520         }
3521         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_TAG_SCOPE_", type_id = "gst_tag_scope_get_type ()")]
3522         public enum TagScope {
3523                 STREAM,
3524                 GLOBAL
3525         }
3526         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_TASK_", type_id = "gst_task_state_get_type ()")]
3527         public enum TaskState {
3528                 STARTED,
3529                 STOPPED,
3530                 PAUSED
3531         }
3532         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_TOC_ENTRY_TYPE_", type_id = "gst_toc_entry_type_get_type ()")]
3533         public enum TocEntryType {
3534                 ANGLE,
3535                 VERSION,
3536                 EDITION,
3537                 INVALID,
3538                 TITLE,
3539                 TRACK,
3540                 CHAPTER;
3541                 public static unowned string get_nick (Gst.TocEntryType type);
3542         }
3543         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_TOC_LOOP_", type_id = "gst_toc_loop_type_get_type ()")]
3544         [Version (since = "1.4")]
3545         public enum TocLoopType {
3546                 NONE,
3547                 FORWARD,
3548                 REVERSE,
3549                 PING_PONG
3550         }
3551         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_TOC_SCOPE_", type_id = "gst_toc_scope_get_type ()")]
3552         public enum TocScope {
3553                 GLOBAL,
3554                 CURRENT
3555         }
3556         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_TRACER_VALUE_FLAGS_", type_id = "gst_tracer_value_flags_get_type ()")]
3557         [Flags]
3558         public enum TracerValueFlags {
3559                 NONE,
3560                 OPTIONAL,
3561                 AGGREGATED
3562         }
3563         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_TRACER_VALUE_SCOPE_", type_id = "gst_tracer_value_scope_get_type ()")]
3564         [Version (since = "1.8")]
3565         public enum TracerValueScope {
3566                 PROCESS,
3567                 THREAD,
3568                 ELEMENT,
3569                 PAD
3570         }
3571         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_TYPE_FIND_", type_id = "gst_type_find_probability_get_type ()")]
3572         public enum TypeFindProbability {
3573                 NONE,
3574                 MINIMUM,
3575                 POSSIBLE,
3576                 LIKELY,
3577                 NEARLY_CERTAIN,
3578                 MAXIMUM
3579         }
3580         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_URI_", type_id = "gst_uri_type_get_type ()")]
3581         public enum URIType {
3582                 UNKNOWN,
3583                 SINK,
3584                 SRC
3585         }
3586         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_CORE_ERROR_")]
3587         public errordomain CoreError {
3588                 FAILED,
3589                 TOO_LAZY,
3590                 NOT_IMPLEMENTED,
3591                 STATE_CHANGE,
3592                 PAD,
3593                 THREAD,
3594                 NEGOTIATION,
3595                 EVENT,
3596                 SEEK,
3597                 CAPS,
3598                 TAG,
3599                 MISSING_PLUGIN,
3600                 CLOCK,
3601                 DISABLED,
3602                 NUM_ERRORS;
3603                 public static GLib.Quark quark ();
3604         }
3605         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_LIBRARY_ERROR_")]
3606         public errordomain LibraryError {
3607                 FAILED,
3608                 TOO_LAZY,
3609                 INIT,
3610                 SHUTDOWN,
3611                 SETTINGS,
3612                 ENCODE,
3613                 NUM_ERRORS;
3614                 public static GLib.Quark quark ();
3615         }
3616         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_PARSE_ERROR_")]
3617         public errordomain ParseError {
3618                 SYNTAX,
3619                 NO_SUCH_ELEMENT,
3620                 NO_SUCH_PROPERTY,
3621                 LINK,
3622                 COULD_NOT_SET_PROPERTY,
3623                 EMPTY_BIN,
3624                 EMPTY,
3625                 DELAYED_LINK;
3626                 public static GLib.Quark quark ();
3627         }
3628         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_PLUGIN_ERROR_")]
3629         public errordomain PluginError {
3630                 MODULE,
3631                 DEPENDENCIES,
3632                 NAME_MISMATCH;
3633                 public static GLib.Quark quark ();
3634         }
3635         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_RESOURCE_ERROR_")]
3636         public errordomain ResourceError {
3637                 FAILED,
3638                 TOO_LAZY,
3639                 NOT_FOUND,
3640                 BUSY,
3641                 OPEN_READ,
3642                 OPEN_WRITE,
3643                 OPEN_READ_WRITE,
3644                 CLOSE,
3645                 READ,
3646                 WRITE,
3647                 SEEK,
3648                 SYNC,
3649                 SETTINGS,
3650                 NO_SPACE_LEFT,
3651                 NOT_AUTHORIZED,
3652                 NUM_ERRORS;
3653                 public static GLib.Quark quark ();
3654         }
3655         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_STREAM_ERROR_")]
3656         public errordomain StreamError {
3657                 FAILED,
3658                 TOO_LAZY,
3659                 NOT_IMPLEMENTED,
3660                 TYPE_NOT_FOUND,
3661                 WRONG_TYPE,
3662                 CODEC_NOT_FOUND,
3663                 DECODE,
3664                 ENCODE,
3665                 DEMUX,
3666                 MUX,
3667                 FORMAT,
3668                 DECRYPT,
3669                 DECRYPT_NOKEY,
3670                 NUM_ERRORS;
3671                 public static GLib.Quark quark ();
3672         }
3673         [CCode (cheader_filename = "gst/gst.h", cprefix = "GST_URI_ERROR_")]
3674         public errordomain URIError {
3675                 UNSUPPORTED_PROTOCOL,
3676                 BAD_URI,
3677                 BAD_STATE,
3678                 BAD_REFERENCE
3679         }
3680         [CCode (cheader_filename = "gst/gst.h", instance_pos = 2.9)]
3681         public delegate bool BufferForeachMetaFunc (Gst.Buffer buffer, out Gst.Meta? meta);
3682         [CCode (cheader_filename = "gst/gst.h", instance_pos = 2.9)]
3683         public delegate bool BufferListFunc (out Gst.Buffer? buffer, uint idx);
3684         [CCode (cheader_filename = "gst/gst.h", instance_pos = 2.9)]
3685         public delegate bool BusFunc (Gst.Bus bus, Gst.Message message);
3686         [CCode (cheader_filename = "gst/gst.h", instance_pos = 2.9)]
3687         public delegate Gst.BusSyncReply BusSyncHandler (Gst.Bus bus, Gst.Message message);
3688         [CCode (cheader_filename = "gst/gst.h", instance_pos = 2.9)]
3689         public delegate bool CapsFilterMapFunc (Gst.CapsFeatures features, Gst.Structure structure);
3690         [CCode (cheader_filename = "gst/gst.h", instance_pos = 2.9)]
3691         [Version (since = "1.6")]
3692         public delegate bool CapsForeachFunc (Gst.CapsFeatures features, Gst.Structure structure);
3693         [CCode (cheader_filename = "gst/gst.h", instance_pos = 2.9)]
3694         public delegate bool CapsMapFunc (Gst.CapsFeatures features, Gst.Structure structure);
3695         [CCode (cheader_filename = "gst/gst.h", instance_pos = 3.9)]
3696         public delegate bool ClockCallback (Gst.Clock clock, Gst.ClockTime time, Gst.ClockID id);
3697         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
3698         public delegate void ControlBindingConvert (Gst.ControlBinding binding, double src_value, GLib.Value dest_value);
3699         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
3700         public delegate bool ControlSourceGetValue (Gst.ControlSource self, Gst.ClockTime timestamp, double value);
3701         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
3702         public delegate bool ControlSourceGetValueArray (Gst.ControlSource self, Gst.ClockTime timestamp, Gst.ClockTime interval, uint n_values, double values);
3703         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
3704         public delegate void DebugFuncPtr ();
3705         [CCode (cheader_filename = "gst/gst.h", instance_pos = 1.9)]
3706         public delegate void ElementCallAsyncFunc (Gst.Element element);
3707         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
3708         public delegate void IteratorCopyFunction (Gst.Iterator it, Gst.Iterator copy);
3709         [CCode (cheader_filename = "gst/gst.h", instance_pos = 2.9)]
3710         public delegate bool IteratorFoldFunction (GLib.Value item, GLib.Value ret);
3711         [CCode (cheader_filename = "gst/gst.h", instance_pos = 1.9)]
3712         public delegate void IteratorForeachFunction (GLib.Value item);
3713         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
3714         public delegate void IteratorFreeFunction (Gst.Iterator it);
3715         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
3716         public delegate Gst.IteratorItem IteratorItemFunction (Gst.Iterator it, GLib.Value item);
3717         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
3718         public delegate Gst.IteratorResult IteratorNextFunction (Gst.Iterator it, GLib.Value result);
3719         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
3720         public delegate void IteratorResyncFunction (Gst.Iterator it);
3721         [CCode (cheader_filename = "gst/gst.h", instance_pos = 7.9)]
3722         public delegate void LogFunction (Gst.DebugCategory category, Gst.DebugLevel level, string file, string function, int line, GLib.Object object, Gst.DebugMessage message);
3723         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
3724         public delegate Gst.Memory MemoryCopyFunction (Gst.Memory mem, ssize_t offset, ssize_t size);
3725         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
3726         public delegate bool MemoryIsSpanFunction (Gst.Memory mem1, Gst.Memory mem2, size_t offset);
3727         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
3728         public delegate void* MemoryMapFullFunction (Gst.Memory mem, Gst.MapInfo info, size_t maxsize);
3729         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
3730         public delegate void* MemoryMapFunction (Gst.Memory mem, size_t maxsize, Gst.MapFlags flags);
3731         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
3732         public delegate Gst.Memory MemoryShareFunction (Gst.Memory mem, ssize_t offset, ssize_t size);
3733         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
3734         public delegate void MemoryUnmapFullFunction (Gst.Memory mem, Gst.MapInfo info);
3735         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
3736         public delegate void MemoryUnmapFunction (Gst.Memory mem);
3737         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
3738         public delegate void MetaFreeFunction (Gst.Meta meta, Gst.Buffer buffer);
3739         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
3740         public delegate bool MetaInitFunction (Gst.Meta meta, void* @params, Gst.Buffer buffer);
3741         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
3742         public delegate bool MetaTransformFunction (Gst.Buffer transbuf, Gst.Meta meta, Gst.Buffer buffer, GLib.Quark type, void* data);
3743         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
3744         public delegate bool MiniObjectDisposeFunction (Gst.MiniObject obj);
3745         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
3746         public delegate void MiniObjectFreeFunction (Gst.MiniObject obj);
3747         [CCode (cheader_filename = "gst/gst.h", instance_pos = 0.9)]
3748         public delegate void MiniObjectNotify (Gst.MiniObject obj);
3749         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
3750         public delegate bool PadActivateFunction (Gst.Pad pad, Gst.Object parent);
3751         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
3752         public delegate bool PadActivateModeFunction (Gst.Pad pad, Gst.Object parent, Gst.PadMode mode, bool active);
3753         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
3754         public delegate Gst.FlowReturn PadChainFunction (Gst.Pad pad, Gst.Object? parent, owned Gst.Buffer buffer);
3755         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
3756         public delegate Gst.FlowReturn PadChainListFunction (Gst.Pad pad, Gst.Object? parent, owned Gst.BufferList list);
3757         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
3758         [Version (since = "1.8")]
3759         public delegate Gst.FlowReturn PadEventFullFunction (Gst.Pad pad, Gst.Object? parent, owned Gst.Event event);
3760         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
3761         public delegate bool PadEventFunction (Gst.Pad pad, Gst.Object? parent, owned Gst.Event event);
3762         [CCode (cheader_filename = "gst/gst.h", instance_pos = 1.9)]
3763         public delegate bool PadForwardFunction (Gst.Pad pad);
3764         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
3765         public delegate Gst.FlowReturn PadGetRangeFunction (Gst.Pad pad, Gst.Object? parent, uint64 offset, uint length, Gst.Buffer buffer);
3766         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
3767         public delegate Gst.Iterator PadIterIntLinkFunction (Gst.Pad pad, Gst.Object? parent);
3768         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
3769         public delegate Gst.PadLinkReturn PadLinkFunction (Gst.Pad pad, Gst.Object? parent, Gst.Pad peer);
3770         [CCode (cheader_filename = "gst/gst.h", instance_pos = 2.9)]
3771         public delegate Gst.PadProbeReturn PadProbeCallback (Gst.Pad pad, Gst.PadProbeInfo info);
3772         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
3773         public delegate bool PadQueryFunction (Gst.Pad pad, Gst.Object? parent, Gst.Query query);
3774         [CCode (cheader_filename = "gst/gst.h", instance_pos = 2.9)]
3775         public delegate bool PadStickyEventsForeachFunction (Gst.Pad pad, Gst.Event? event);
3776         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
3777         public delegate void PadUnlinkFunction (Gst.Pad pad, Gst.Object? parent);
3778         [CCode (cheader_filename = "gst/gst.h", instance_pos = 1.9)]
3779         public delegate bool PluginFeatureFilter (Gst.PluginFeature feature);
3780         [CCode (cheader_filename = "gst/gst.h", instance_pos = 1.9)]
3781         public delegate bool PluginFilter (Gst.Plugin plugin);
3782         [CCode (cheader_filename = "gst/gst.h", instance_pos = 1.9)]
3783         public delegate bool PluginInitFullFunc (Gst.Plugin plugin);
3784         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
3785         public delegate bool PluginInitFunc (Gst.Plugin plugin);
3786         [CCode (cheader_filename = "gst/gst.h", instance_pos = 2.9)]
3787         public delegate bool StructureFilterMapFunc (GLib.Quark field_id, GLib.Value value);
3788         [CCode (cheader_filename = "gst/gst.h", instance_pos = 2.9)]
3789         public delegate bool StructureForeachFunc (GLib.Quark field_id, GLib.Value value);
3790         [CCode (cheader_filename = "gst/gst.h", instance_pos = 2.9)]
3791         public delegate bool StructureMapFunc (GLib.Quark field_id, GLib.Value value);
3792         [CCode (cheader_filename = "gst/gst.h", instance_pos = 2.9)]
3793         public delegate void TagForeachFunc (Gst.TagList list, string tag);
3794         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
3795         public delegate void TagMergeFunc (GLib.Value dest, GLib.Value src);
3796         [CCode (cheader_filename = "gst/gst.h", instance_pos = 0.9)]
3797         public delegate void TaskFunction ();
3798         [CCode (cheader_filename = "gst/gst.h", instance_pos = 0.9)]
3799         public delegate void TaskPoolFunction ();
3800         [CCode (cheader_filename = "gst/gst.h", instance_pos = 2.9)]
3801         public delegate void TaskThreadFunc (Gst.Task task, GLib.Thread thread);
3802         [CCode (cheader_filename = "gst/gst.h", instance_pos = 1.9)]
3803         public delegate void TypeFindFunction (Gst.TypeFind find);
3804         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
3805         public delegate int ValueCompareFunc (GLib.Value value1, GLib.Value value2);
3806         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
3807         public delegate bool ValueDeserializeFunc (GLib.Value dest, string s);
3808         [CCode (cheader_filename = "gst/gst.h", has_target = false)]
3809         public delegate string ValueSerializeFunc (GLib.Value value1);
3810         [CCode (cheader_filename = "gst/gst.h", cname = "GST_ALLOCATOR_SYSMEM")]
3811         public const string ALLOCATOR_SYSMEM;
3812         [CCode (cheader_filename = "gst/gst.h", cname = "GST_BUFFER_COPY_ALL")]
3813         public const Gst.BufferCopyFlags BUFFER_COPY_ALL;
3814         [CCode (cheader_filename = "gst/gst.h", cname = "GST_BUFFER_COPY_METADATA")]
3815         public const Gst.BufferCopyFlags BUFFER_COPY_METADATA;
3816         [CCode (cheader_filename = "gst/gst.h", cname = "GST_BUFFER_OFFSET_NONE")]
3817         public const uint64 BUFFER_OFFSET_NONE;
3818         [CCode (cheader_filename = "gst/gst.h", cname = "GST_CAN_INLINE")]
3819         public const int CAN_INLINE;
3820         [CCode (cheader_filename = "gst/gst.h", cname = "GST_CAPS_FEATURE_MEMORY_SYSTEM_MEMORY")]
3821         public const string CAPS_FEATURE_MEMORY_SYSTEM_MEMORY;
3822         [CCode (cheader_filename = "gst/gst.h", cname = "GST_CLOCK_TIME_NONE")]
3823         public const Gst.ClockTime CLOCK_TIME_NONE;
3824         [CCode (cheader_filename = "gst/gst.h", cname = "GST_ELEMENT_METADATA_AUTHOR")]
3825         public const string ELEMENT_METADATA_AUTHOR;
3826         [CCode (cheader_filename = "gst/gst.h", cname = "GST_ELEMENT_METADATA_DESCRIPTION")]
3827         public const string ELEMENT_METADATA_DESCRIPTION;
3828         [CCode (cheader_filename = "gst/gst.h", cname = "GST_ELEMENT_METADATA_DOC_URI")]
3829         public const string ELEMENT_METADATA_DOC_URI;
3830         [CCode (cheader_filename = "gst/gst.h", cname = "GST_ELEMENT_METADATA_ICON_NAME")]
3831         public const string ELEMENT_METADATA_ICON_NAME;
3832         [CCode (cheader_filename = "gst/gst.h", cname = "GST_ELEMENT_METADATA_KLASS")]
3833         public const string ELEMENT_METADATA_KLASS;
3834         [CCode (cheader_filename = "gst/gst.h", cname = "GST_ELEMENT_METADATA_LONGNAME")]
3835         public const string ELEMENT_METADATA_LONGNAME;
3836         [CCode (cheader_filename = "gst/gst.h", cname = "GST_ERROR_SYSTEM")]
3837         public const string ERROR_SYSTEM;
3838         [CCode (cheader_filename = "gst/gst.h", cname = "GST_EVENT_NUM_SHIFT")]
3839         public const int EVENT_NUM_SHIFT;
3840         [CCode (cheader_filename = "gst/gst.h", cname = "GST_EVENT_TYPE_BOTH")]
3841         public const Gst.EventTypeFlags EVENT_TYPE_BOTH;
3842         [CCode (cheader_filename = "gst/gst.h", cname = "GST_FLAG_SET_MASK_EXACT")]
3843         [Version (since = "1.6")]
3844         public const uint FLAG_SET_MASK_EXACT;
3845         [CCode (cheader_filename = "gst/gst.h", cname = "GST_FORMAT_PERCENT_MAX")]
3846         public const int64 FORMAT_PERCENT_MAX;
3847         [CCode (cheader_filename = "gst/gst.h", cname = "GST_FORMAT_PERCENT_SCALE")]
3848         public const int64 FORMAT_PERCENT_SCALE;
3849         [CCode (cheader_filename = "gst/gst.h", cname = "GST_FOURCC_FORMAT")]
3850         public const string FOURCC_FORMAT;
3851         [CCode (cheader_filename = "gst/gst.h", cname = "GST_LICENSE_UNKNOWN")]
3852         public const string LICENSE_UNKNOWN;
3853         [CCode (cheader_filename = "gst/gst.h", cname = "GST_LOCK_FLAG_READWRITE")]
3854         public const Gst.LockFlags LOCK_FLAG_READWRITE;
3855         [CCode (cheader_filename = "gst/gst.h", cname = "GST_MAP_READWRITE")]
3856         public const Gst.MapFlags MAP_READWRITE;
3857         [CCode (cheader_filename = "gst/gst.h", cname = "GST_META_TAG_MEMORY_STR")]
3858         [Version (since = "1.2")]
3859         public const string META_TAG_MEMORY_STR;
3860         [CCode (cheader_filename = "gst/gst.h", cname = "GST_MSECOND")]
3861         public const Gst.ClockTimeDiff MSECOND;
3862         [CCode (cheader_filename = "gst/gst.h", cname = "GST_NSECOND")]
3863         public const Gst.ClockTimeDiff NSECOND;
3864         [CCode (cheader_filename = "gst/gst.h", cname = "GST_PARAM_CONTROLLABLE")]
3865         public const int PARAM_CONTROLLABLE;
3866         [CCode (cheader_filename = "gst/gst.h", cname = "GST_PARAM_MUTABLE_PAUSED")]
3867         public const int PARAM_MUTABLE_PAUSED;
3868         [CCode (cheader_filename = "gst/gst.h", cname = "GST_PARAM_MUTABLE_PLAYING")]
3869         public const int PARAM_MUTABLE_PLAYING;
3870         [CCode (cheader_filename = "gst/gst.h", cname = "GST_PARAM_MUTABLE_READY")]
3871         public const int PARAM_MUTABLE_READY;
3872         [CCode (cheader_filename = "gst/gst.h", cname = "GST_PARAM_USER_SHIFT")]
3873         public const int PARAM_USER_SHIFT;
3874         [CCode (cheader_filename = "gst/gst.h", cname = "GST_PROTECTION_SYSTEM_ID_CAPS_FIELD")]
3875         [Version (since = "1.6")]
3876         public const string PROTECTION_SYSTEM_ID_CAPS_FIELD;
3877         [CCode (cheader_filename = "gst/gst.h", cname = "GST_PTR_FORMAT")]
3878         public const string PTR_FORMAT;
3879         [CCode (cheader_filename = "gst/gst.h", cname = "GST_QUERY_NUM_SHIFT")]
3880         public const int QUERY_NUM_SHIFT;
3881         [CCode (cheader_filename = "gst/gst.h", cname = "GST_QUERY_TYPE_BOTH")]
3882         public const Gst.QueryTypeFlags QUERY_TYPE_BOTH;
3883         [CCode (cheader_filename = "gst/gst.h", cname = "GST_SECOND")]
3884         public const Gst.ClockTimeDiff SECOND;
3885         [CCode (cheader_filename = "gst/gst.h", cname = "GST_SEGMENT_FORMAT")]
3886         public const string SEGMENT_FORMAT;
3887         [CCode (cheader_filename = "gst/gst.h", cname = "GST_STIME_FORMAT")]
3888         [Version (since = "1.6")]
3889         public const string STIME_FORMAT;
3890         [CCode (cheader_filename = "gst/gst.h", cname = "GST_TIME_FORMAT")]
3891         public const string TIME_FORMAT;
3892         [CCode (cheader_filename = "gst/gst.h", cname = "GST_TOC_REPEAT_COUNT_INFINITE")]
3893         [Version (since = "1.4")]
3894         public const int TOC_REPEAT_COUNT_INFINITE;
3895         [CCode (cheader_filename = "gst/gst.h", cname = "GST_URI_NO_PORT")]
3896         public const int URI_NO_PORT;
3897         [CCode (cheader_filename = "gst/gst.h", cname = "GST_USECOND")]
3898         public const Gst.ClockTimeDiff USECOND;
3899         [CCode (cheader_filename = "gst/gst.h", cname = "GST_VALUE_EQUAL")]
3900         public const int VALUE_EQUAL;
3901         [CCode (cheader_filename = "gst/gst.h", cname = "GST_VALUE_GREATER_THAN")]
3902         public const int VALUE_GREATER_THAN;
3903         [CCode (cheader_filename = "gst/gst.h", cname = "GST_VALUE_LESS_THAN")]
3904         public const int VALUE_LESS_THAN;
3905         [CCode (cheader_filename = "gst/gst.h", cname = "GST_VALUE_UNORDERED")]
3906         public const int VALUE_UNORDERED;
3907         [CCode (cheader_filename = "gst/gst.h", cname = "GST_VERSION_MAJOR")]
3908         public const int VERSION_MAJOR;
3909         [CCode (cheader_filename = "gst/gst.h", cname = "GST_VERSION_MICRO")]
3910         public const int VERSION_MICRO;
3911         [CCode (cheader_filename = "gst/gst.h", cname = "GST_VERSION_MINOR")]
3912         public const int VERSION_MINOR;
3913         [CCode (cheader_filename = "gst/gst.h", cname = "GST_VERSION_NANO")]
3914         public const int VERSION_NANO;
3915         [CCode (cheader_filename = "gst/gst.h")]
3916         [Version (since = "1.12")]
3917         public static bool calculate_linear_regression (Gst.ClockTime xy, Gst.ClockTime temp, uint n, out Gst.ClockTime m_num, out Gst.ClockTime m_denom, out Gst.ClockTime b, out Gst.ClockTime xbase, out double r_squared);
3918         [CCode (cheader_filename = "gst/gst.h")]
3919         public static void deinit ();
3920         [CCode (cheader_filename = "gst/gst.h")]
3921         public static bool dynamic_type_register (Gst.Plugin plugin, GLib.Type type);
3922         [CCode (cheader_filename = "gst/gst.h")]
3923         public static string error_get_message (GLib.Quark domain, int code);
3924         [CCode (cheader_filename = "gst/gst.h")]
3925         public static string filename_to_uri (string filename) throws GLib.Error;
3926         [CCode (cheader_filename = "gst/gst.h")]
3927         public static GLib.Quark flow_to_quark (Gst.FlowReturn ret);
3928         [CCode (cheader_filename = "gst/gst.h")]
3929         public static void init ([CCode (array_length_cname = "argc", array_length_pos = 0.5)] ref unowned string[]? argv);
3930         [CCode (cheader_filename = "gst/gst.h")]
3931         public static bool init_check ([CCode (array_length_cname = "argc", array_length_pos = 0.5)] ref unowned string[]? argv) throws GLib.Error;
3932         [CCode (cheader_filename = "gst/gst.h")]
3933         public static GLib.OptionGroup init_get_option_group ();
3934         [CCode (cheader_filename = "gst/gst.h")]
3935         public static bool is_caps_features (void* obj);
3936         [CCode (cheader_filename = "gst/gst.h")]
3937         public static bool is_initialized ();
3938         [CCode (cheader_filename = "gst/gst.h")]
3939         public static GLib.ParamSpec param_spec_array (string name, string nick, string blurb, GLib.ParamSpec element_spec, GLib.ParamFlags flags);
3940         [CCode (cheader_filename = "gst/gst.h")]
3941         public static 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);
3942         [CCode (cheader_filename = "gst/gst.h", cname = "gst_parse_bin_from_description_full", returns_floating_reference = true)]
3943         public static Gst.Element parse_bin_from_description (string bin_description, bool ghost_unlinked_pads, Gst.ParseContext? context = null, Gst.ParseFlags flags = Gst.ParseFlags.NONE) throws GLib.Error;
3944         [CCode (cheader_filename = "gst/gst.h", cname = "gst_parse_launch_full", returns_floating_reference = true)]
3945         public static Gst.Element parse_launch (string pipeline_description, Gst.ParseContext? context = null, Gst.ParseFlags flags = Gst.ParseFlags.NONE) throws GLib.Error;
3946         [CCode (cheader_filename = "gst/gst.h", cname = "gst_parse_launchv_full", returns_floating_reference = true)]
3947         public static Gst.Element parse_launchv ([CCode (array_length = false, array_null_terminated = true)] string[] argv, Gst.ParseContext? context = null, Gst.ParseFlags flags = Gst.ParseFlags.NONE) throws GLib.Error;
3948         [CCode (cheader_filename = "gst/gst.h")]
3949         public static unowned string? preset_get_app_dir ();
3950         [CCode (cheader_filename = "gst/gst.h")]
3951         public static bool preset_set_app_dir (string app_dir);
3952         [CCode (cheader_filename = "gst/gst.h")]
3953         [Version (since = "1.6")]
3954         public static unowned string protection_select_system (string system_identifiers);
3955         [CCode (cheader_filename = "gst/gst.h")]
3956         public static bool segtrap_is_enabled ();
3957         [CCode (cheader_filename = "gst/gst.h")]
3958         public static void segtrap_set_enabled (bool enabled);
3959         [CCode (cheader_filename = "gst/gst.h")]
3960         public static bool update_registry ();
3961         [CCode (cheader_filename = "gst/gst.h")]
3962         public static void version (out uint major, out uint minor, out uint micro, out uint nano);
3963         [CCode (cheader_filename = "gst/gst.h")]
3964         public static string version_string ();