summaryrefslogtreecommitdiff
path: root/vapi/gstreamer-0.10.vapi
blob: a43c2d952d7651820faa294fdabe0a9aaf76540f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
1711
1712
1713
1714
1715
1716
1717
1718
1719
1720
1721
1722
1723
1724
1725
1726
1727
1728
1729
1730
1731
1732
1733
1734
1735
1736
1737
1738
1739
1740
1741
1742
1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
1813
1814
1815
1816
1817
1818
1819
1820
1821
1822
1823
1824
1825
1826
1827
1828
1829
1830
1831
1832
1833
1834
1835
1836
1837
1838
1839
1840
1841
1842
1843
1844
1845
1846
1847
1848
1849
1850
1851
1852
1853
1854
1855
1856
1857
1858
1859
1860
1861
1862
1863
1864
1865
1866
1867
1868
1869
1870
1871
1872
1873
1874
1875
1876
1877
1878
1879
1880
1881
1882
1883
1884
1885
1886
1887
1888
1889
1890
1891
1892
1893
1894
1895
1896
1897
1898
1899
1900
1901
1902
1903
1904
1905
1906
1907
1908
1909
1910
1911
1912
1913
1914
1915
1916
1917
1918
1919
1920
1921
1922
1923
1924
1925
1926
1927
1928
1929
1930
1931
1932
1933
1934
1935
1936
1937
1938
1939
1940
1941
1942
1943
1944
1945
1946
1947
1948
1949
1950
1951
1952
1953
1954
1955
1956
1957
1958
1959
1960
1961
1962
1963
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
1975
1976
1977
1978
1979
1980
1981
1982
1983
1984
1985
1986
1987
1988
1989
1990
1991
1992
1993
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
2027
2028
2029
2030
2031
2032
2033
2034
2035
2036
2037
2038
2039
2040
2041
2042
2043
2044
2045
2046
2047
2048
2049
2050
2051
2052
2053
2054
2055
2056
2057
2058
2059
2060
2061
2062
2063
2064
2065
2066
2067
2068
2069
2070
2071
2072
2073
2074
2075
2076
2077
2078
2079
2080
2081
2082
2083
2084
2085
2086
2087
2088
2089
2090
2091
2092
2093
2094
2095
2096
2097
2098
2099
2100
2101
2102
2103
2104
2105
2106
2107
2108
2109
2110
2111
2112
2113
2114
2115
2116
2117
2118
2119
2120
2121
2122
2123
2124
2125
2126
2127
2128
2129
2130
2131
2132
2133
2134
2135
2136
2137
2138
2139
2140
2141
2142
2143
2144
2145
2146
2147
2148
2149
2150
2151
2152
2153
2154
2155
2156
2157
2158
2159
2160
2161
2162
2163
2164
2165
2166
2167
2168
2169
2170
2171
2172
2173
2174
2175
2176
2177
2178
2179
2180
/* gstreamer-0.10.vapi generated by lt-vapigen, do not modify. */

[CCode (cprefix = "Gst", lower_case_cprefix = "gst_")]
namespace Gst {
	[CCode (cprefix = "GST_ACTIVATE_", cheader_filename = "gst/gst.h")]
	public enum ActivateMode {
		NONE,
		PUSH,
		PULL,
	}
	[CCode (cprefix = "GST_BASE_SRC_", cheader_filename = "gst/gst.h")]
	public enum BaseSrcFlags {
		STARTED,
		FLAG_LAST,
	}
	[CCode (cprefix = "GST_BUS_", cheader_filename = "gst/gst.h")]
	public enum BusSyncReply {
		DROP,
		PASS,
		ASYNC,
	}
	[CCode (cprefix = "GST_CLOCK_ENTRY_", cheader_filename = "gst/gst.h")]
	public enum ClockEntryType {
		SINGLE,
		PERIODIC,
	}
	[CCode (cprefix = "GST_CLOCK_", cheader_filename = "gst/gst.h")]
	public enum ClockReturn {
		OK,
		EARLY,
		UNSCHEDULED,
		BUSY,
		BADTIME,
		ERROR,
		UNSUPPORTED,
	}
	[CCode (cprefix = "GST_CORE_ERROR_", cheader_filename = "gst/gst.h")]
	public enum CoreError {
		FAILED,
		TOO_LAZY,
		NOT_IMPLEMENTED,
		STATE_CHANGE,
		PAD,
		THREAD,
		NEGOTIATION,
		EVENT,
		SEEK,
		CAPS,
		TAG,
		MISSING_PLUGIN,
		CLOCK,
		DISABLED,
		NUM_ERRORS,
	}
	[CCode (cprefix = "GST_DEBUG_", cheader_filename = "gst/gst.h")]
	public enum DebugColorFlags {
		FG_BLACK,
		FG_RED,
		FG_GREEN,
		FG_YELLOW,
		FG_BLUE,
		FG_MAGENTA,
		FG_CYAN,
		FG_WHITE,
		BG_BLACK,
		BG_RED,
		BG_GREEN,
		BG_YELLOW,
		BG_BLUE,
		BG_MAGENTA,
		BG_CYAN,
		BG_WHITE,
		BOLD,
		UNDERLINE,
	}
	[CCode (cprefix = "GST_LEVEL_", cheader_filename = "gst/gst.h")]
	public enum DebugLevel {
		NONE,
		ERROR,
		WARNING,
		INFO,
		DEBUG,
		LOG,
		COUNT,
	}
	[CCode (cprefix = "GST_EVENT_", cheader_filename = "gst/gst.h")]
	public enum EventType {
		UNKNOWN,
		FLUSH_START,
		FLUSH_STOP,
		EOS,
		NEWSEGMENT,
		TAG,
		BUFFERSIZE,
		QOS,
		SEEK,
		NAVIGATION,
		LATENCY,
		CUSTOM_UPSTREAM,
		CUSTOM_DOWNSTREAM,
		CUSTOM_DOWNSTREAM_OOB,
		CUSTOM_BOTH,
		CUSTOM_BOTH_OOB,
	}
	[CCode (cprefix = "GST_FLOW_", cheader_filename = "gst/gst.h")]
	public enum FlowReturn {
		CUSTOM_SUCCESS,
		RESEND,
		OK,
		NOT_LINKED,
		WRONG_STATE,
		UNEXPECTED,
		NOT_NEGOTIATED,
		ERROR,
		NOT_SUPPORTED,
		CUSTOM_ERROR,
	}
	[CCode (cprefix = "GST_FORMAT_", cheader_filename = "gst/gst.h")]
	public enum Format {
		UNDEFINED,
		DEFAULT,
		BYTES,
		TIME,
		BUFFERS,
		PERCENT,
	}
	[CCode (cprefix = "GST_INDEX_", cheader_filename = "gst/gst.h")]
	public enum IndexCertainty {
		UNKNOWN,
		CERTAIN,
		FUZZY,
	}
	[CCode (cprefix = "GST_INDEX_ENTRY_", cheader_filename = "gst/gst.h")]
	public enum IndexEntryType {
		ID,
		ASSOCIATION,
		OBJECT,
		FORMAT,
	}
	[CCode (cprefix = "GST_INDEX_LOOKUP_", cheader_filename = "gst/gst.h")]
	public enum IndexLookupMethod {
		EXACT,
		BEFORE,
		AFTER,
	}
	[CCode (cprefix = "GST_INDEX_RESOLVER_", cheader_filename = "gst/gst.h")]
	public enum IndexResolverMethod {
		CUSTOM,
		GTYPE,
		PATH,
	}
	[CCode (cprefix = "GST_ITERATOR_ITEM_", cheader_filename = "gst/gst.h")]
	public enum IteratorItem {
		SKIP,
		PASS,
		END,
	}
	[CCode (cprefix = "GST_ITERATOR_", cheader_filename = "gst/gst.h")]
	public enum IteratorResult {
		DONE,
		OK,
		RESYNC,
		ERROR,
	}
	[CCode (cprefix = "GST_LIBRARY_ERROR_", cheader_filename = "gst/gst.h")]
	public enum LibraryError {
		FAILED,
		TOO_LAZY,
		INIT,
		SHUTDOWN,
		SETTINGS,
		ENCODE,
		NUM_ERRORS,
	}
	[CCode (cprefix = "GST_PAD_", cheader_filename = "gst/gst.h")]
	public enum PadDirection {
		UNKNOWN,
		SRC,
		SINK,
	}
	[CCode (cprefix = "GST_PAD_LINK_", cheader_filename = "gst/gst.h")]
	public enum PadLinkReturn {
		OK,
		WRONG_HIERARCHY,
		WAS_LINKED,
		WRONG_DIRECTION,
		NOFORMAT,
		NOSCHED,
		REFUSED,
	}
	[CCode (cprefix = "GST_PAD_", cheader_filename = "gst/gst.h")]
	public enum PadPresence {
		ALWAYS,
		SOMETIMES,
		REQUEST,
	}
	[CCode (cprefix = "GST_PARSE_ERROR_", cheader_filename = "gst/gst.h")]
	public enum ParseError {
		SYNTAX,
		NO_SUCH_ELEMENT,
		NO_SUCH_PROPERTY,
		LINK,
		COULD_NOT_SET_PROPERTY,
		EMPTY_BIN,
		EMPTY,
	}
	[CCode (cprefix = "GST_PLUGIN_ERROR_", cheader_filename = "gst/gst.h")]
	public enum PluginError {
		MODULE,
		DEPENDENCIES,
		NAME_MISMATCH,
	}
	[CCode (cprefix = "GST_QUERY_", cheader_filename = "gst/gst.h")]
	public enum QueryType {
		NONE,
		POSITION,
		DURATION,
		LATENCY,
		JITTER,
		RATE,
		SEEKING,
		SEGMENT,
		CONVERT,
		FORMATS,
	}
	[CCode (cprefix = "GST_RANK_", cheader_filename = "gst/gst.h")]
	public enum Rank {
		NONE,
		MARGINAL,
		SECONDARY,
		PRIMARY,
	}
	[CCode (cprefix = "GST_RESOURCE_ERROR_", cheader_filename = "gst/gst.h")]
	public enum ResourceError {
		FAILED,
		TOO_LAZY,
		NOT_FOUND,
		BUSY,
		OPEN_READ,
		OPEN_WRITE,
		OPEN_READ_WRITE,
		CLOSE,
		READ,
		WRITE,
		SEEK,
		SYNC,
		SETTINGS,
		NO_SPACE_LEFT,
		NUM_ERRORS,
	}
	[CCode (cprefix = "GST_SEEK_TYPE_", cheader_filename = "gst/gst.h")]
	public enum SeekType {
		NONE,
		CUR,
		SET,
		END,
	}
	[CCode (cprefix = "GST_STATE_", cheader_filename = "gst/gst.h")]
	public enum State {
		VOID_PENDING,
		NULL,
		READY,
		PAUSED,
		PLAYING,
	}
	[CCode (cprefix = "GST_STATE_CHANGE_", cheader_filename = "gst/gst.h")]
	public enum StateChange {
		NULL_TO_READY,
		READY_TO_PAUSED,
		PAUSED_TO_PLAYING,
		PLAYING_TO_PAUSED,
		PAUSED_TO_READY,
		READY_TO_NULL,
	}
	[CCode (cprefix = "GST_STATE_CHANGE_", cheader_filename = "gst/gst.h")]
	public enum StateChangeReturn {
		FAILURE,
		SUCCESS,
		ASYNC,
		NO_PREROLL,
	}
	[CCode (cprefix = "GST_STREAM_ERROR_", cheader_filename = "gst/gst.h")]
	public enum StreamError {
		FAILED,
		TOO_LAZY,
		NOT_IMPLEMENTED,
		TYPE_NOT_FOUND,
		WRONG_TYPE,
		CODEC_NOT_FOUND,
		DECODE,
		ENCODE,
		DEMUX,
		MUX,
		FORMAT,
		NUM_ERRORS,
	}
	[CCode (cprefix = "GST_TAG_FLAG_", cheader_filename = "gst/gst.h")]
	public enum TagFlag {
		UNDEFINED,
		META,
		ENCODED,
		DECODED,
		COUNT,
	}
	[CCode (cprefix = "GST_TAG_MERGE_", cheader_filename = "gst/gst.h")]
	public enum TagMergeMode {
		UNDEFINED,
		REPLACE_ALL,
		REPLACE,
		APPEND,
		PREPEND,
		KEEP,
		KEEP_ALL,
		COUNT,
	}
	[CCode (cprefix = "GST_TASK_", cheader_filename = "gst/gst.h")]
	public enum TaskState {
		STARTED,
		STOPPED,
		PAUSED,
	}
	[CCode (cprefix = "GST_TYPE_FIND_", cheader_filename = "gst/gst.h")]
	public enum TypeFindProbability {
		MINIMUM,
		POSSIBLE,
		LIKELY,
		NEARLY_CERTAIN,
		MAXIMUM,
	}
	[CCode (cprefix = "GST_URI_", cheader_filename = "gst/gst.h")]
	public enum URIType {
		UNKNOWN,
		SINK,
		SRC,
	}
	[CCode (cprefix = "GST_ALLOC_TRACE_", cheader_filename = "gst/gst.h")]
	[Flags]
	public enum AllocTraceFlags {
		LIVE,
		MEM_LIVE,
	}
	[CCode (cprefix = "GST_ASSOCIATION_FLAG_", cheader_filename = "gst/gst.h")]
	[Flags]
	public enum AssocFlags {
		NONE,
		KEY_UNIT,
		DELTA_UNIT,
		LAST,
	}
	[CCode (cprefix = "GST_BIN_FLAG_", cheader_filename = "gst/gst.h")]
	[Flags]
	public enum BinFlags {
		LAST,
	}
	[CCode (cprefix = "GST_BUFFER_COPY_", cheader_filename = "gst/gst.h")]
	[Flags]
	public enum BufferCopyFlags {
		FLAGS,
		TIMESTAMPS,
		CAPS,
	}
	[CCode (cprefix = "GST_BUFFER_FLAG_", cheader_filename = "gst/gst.h")]
	[Flags]
	public enum BufferFlag {
		READONLY,
		PREROLL,
		DISCONT,
		IN_CAPS,
		GAP,
		DELTA_UNIT,
		LAST,
	}
	[CCode (cprefix = "GST_BUS_", cheader_filename = "gst/gst.h")]
	[Flags]
	public enum BusFlags {
		FLUSHING,
		FLAG_LAST,
	}
	[CCode (cprefix = "GST_CAPS_FLAGS_", cheader_filename = "gst/gst.h")]
	[Flags]
	public enum CapsFlags {
		ANY,
	}
	[CCode (cprefix = "GST_CLOCK_FLAG_", cheader_filename = "gst/gst.h")]
	[Flags]
	public enum ClockFlags {
		CAN_DO_SINGLE_SYNC,
		CAN_DO_SINGLE_ASYNC,
		CAN_DO_PERIODIC_SYNC,
		CAN_DO_PERIODIC_ASYNC,
		CAN_SET_RESOLUTION,
		CAN_SET_MASTER,
		LAST,
	}
	[CCode (cprefix = "GST_DEBUG_GRAPH_SHOW_", cheader_filename = "gst/gst.h")]
	[Flags]
	public enum DebugGraphDetails {
		MEDIA_TYPE,
		CAPS_DETAILS,
		NON_DEFAULT_PARAMS,
		STATES,
		ALL,
	}
	[CCode (cprefix = "GST_ELEMENT_", cheader_filename = "gst/gst.h")]
	[Flags]
	public enum ElementFlags {
		LOCKED_STATE,
		IS_SINK,
		UNPARENTING,
		FLAG_LAST,
	}
	[CCode (cprefix = "GST_EVENT_TYPE_", cheader_filename = "gst/gst.h")]
	[Flags]
	public enum EventTypeFlags {
		UPSTREAM,
		DOWNSTREAM,
		SERIALIZED,
	}
	[CCode (cprefix = "GST_INDEX_", cheader_filename = "gst/gst.h")]
	[Flags]
	public enum IndexFlags {
		WRITABLE,
		READABLE,
		FLAG_LAST,
	}
	[CCode (cprefix = "GST_MESSAGE_", cheader_filename = "gst/gst.h")]
	[Flags]
	public enum MessageType {
		UNKNOWN,
		EOS,
		ERROR,
		WARNING,
		INFO,
		TAG,
		BUFFERING,
		STATE_CHANGED,
		STATE_DIRTY,
		STEP_DONE,
		CLOCK_PROVIDE,
		CLOCK_LOST,
		NEW_CLOCK,
		STRUCTURE_CHANGE,
		STREAM_STATUS,
		APPLICATION,
		ELEMENT,
		SEGMENT_START,
		SEGMENT_DONE,
		DURATION,
		LATENCY,
		ASYNC_START,
		ASYNC_DONE,
		ANY,
	}
	[CCode (cprefix = "GST_MINI_OBJECT_FLAG_", cheader_filename = "gst/gst.h")]
	[Flags]
	public enum MiniObjectFlags {
		READONLY,
		LAST,
	}
	[CCode (cprefix = "GST_OBJECT_", cheader_filename = "gst/gst.h")]
	[Flags]
	public enum ObjectFlags {
		DISPOSING,
		FLOATING,
		FLAG_LAST,
	}
	[CCode (cprefix = "GST_PAD_", cheader_filename = "gst/gst.h")]
	[Flags]
	public enum PadFlags {
		BLOCKED,
		FLUSHING,
		IN_GETCAPS,
		IN_SETCAPS,
		BLOCKING,
		FLAG_LAST,
	}
	[CCode (cprefix = "GST_PAD_TEMPLATE_", cheader_filename = "gst/gst.h")]
	[Flags]
	public enum PadTemplateFlags {
		FIXED,
		FLAG_LAST,
	}
	[CCode (cprefix = "GST_PIPELINE_FLAG_", cheader_filename = "gst/gst.h")]
	[Flags]
	public enum PipelineFlags {
		FIXED_CLOCK,
		LAST,
	}
	[CCode (cprefix = "GST_PLUGIN_FLAG_", cheader_filename = "gst/gst.h")]
	[Flags]
	public enum PluginFlags {
		CACHED,
	}
	[CCode (cprefix = "GST_SEEK_FLAG_", cheader_filename = "gst/gst.h")]
	[Flags]
	public enum SeekFlags {
		NONE,
		FLUSH,
		ACCURATE,
		KEY_UNIT,
		SEGMENT,
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class AllocTrace {
		public weak string name;
		public int flags;
		public int live;
		public weak GLib.SList mem_live;
		public static bool available ();
		public static weak Gst.AllocTrace get (string name);
		public static weak GLib.List list ();
		public static int live_all ();
		public void print ();
		public static void print_all ();
		public static void print_live ();
		public void set_flags (Gst.AllocTraceFlags flags);
		public static void set_flags_all (Gst.AllocTraceFlags flags);
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class Buffer {
		public weak Gst.MiniObject mini_object;
		public uchar data;
		public uint size;
		public weak Gst.ClockTime timestamp;
		public weak Gst.ClockTime duration;
		public weak Gst.Caps caps;
		public uint64 offset;
		public uint64 offset_end;
		public uchar malloc_data;
		public weak pointer[] _gst_reserved;
		public void copy_metadata (Gst.Buffer src, Gst.BufferCopyFlags flags);
		public weak Gst.Buffer create_sub (uint offset, uint size);
		public weak Gst.Caps get_caps ();
		public bool is_metadata_writable ();
		public bool is_span_fast (Gst.Buffer buf2);
		public weak Gst.Buffer join (Gst.Buffer buf2);
		public weak Gst.Buffer make_metadata_writable ();
		public weak Gst.Buffer merge (Gst.Buffer buf2);
		public Buffer ();
		public Buffer.and_alloc (uint size);
		public void set_caps (Gst.Caps caps);
		public weak Gst.Buffer span (uint offset, Gst.Buffer buf2, uint len);
		public void stamp (Gst.Buffer src);
		public static weak Gst.Buffer try_new_and_alloc (uint size);
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class BufferClass {
		public weak Gst.MiniObjectClass mini_object_class;
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class ClockEntry {
		public int refcount;
		public weak Gst.Clock clock;
		public Gst.ClockEntryType type;
		public weak Gst.ClockTime time;
		public weak Gst.ClockTime interval;
		public Gst.ClockReturn status;
		public Gst.ClockCallback func;
		public pointer user_data;
	}
	[CCode (ref_function = "gst_clock_id_ref", unref_function = "gst_clock_id_unref", cheader_filename = "gst/gst.h")]
	public class ClockID {
		public static int compare_func (pointer id1, pointer id2);
		public weak Gst.ClockTime get_time ();
		public void unschedule ();
		public Gst.ClockReturn wait (Gst.ClockTimeDiff jitter);
		public Gst.ClockReturn wait_async (Gst.ClockCallback func, pointer user_data);
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class ClockTime {
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class ClockTimeDiff {
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class CollectData {
		public weak Gst.CollectPads collect;
		public weak Gst.Pad pad;
		public weak Gst.Buffer buffer;
		public uint pos;
		public weak Gst.Segment segment;
		public pointer abidata;
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class DataQueueItem {
		public weak Gst.MiniObject object;
		public uint size;
		public uint64 duration;
		public bool visible;
		public GLib.DestroyNotify destroy;
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class DataQueueSize {
		public uint visible;
		public uint bytes;
		public uint64 time;
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class DebugCategory {
		public int threshold;
		public uint color;
		public weak string name;
		public weak string description;
		public uint get_color ();
		public weak string get_description ();
		public weak string get_name ();
		public Gst.DebugLevel get_threshold ();
		public void reset_threshold ();
		public void set_threshold (Gst.DebugLevel level);
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class DebugMessage {
		public weak string get ();
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class ElementDetails {
		public weak string longname;
		public weak string klass;
		public weak string description;
		public weak string author;
		public weak pointer[] _gst_reserved;
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class Event {
		public weak Gst.MiniObject mini_object;
		public Gst.EventType type;
		public uint64 timestamp;
		public weak Gst.Object src;
		public weak Gst.Structure structure;
		public pointer _gst_reserved;
		public weak Gst.Structure get_structure ();
		public Event.buffer_size (Gst.Format format, int64 minsize, int64 maxsize, bool async);
		public Event.custom (Gst.EventType type, Gst.Structure structure);
		public Event.eos ();
		public Event.flush_start ();
		public Event.flush_stop ();
		public Event.latency (Gst.ClockTime latency);
		public Event.navigation (Gst.Structure structure);
		public Event.new_segment (bool update, double rate, Gst.Format format, int64 start, int64 stop, int64 position);
		public Event.new_segment_full (bool update, double rate, double applied_rate, Gst.Format format, int64 start, int64 stop, int64 position);
		public Event.qos (double proportion, Gst.ClockTimeDiff diff, Gst.ClockTime timestamp);
		public Event.seek (double rate, Gst.Format format, Gst.SeekFlags flags, Gst.SeekType start_type, int64 start, Gst.SeekType stop_type, int64 stop);
		public Event.tag (Gst.TagList taglist);
		public void parse_buffer_size (Gst.Format format, int64 minsize, int64 maxsize, bool async);
		public void parse_latency (Gst.ClockTime latency);
		public void parse_new_segment (bool update, double rate, Gst.Format format, int64 start, int64 stop, int64 position);
		public void parse_new_segment_full (bool update, double rate, double applied_rate, Gst.Format format, int64 start, int64 stop, int64 position);
		public void parse_qos (double proportion, Gst.ClockTimeDiff diff, Gst.ClockTime timestamp);
		public void parse_seek (double rate, Gst.Format format, Gst.SeekFlags flags, Gst.SeekType start_type, int64 start, Gst.SeekType stop_type, int64 stop);
		public void parse_tag (out weak Gst.TagList taglist);
		public static Gst.EventTypeFlags type_get_flags (Gst.EventType type);
		public static weak string type_get_name (Gst.EventType type);
		public static GLib.Quark type_to_quark (Gst.EventType type);
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class EventClass {
		public weak Gst.MiniObjectClass mini_object_class;
		public weak pointer[] _gst_reserved;
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class FormatDefinition {
		public Gst.Format value;
		public weak string nick;
		public weak string description;
		public GLib.Quark quark;
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class IndexAssociation {
		public Gst.Format format;
		public int64 value;
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class IndexGroup {
		public int groupnum;
		public weak GLib.List entries;
		public Gst.IndexCertainty certainty;
		public int peergroup;
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class Iterator {
		public Gst.IteratorNextFunction next;
		public Gst.IteratorItemFunction item;
		public Gst.IteratorResyncFunction resync;
		public Gst.IteratorFreeFunction free;
		public weak Gst.Iterator pushed;
		public GLib.Type type;
		public weak GLib.Mutex @lock;
		public uint cookie;
		public uint master_cookie;
		public weak pointer[] _gst_reserved;
		public weak Gst.Iterator filter (GLib.CompareFunc func, pointer user_data);
		public pointer find_custom (GLib.CompareFunc func, pointer user_data);
		public Gst.IteratorResult fold (Gst.IteratorFoldFunction func, GLib.Value ret, pointer user_data);
		public Gst.IteratorResult @foreach (GLib.Func func, pointer user_data);
		public Iterator (uint size, GLib.Type type, GLib.Mutex @lock, uint master_cookie, Gst.IteratorNextFunction next, Gst.IteratorItemFunction item, Gst.IteratorResyncFunction resync, Gst.IteratorFreeFunction free);
		public Iterator.list (GLib.Type type, GLib.Mutex @lock, uint master_cookie, GLib.List list, pointer owner, Gst.IteratorItemFunction item, Gst.IteratorDisposeFunction free);
		public void push (Gst.Iterator other);
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class Message {
		public weak Gst.MiniObject mini_object;
		public weak GLib.Mutex @lock;
		public weak GLib.Cond cond;
		public Gst.MessageType type;
		public uint64 timestamp;
		public weak Gst.Object src;
		public weak Gst.Structure structure;
		public weak pointer[] _gst_reserved;
		public weak Gst.Structure get_structure ();
		public Message.application (Gst.Object src, Gst.Structure structure);
		public Message.async_done (Gst.Object src);
		public Message.async_start (Gst.Object src, bool new_base_time);
		public Message.buffering (Gst.Object src, int percent);
		public Message.clock_lost (Gst.Object src, Gst.Clock clock);
		public Message.clock_provide (Gst.Object src, Gst.Clock clock, bool ready);
		public Message.custom (Gst.MessageType type, Gst.Object src, Gst.Structure structure);
		public Message.duration (Gst.Object src, Gst.Format format, int64 duration);
		public Message.element (Gst.Object src, Gst.Structure structure);
		public Message.eos (Gst.Object src);
		public Message.error (Gst.Object src, GLib.Error error, string debug);
		public Message.info (Gst.Object src, GLib.Error error, string debug);
		public Message.latency (Gst.Object src);
		public Message.new_clock (Gst.Object src, Gst.Clock clock);
		public Message.segment_done (Gst.Object src, Gst.Format format, int64 position);
		public Message.segment_start (Gst.Object src, Gst.Format format, int64 position);
		public Message.state_changed (Gst.Object src, Gst.State oldstate, Gst.State newstate, Gst.State pending);
		public Message.state_dirty (Gst.Object src);
		public Message.tag (Gst.Object src, Gst.TagList tag_list);
		public Message.warning (Gst.Object src, GLib.Error error, string debug);
		public void parse_async_start (bool new_base_time);
		public void parse_buffering (int percent);
		public void parse_clock_lost (out weak Gst.Clock clock);
		public void parse_clock_provide (out weak Gst.Clock clock, bool ready);
		public void parse_duration (Gst.Format format, int64 duration);
		public void parse_error (out weak GLib.Error gerror, out weak string debug);
		public void parse_info (out weak GLib.Error gerror, out weak string debug);
		public void parse_new_clock (out weak Gst.Clock clock);
		public void parse_segment_done (Gst.Format format, int64 position);
		public void parse_segment_start (Gst.Format format, int64 position);
		public void parse_state_changed (out Gst.State oldstate, out Gst.State newstate, out Gst.State pending);
		public void parse_tag (out weak Gst.TagList tag_list);
		public void parse_warning (out weak GLib.Error gerror, out weak string debug);
		public static weak string type_get_name (Gst.MessageType type);
		public static GLib.Quark type_to_quark (Gst.MessageType type);
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class MessageClass {
		public weak Gst.MiniObjectClass mini_object_class;
		public weak pointer[] _gst_reserved;
	}
	[CCode (ref_function = "gst_mini_object_ref", unref_function = "gst_mini_object_unref", cheader_filename = "gst/gst.h")]
	public class MiniObject {
		public weak GLib.TypeInstance instance;
		public int refcount;
		public uint flags;
		public pointer _gst_reserved;
		public weak Gst.MiniObject copy ();
		public bool is_writable ();
		public weak Gst.MiniObject make_writable ();
		public MiniObject (GLib.Type type);
		public void replace (Gst.MiniObject newdata);
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class MiniObjectClass {
		public weak GLib.TypeClass type_class;
		public Gst.MiniObjectCopyFunction copy;
		public Gst.MiniObjectFinalizeFunction finalize;
		public pointer _gst_reserved;
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class ParamSpecFraction {
		public weak GLib.ParamSpec parent_instance;
		public int min_num;
		public int min_den;
		public int max_num;
		public int max_den;
		public int def_num;
		public int def_den;
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class PluginDesc {
		public int major_version;
		public int minor_version;
		public weak string name;
		public weak string description;
		public Gst.PluginInitFunc plugin_init;
		public weak string version;
		public weak string license;
		public weak string source;
		public weak string package;
		public weak string origin;
		public weak pointer[] _gst_reserved;
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class Query {
		public weak Gst.MiniObject mini_object;
		public Gst.QueryType type;
		public weak Gst.Structure structure;
		public pointer _gst_reserved;
		public weak Gst.Structure get_structure ();
		public Query.application (Gst.QueryType type, Gst.Structure structure);
		public Query.convert (Gst.Format src_format, int64 value, Gst.Format dest_format);
		public Query.duration (Gst.Format format);
		public Query.formats ();
		public Query.latency ();
		public Query.position (Gst.Format format);
		public Query.seeking (Gst.Format format);
		public Query.segment (Gst.Format format);
		public void parse_convert (Gst.Format src_format, int64 src_value, Gst.Format dest_format, int64 dest_value);
		public void parse_duration (Gst.Format format, int64 duration);
		public void parse_formats_length (uint n_formats);
		public void parse_formats_nth (uint nth, Gst.Format format);
		public void parse_latency (bool live, Gst.ClockTime min_latency, Gst.ClockTime max_latency);
		public void parse_position (Gst.Format format, int64 cur);
		public void parse_seeking (Gst.Format format, bool seekable, int64 segment_start, int64 segment_end);
		public void parse_segment (double rate, Gst.Format format, int64 start_value, int64 stop_value);
		public void set_convert (Gst.Format src_format, int64 src_value, Gst.Format dest_format, int64 dest_value);
		public void set_duration (Gst.Format format, int64 duration);
		public void set_formats (int n_formats);
		public void set_formatsv (int n_formats, Gst.Format formats);
		public void set_latency (bool live, Gst.ClockTime min_latency, Gst.ClockTime max_latency);
		public void set_position (Gst.Format format, int64 cur);
		public void set_seeking (Gst.Format format, bool seekable, int64 segment_start, int64 segment_end);
		public void set_segment (double rate, Gst.Format format, int64 start_value, int64 stop_value);
		public static Gst.QueryType type_get_by_nick (string nick);
		public static weak Gst.QueryTypeDefinition type_get_details (Gst.QueryType type);
		public static weak string type_get_name (Gst.QueryType query);
		public static weak Gst.Iterator type_iterate_definitions ();
		public static Gst.QueryType type_register (string nick, string description);
		public static GLib.Quark type_to_quark (Gst.QueryType query);
		public static bool types_contains (Gst.QueryType types, Gst.QueryType type);
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class QueryClass {
		public weak Gst.MiniObjectClass mini_object_class;
		public weak pointer[] _gst_reserved;
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class QueryTypeDefinition {
		public Gst.QueryType value;
		public weak string nick;
		public weak string description;
		public GLib.Quark quark;
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class StaticCaps {
		public weak Gst.Caps caps;
		public weak string string;
		public weak pointer[] _gst_reserved;
		public weak Gst.Caps get ();
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class StaticPadTemplate {
		public weak string name_template;
		public Gst.PadDirection direction;
		public Gst.PadPresence presence;
		public weak Gst.StaticCaps static_caps;
		public weak Gst.PadTemplate get ();
		public weak Gst.Caps get_caps ();
	}
	[CCode (copy_function = "gst_tag_list_copy", cheader_filename = "gst/gst.h")]
	public class TagList : GLib.Boxed {
		public void add (Gst.TagMergeMode mode, string tag);
		public void add_valist (Gst.TagMergeMode mode, string tag, pointer var_args);
		public void add_valist_values (Gst.TagMergeMode mode, string tag, pointer var_args);
		public void add_values (Gst.TagMergeMode mode, string tag);
		public weak Gst.TagList copy ();
		public static bool copy_value (GLib.Value dest, Gst.TagList list, string tag);
		public void @foreach (Gst.TagForeachFunc func, pointer user_data);
		public bool get_boolean (string tag, bool value);
		public bool get_boolean_index (string tag, uint index, bool value);
		public bool get_char (string tag, string value);
		public bool get_char_index (string tag, uint index, string value);
		public bool get_date (string tag, out weak GLib.Date value);
		public bool get_date_index (string tag, uint index, out weak GLib.Date value);
		public bool get_double (string tag, double value);
		public bool get_double_index (string tag, uint index, double value);
		public bool get_float (string tag, float value);
		public bool get_float_index (string tag, uint index, float value);
		public bool get_int (string tag, int value);
		public bool get_int64 (string tag, int64 value);
		public bool get_int64_index (string tag, uint index, int64 value);
		public bool get_int_index (string tag, uint index, int value);
		public bool get_long (string tag, long value);
		public bool get_long_index (string tag, uint index, long value);
		public bool get_pointer (string tag, pointer value);
		public bool get_pointer_index (string tag, uint index, pointer value);
		public bool get_string (string tag, string value);
		public bool get_string_index (string tag, uint index, string value);
		public uint get_tag_size (string tag);
		[NoArrayLength]
		public bool get_uchar (string tag, uchar[] value);
		[NoArrayLength]
		public bool get_uchar_index (string tag, uint index, uchar[] value);
		public bool get_uint (string tag, uint value);
		public bool get_uint64 (string tag, uint64 value);
		public bool get_uint64_index (string tag, uint index, uint64 value);
		public bool get_uint_index (string tag, uint index, uint value);
		public bool get_ulong (string tag, ulong value);
		public bool get_ulong_index (string tag, uint index, ulong value);
		public weak GLib.Value get_value_index (string tag, uint index);
		public void insert (Gst.TagList from, Gst.TagMergeMode mode);
		public bool is_empty ();
		public weak Gst.TagList merge (Gst.TagList list2, Gst.TagMergeMode mode);
		public TagList ();
		public void remove_tag (string tag);
	}
	[CCode (free_function = "gst_trace_destroy", cheader_filename = "gst/gst.h")]
	public class Trace {
		public weak string filename;
		public int fd;
		public weak Gst.TraceEntry buf;
		public int bufsize;
		public int bufoffset;
		public void flush ();
		public Trace (string filename, int size);
		public static void read_tsc (int64 dst);
		public void set_default ();
		public void text_flush ();
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class TraceEntry {
		public int64 timestamp;
		public uint sequence;
		public uint data;
		public weak char[] message;
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class TypeFind {
		public pointer data;
		public weak pointer[] _gst_reserved;
		[CCode (cname = "gst_type_find_get_length")]
		public uint64 get_length ();
		[CCode (cname = "gst_type_find_helper")]
		public static weak Gst.Caps helper (Gst.Pad src, uint64 size);
		[CCode (cname = "gst_type_find_helper_for_buffer")]
		public static weak Gst.Caps helper_for_buffer (Gst.Object obj, Gst.Buffer buf, Gst.TypeFindProbability prob);
		[CCode (cname = "gst_type_find_helper_get_range")]
		public static weak Gst.Caps helper_get_range (Gst.Object obj, Gst.TypeFindHelperGetRangeFunction func, uint64 size, Gst.TypeFindProbability prob);
		[CCode (cname = "gst_type_find_peek")]
		public uchar peek (int64 offset, uint size);
		[CCode (cname = "gst_type_find_register")]
		public static bool register (Gst.Plugin plugin, string name, uint rank, Gst.TypeFindFunction func, string extensions, Gst.Caps possible_caps, pointer data, GLib.DestroyNotify data_notify);
		[CCode (cname = "gst_type_find_suggest")]
		public void suggest (uint probability, Gst.Caps caps);
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class TypeNameData {
		public weak string name;
		public GLib.Type type;
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class ValueTable {
		public GLib.Type type;
		public Gst.ValueCompareFunc compare;
		public Gst.ValueSerializeFunc serialize;
		public Gst.ValueDeserializeFunc deserialize;
		public weak pointer[] _gst_reserved;
	}
	[CCode (ref_function = "gst_caps_ref", unref_function = "gst_caps_unref", cheader_filename = "gst/gst.h")]
	public class Caps : GLib.Boxed {
		public GLib.Type type;
		public int refcount;
		public Gst.CapsFlags flags;
		public weak GLib.PtrArray structs;
		public weak pointer[] _gst_reserved;
		public void append (Gst.Caps caps2);
		public void append_structure (Gst.Structure structure);
		public weak Gst.Caps copy ();
		public weak Gst.Caps copy_nth (uint nth);
		public bool do_simplify ();
		public static weak Gst.Caps from_string (string string);
		public uint get_size ();
		public weak Gst.Structure get_structure (uint index);
		public weak Gst.Caps intersect (Gst.Caps caps2);
		public bool is_always_compatible (Gst.Caps caps2);
		public bool is_any ();
		public bool is_empty ();
		public bool is_equal (Gst.Caps caps2);
		public bool is_equal_fixed (Gst.Caps caps2);
		public bool is_fixed ();
		public bool is_subset (Gst.Caps superset);
		public static weak Gst.Caps load_thyself (pointer parent);
		public weak Gst.Caps make_writable ();
		public void merge (Gst.Caps caps2);
		public void merge_structure (Gst.Structure structure);
		public Caps.any ();
		public Caps.empty ();
		public Caps.full (Gst.Structure struct1, ...);
		public Caps.full_valist (Gst.Structure structure, pointer var_args);
		public Caps.simple (string media_type, string fieldname, ...);
		public weak Gst.Caps normalize ();
		public void remove_structure (uint idx);
		public void replace (Gst.Caps newcaps);
		public pointer save_thyself (pointer parent);
		public void set_simple (string field, ...);
		public void set_simple_valist (string field, pointer varargs);
		public weak Gst.Caps subtract (Gst.Caps subtrahend);
		public weak string to_string ();
		public void truncate ();
		public weak Gst.Caps union (Gst.Caps caps2);
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class Date : GLib.Boxed {
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class GError : GLib.Boxed {
	}
	[CCode (copy_function = "gst_index_entry_copy", cheader_filename = "gst/gst.h")]
	public class IndexEntry : GLib.Boxed {
		public Gst.IndexEntryType type;
		public int id;
		public pointer data;
		public bool assoc_map (Gst.Format format, int64 value);
		public weak Gst.IndexEntry copy ();
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class Segment : GLib.Boxed {
		public double rate;
		public double abs_rate;
		public Gst.Format format;
		public Gst.SeekFlags flags;
		public int64 start;
		public int64 stop;
		public int64 time;
		public int64 accum;
		public int64 last_stop;
		public int64 duration;
		public double applied_rate;
		public weak uchar[] _gst_reserved;
		public bool clip (Gst.Format format, int64 start, int64 stop, int64 clip_start, int64 clip_stop);
		public void init (Gst.Format format);
		public Segment ();
		public void set_duration (Gst.Format format, int64 duration);
		public void set_last_stop (Gst.Format format, int64 position);
		public void set_newsegment (bool update, double rate, Gst.Format format, int64 start, int64 stop, int64 time);
		public void set_newsegment_full (bool update, double rate, double applied_rate, Gst.Format format, int64 start, int64 stop, int64 time);
		public void set_seek (double rate, Gst.Format format, Gst.SeekFlags flags, Gst.SeekType start_type, int64 start, Gst.SeekType stop_type, int64 stop, bool update);
		public int64 to_running_time (Gst.Format format, int64 position);
		public int64 to_stream_time (Gst.Format format, int64 position);
	}
	[CCode (copy_function = "gst_structure_copy", cheader_filename = "gst/gst.h")]
	public class Structure : GLib.Boxed {
		public GLib.Type type;
		public GLib.Quark name;
		public int parent_refcount;
		public weak GLib.Array fields;
		public pointer _gst_reserved;
		public weak Gst.Structure copy ();
		public static weak Gst.Structure empty_new (string name);
		public bool fixate_field_boolean (string field_name, bool target);
		public bool fixate_field_nearest_double (string field_name, double target);
		public bool fixate_field_nearest_fraction (string field_name, int target_numerator, int target_denominator);
		public bool fixate_field_nearest_int (string field_name, int target);
		public bool @foreach (Gst.StructureForeachFunc func, pointer user_data);
		public static weak Gst.Structure from_string (string string, string end);
		public bool get_boolean (string fieldname, out bool value);
		public bool get_clock_time (string fieldname, Gst.ClockTime value);
		public bool get_date (string fieldname, out weak GLib.Date value);
		public bool get_double (string fieldname, out double value);
		public bool get_enum (string fieldname, GLib.Type enumtype, out int value);
		public GLib.Type get_field_type (string fieldname);
		public bool get_fourcc (string fieldname, out uint value);
		public bool get_fraction (string fieldname, out int value_numerator, out int value_denominator);
		public bool get_int (string fieldname, out int value);
		public weak string get_name ();
		public GLib.Quark get_name_id ();
		public weak string get_string (string fieldname);
		public bool get_uint (string fieldname, out uint value);
		public weak GLib.Value get_value (string fieldname);
		public bool has_field (string fieldname);
		public bool has_field_typed (string fieldname, GLib.Type type);
		public bool has_name (string name);
		public static weak Gst.Structure id_empty_new (GLib.Quark quark);
		public weak GLib.Value id_get_value (GLib.Quark field);
		public void id_set (GLib.Quark fieldname, ...);
		public void id_set_valist (GLib.Quark fieldname, pointer varargs);
		public void id_set_value (GLib.Quark field, GLib.Value value);
		public bool map_in_place (Gst.StructureMapFunc func, pointer user_data);
		public int n_fields ();
		public Structure (string name, string firstfield, ...);
		public Structure.valist (string name, string firstfield, pointer varargs);
		public weak string nth_field_name (uint index);
		public void remove_all_fields ();
		public void remove_field (string fieldname);
		public void remove_fields (string fieldname, ...);
		public void remove_fields_valist (string fieldname, pointer varargs);
		public void set (string fieldname, ...);
		public void set_name (string name);
		public void set_parent_refcount (int refcount);
		public void set_valist (string fieldname, pointer varargs);
		public void set_value (string fieldname, GLib.Value value);
		public weak string to_string ();
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class Adapter : GLib.Object {
		public weak GLib.SList buflist;
		public uint size;
		public uint skip;
		public uchar assembled_data;
		public uint assembled_size;
		public uint assembled_len;
		public weak GLib.SList buflist_end;
		public uint available ();
		public uint available_fast ();
		public void clear ();
		public void copy (uchar dest, uint offset, uint size);
		public void flush (uint flush);
		public Adapter ();
		public uchar peek (uint size);
		public void push (Gst.Buffer buf);
		public uchar take (uint nbytes);
		public weak Gst.Buffer take_buffer (uint nbytes);
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class BaseSink : Gst.Element {
		public weak Gst.Pad sinkpad;
		public Gst.ActivateMode pad_mode;
		public uint64 offset;
		public bool can_activate_pull;
		public bool can_activate_push;
		public weak GLib.Queue preroll_queue;
		public int preroll_queue_max_len;
		public int preroll_queued;
		public int buffers_queued;
		public int events_queued;
		public bool eos;
		public bool eos_queued;
		public bool need_preroll;
		public bool have_preroll;
		public bool playing_async;
		public bool have_newsegment;
		public weak Gst.Segment segment;
		public weak Gst.ClockID clock_id;
		public weak Gst.ClockTime end_time;
		public bool flushing;
		public pointer abidata;
		public weak Gst.Buffer get_last_buffer ();
		public weak Gst.ClockTime get_latency ();
		public int64 get_max_lateness ();
		public bool get_sync ();
		public weak Gst.ClockTimeDiff get_ts_offset ();
		public bool is_async_enabled ();
		public bool is_qos_enabled ();
		public bool query_latency (bool live, bool upstream_live, Gst.ClockTime min_latency, Gst.ClockTime max_latency);
		public void set_async_enabled (bool enabled);
		public void set_max_lateness (int64 max_lateness);
		public void set_qos_enabled (bool enabled);
		public void set_sync (bool sync);
		public void set_ts_offset (Gst.ClockTimeDiff offset);
		public Gst.FlowReturn wait_eos (Gst.ClockTime time, Gst.ClockTimeDiff jitter);
		public Gst.FlowReturn wait_preroll ();
		[NoAccessorMethod]
		public weak bool async { get; set; }
		public weak Gst.Buffer last_buffer { get; }
		public weak int64 max_lateness { get; set; }
		[NoAccessorMethod]
		public weak uint preroll_queue_len { get; set construct; }
		[NoAccessorMethod]
		public weak bool qos { get; set; }
		public weak bool sync { get; set; }
		public weak int64 ts_offset { get; set; }
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class BaseSrc : Gst.Element {
		public weak Gst.Pad srcpad;
		public weak GLib.Mutex live_lock;
		public weak GLib.Cond live_cond;
		public bool live_running;
		public bool can_activate_push;
		public Gst.ActivateMode pad_mode;
		public bool seekable;
		public bool random_access;
		public weak Gst.ClockID clock_id;
		public weak Gst.ClockTime end_time;
		public weak Gst.Segment segment;
		public bool need_newsegment;
		public uint64 offset;
		public uint64 size;
		public int num_buffers_left;
		public pointer data;
		public bool get_do_timestamp ();
		public bool is_live ();
		public bool query_latency (bool live, Gst.ClockTime min_latency, Gst.ClockTime max_latency);
		public void set_do_timestamp (bool live);
		public void set_format (Gst.Format format);
		public void set_live (bool live);
		public Gst.FlowReturn wait_playing ();
		[NoAccessorMethod]
		public weak ulong blocksize { get; set; }
		public weak bool do_timestamp { get; set; }
		[NoAccessorMethod]
		public weak int num_buffers { get; set; }
		[NoAccessorMethod]
		public weak bool typefind { get; set; }
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class BaseTransform : Gst.Element {
		public weak Gst.Pad sinkpad;
		public weak Gst.Pad srcpad;
		public bool passthrough;
		public bool always_in_place;
		public weak Gst.Caps cache_caps1;
		public uint cache_caps1_size;
		public weak Gst.Caps cache_caps2;
		public uint cache_caps2_size;
		public bool have_same_caps;
		public bool delay_configure;
		public bool pending_configure;
		public bool negotiated;
		public bool have_newsegment;
		public weak Gst.Segment segment;
		public weak GLib.Mutex transform_lock;
		public bool is_in_place ();
		public bool is_passthrough ();
		public bool is_qos_enabled ();
		public void set_in_place (bool in_place);
		public void set_passthrough (bool passthrough);
		public void set_qos_enabled (bool enabled);
		public void update_qos (double proportion, Gst.ClockTimeDiff diff, Gst.ClockTime timestamp);
		[NoAccessorMethod]
		public weak bool qos { get; set; }
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class Bin : Gst.Element, Gst.ChildProxy {
		public int numchildren;
		public weak GLib.List children;
		public uint children_cookie;
		public weak Gst.Bus child_bus;
		public weak GLib.List messages;
		public bool polling;
		public bool state_dirty;
		public bool clock_dirty;
		public weak Gst.Clock provided_clock;
		public weak Gst.Element clock_provider;
		public bool add (Gst.Element element);
		public void add_many (Gst.Element element_1, ...);
		public weak Gst.Pad find_unconnected_pad (Gst.PadDirection direction);
		public weak Gst.Element get_by_interface (GLib.Type iface);
		public weak Gst.Element get_by_name (string name);
		public weak Gst.Element get_by_name_recurse_up (string name);
		public weak Gst.Iterator iterate_all_by_interface (GLib.Type iface);
		public weak Gst.Iterator iterate_elements ();
		public weak Gst.Iterator iterate_recurse ();
		public weak Gst.Iterator iterate_sinks ();
		public weak Gst.Iterator iterate_sorted ();
		public weak Gst.Iterator iterate_sources ();
		public Bin (string name);
		public bool remove (Gst.Element element);
		public void remove_many (Gst.Element element_1, ...);
		[NoAccessorMethod]
		public weak bool async_handling { get; set; }
		public signal void element_added (Gst.Element child);
		public signal void element_removed (Gst.Element child);
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class Bus : Gst.Object {
		public weak GLib.Queue queue;
		public weak GLib.Mutex queue_lock;
		public Gst.BusSyncHandler sync_handler;
		public pointer sync_handler_data;
		public uint signal_watch_id;
		public uint num_signal_watchers;
		public void add_signal_watch ();
		public void add_signal_watch_full (int priority);
		public uint add_watch (Gst.BusFunc func, pointer user_data);
		public uint add_watch_full (int priority, Gst.BusFunc func, pointer user_data, GLib.DestroyNotify notify);
		public bool async_signal_func (Gst.Message message, pointer data);
		public weak GLib.Source create_watch ();
		public void disable_sync_message_emission ();
		public void enable_sync_message_emission ();
		public bool have_pending ();
		public Bus ();
		public weak Gst.Message peek ();
		public weak Gst.Message poll (Gst.MessageType events, Gst.ClockTimeDiff timeout);
		public weak Gst.Message pop ();
		public weak Gst.Message pop_filtered (Gst.MessageType types);
		public bool post (Gst.Message message);
		public void remove_signal_watch ();
		public void set_flushing (bool flushing);
		public void set_sync_handler (Gst.BusSyncHandler func, pointer data);
		public Gst.BusSyncReply sync_signal_handler (Gst.Message message, pointer data);
		public weak Gst.Message timed_pop (Gst.ClockTime timeout);
		public weak Gst.Message timed_pop_filtered (Gst.ClockTime timeout, Gst.MessageType types);
		public signal void message (Gst.Message message);
		public signal void sync_message (Gst.Message message);
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class Clock : Gst.Object {
		public weak GLib.Mutex slave_lock;
		public weak Gst.ClockTime internal_calibration;
		public weak Gst.ClockTime external_calibration;
		public weak Gst.ClockTime rate_numerator;
		public weak Gst.ClockTime rate_denominator;
		public weak Gst.ClockTime last_time;
		public weak GLib.List entries;
		public weak GLib.Cond entries_changed;
		public weak Gst.ClockTime resolution;
		public weak Gst.Clock master;
		public bool filling;
		public int time_index;
		public weak Gst.ClockTime times;
		public weak Gst.ClockID clockid;
		public bool add_observation (Gst.ClockTime slave, Gst.ClockTime master, double r_squared);
		public weak Gst.ClockTime adjust_unlocked (Gst.ClockTime internal);
		public void get_calibration (Gst.ClockTime internal, Gst.ClockTime external, Gst.ClockTime rate_num, Gst.ClockTime rate_denom);
		public virtual weak Gst.ClockTime get_internal_time ();
		public weak Gst.Clock get_master ();
		public virtual weak Gst.ClockTime get_resolution ();
		public weak Gst.ClockTime get_time ();
		public Clock.periodic_id (Gst.Clock clock, Gst.ClockTime start_time, Gst.ClockTime interval);
		public Clock.single_shot_id (Gst.Clock clock, Gst.ClockTime time);
		public void set_calibration (Gst.ClockTime internal, Gst.ClockTime external, Gst.ClockTime rate_num, Gst.ClockTime rate_denom);
		public bool set_master (Gst.Clock master);
		public weak Gst.ClockTime set_resolution (Gst.ClockTime resolution);
		public weak Gst.ClockTime unadjust_unlocked (Gst.ClockTime external);
		[NoAccessorMethod]
		public weak bool stats { get; set; }
		[NoAccessorMethod]
		public weak uint64 timeout { get; set; }
		[NoAccessorMethod]
		public weak int window_size { get; set; }
		[NoAccessorMethod]
		public weak int window_threshold { get; set; }
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class CollectPads : Gst.Object {
		public weak GLib.SList data;
		public uint cookie;
		public weak GLib.Cond cond;
		public Gst.CollectPadsFunction func;
		public pointer user_data;
		public uint numpads;
		public uint queuedpads;
		public uint eospads;
		public bool started;
		public pointer abidata;
		public weak Gst.CollectData add_pad (Gst.Pad pad, uint size);
		public weak Gst.CollectData add_pad_full (Gst.Pad pad, uint size, Gst.CollectDataDestroyNotify destroy_notify);
		public uint available ();
		public Gst.FlowReturn collect ();
		public Gst.FlowReturn collect_range (uint64 offset, uint length);
		public uint flush (Gst.CollectData data, uint size);
		public bool is_active (Gst.Pad pad);
		public CollectPads ();
		public weak Gst.Buffer peek (Gst.CollectData data);
		public weak Gst.Buffer pop (Gst.CollectData data);
		public uint read (Gst.CollectData data, uchar bytes, uint size);
		public bool remove_pad (Gst.Pad pad);
		public void set_flushing (bool flushing);
		public void set_function (Gst.CollectPadsFunction func, pointer user_data);
		public void start ();
		public void stop ();
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class DataQueue : GLib.Object {
		public weak GLib.Queue queue;
		public weak Gst.DataQueueSize cur_level;
		public Gst.DataQueueCheckFullFunction checkfull;
		public pointer checkdata;
		public weak GLib.Mutex qlock;
		public weak GLib.Cond item_add;
		public weak GLib.Cond item_del;
		public bool flushing;
		public bool drop_head (GLib.Type type);
		public void flush ();
		public void get_level (Gst.DataQueueSize level);
		public bool is_empty ();
		public bool is_full ();
		public void limits_changed ();
		public DataQueue (Gst.DataQueueCheckFullFunction checkfull, pointer checkdata);
		public bool pop (out weak Gst.DataQueueItem item);
		public bool push (Gst.DataQueueItem item);
		public void set_flushing (bool flushing);
		[NoAccessorMethod]
		public weak uint current_level_bytes { get; }
		[NoAccessorMethod]
		public weak uint64 current_level_time { get; }
		[NoAccessorMethod]
		public weak uint current_level_visible { get; }
		public signal void empty ();
		public signal void full ();
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class Element : Gst.Object {
		public pointer state_lock;
		public weak GLib.Cond state_cond;
		public uint state_cookie;
		public Gst.State current_state;
		public Gst.State next_state;
		public Gst.State pending_state;
		public Gst.StateChangeReturn last_return;
		public weak Gst.Bus bus;
		public weak Gst.Clock clock;
		public weak Gst.ClockTimeDiff base_time;
		public ushort numpads;
		public weak GLib.List pads;
		public ushort numsrcpads;
		public weak GLib.List srcpads;
		public ushort numsinkpads;
		public weak GLib.List sinkpads;
		public uint pads_cookie;
		public pointer abidata;
		public void abort_state ();
		public bool add_pad (Gst.Pad pad);
		public virtual Gst.StateChangeReturn change_state (Gst.StateChange transition);
		public static void class_add_pad_template (pointer klass, Gst.PadTemplate templ);
		public static weak Gst.PadTemplate class_get_pad_template (pointer element_class, string name);
		public static weak GLib.List class_get_pad_template_list (pointer element_class);
		public static void class_install_std_props (pointer klass, ...);
		public static void class_set_details (pointer klass, Gst.ElementDetails details);
		public static void class_set_details_simple (pointer klass, string longname, string classification, string description, string author);
		public Gst.StateChangeReturn continue_state (Gst.StateChangeReturn ret);
		public void create_all_pads ();
		public void found_tags (Gst.TagList list);
		public void found_tags_for_pad (Gst.Pad pad, Gst.TagList list);
		public weak Gst.ClockTime get_base_time ();
		public weak Gst.Bus get_bus ();
		public weak Gst.Clock get_clock ();
		public weak Gst.Pad get_compatible_pad (Gst.Pad pad, Gst.Caps caps);
		public weak Gst.PadTemplate get_compatible_pad_template (Gst.PadTemplate compattempl);
		public weak Gst.ElementFactory get_factory ();
		public virtual weak Gst.Index get_index ();
		public weak Gst.Pad get_pad (string name);
		public virtual Gst.QueryType get_query_types ();
		public weak Gst.Pad get_request_pad (string name);
		public virtual Gst.StateChangeReturn get_state (out Gst.State state, out Gst.State pending, Gst.ClockTime timeout);
		public weak Gst.Pad get_static_pad (string name);
		public bool implements_interface (GLib.Type iface_type);
		public bool is_indexable ();
		public bool is_locked_state ();
		public weak Gst.Iterator iterate_pads ();
		public weak Gst.Iterator iterate_sink_pads ();
		public weak Gst.Iterator iterate_src_pads ();
		public bool link (Gst.Element dest);
		public bool link_filtered (Gst.Element dest, Gst.Caps filter);
		public bool link_many (Gst.Element element_2, ...);
		public bool link_pads (string srcpadname, Gst.Element dest, string destpadname);
		public bool link_pads_filtered (string srcpadname, Gst.Element dest, string destpadname, Gst.Caps filter);
		public void lost_state ();
		public static weak Gst.Element make_from_uri (Gst.URIType type, string uri, string elementname);
		public void message_full (Gst.MessageType type, GLib.Quark domain, int code, string text, string debug, string file, string function, int line);
		public bool post_message (Gst.Message message);
		public virtual weak Gst.Clock provide_clock ();
		public bool provides_clock ();
		public virtual bool query (Gst.Query query);
		public bool query_convert (Gst.Format src_format, int64 src_val, Gst.Format dest_format, int64 dest_val);
		public bool query_duration (ref Gst.Format format, out int64 duration);
		public bool query_position (ref Gst.Format format, out int64 cur);
		public static bool register (Gst.Plugin plugin, string name, uint rank, GLib.Type type);
		public void release_request_pad (Gst.Pad pad);
		public bool remove_pad (Gst.Pad pad);
		public bool requires_clock ();
		public bool seek (double rate, Gst.Format format, Gst.SeekFlags flags, Gst.SeekType cur_type, int64 cur, Gst.SeekType stop_type, int64 stop);
		public bool seek_simple (Gst.Format format, Gst.SeekFlags seek_flags, int64 seek_pos);
		public virtual bool send_event (Gst.Event event);
		public void set_base_time (Gst.ClockTime time);
		public virtual void set_bus (Gst.Bus bus);
		public virtual bool set_clock (Gst.Clock clock);
		public virtual void set_index (Gst.Index index);
		public bool set_locked_state (bool locked_state);
		public virtual Gst.StateChangeReturn set_state (Gst.State state);
		public static weak string state_change_return_get_name (Gst.StateChangeReturn state_ret);
		public static weak string state_get_name (Gst.State state);
		public bool sync_state_with_parent ();
		public void unlink (Gst.Element dest);
		public void unlink_many (Gst.Element element_2, ...);
		public void unlink_pads (string srcpadname, Gst.Element dest, string destpadname);
		[HasEmitter]
		public signal void no_more_pads ();
		public signal void pad_added (Gst.Pad pad);
		public signal void pad_removed (Gst.Pad pad);
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class ElementFactory : Gst.PluginFeature {
		public GLib.Type type;
		public weak Gst.ElementDetails details;
		public weak GLib.List staticpadtemplates;
		public uint numpadtemplates;
		public uint uri_type;
		public weak string uri_protocols;
		public weak GLib.List interfaces;
		public bool can_sink_caps (Gst.Caps caps);
		public bool can_src_caps (Gst.Caps caps);
		public weak Gst.Element create (string name);
		public static weak Gst.ElementFactory find (string name);
		public weak string get_author ();
		public weak string get_description ();
		public GLib.Type get_element_type ();
		public weak string get_klass ();
		public weak string get_longname ();
		public uint get_num_pad_templates ();
		public weak GLib.List get_static_pad_templates ();
		public weak string get_uri_protocols ();
		public int get_uri_type ();
		public bool has_interface (string interfacename);
		public static weak Gst.Element make (string factoryname, string name);
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class Index : Gst.Object {
		public weak GLib.List groups;
		public weak Gst.IndexGroup curgroup;
		public int maxgroup;
		public Gst.IndexResolverMethod method;
		public pointer resolver_user_data;
		public Gst.IndexFilter filter;
		public pointer filter_user_data;
		public GLib.DestroyNotify filter_user_data_destroy;
		public weak GLib.HashTable writers;
		public int last_id;
		public weak Gst.IndexEntry add_association (int id, Gst.AssocFlags flags, Gst.Format format, int64 value);
		public weak Gst.IndexEntry add_associationv (int id, Gst.AssocFlags flags, int n, Gst.IndexAssociation list);
		public weak Gst.IndexEntry add_format (int id, Gst.Format format);
		public weak Gst.IndexEntry add_id (int id, string description);
		public weak Gst.IndexEntry add_object (int id, string key, GLib.Type type, pointer object);
		public virtual void commit (int id);
		public virtual weak Gst.IndexEntry get_assoc_entry (int id, Gst.IndexLookupMethod method, Gst.AssocFlags flags, Gst.Format format, int64 value);
		public weak Gst.IndexEntry get_assoc_entry_full (int id, Gst.IndexLookupMethod method, Gst.AssocFlags flags, Gst.Format format, int64 value, GLib.CompareDataFunc func, pointer user_data);
		public Gst.IndexCertainty get_certainty ();
		public int get_group ();
		public virtual bool get_writer_id (Gst.Object writer, int id);
		public Index ();
		public Index.group (Gst.Index index);
		public void set_certainty (Gst.IndexCertainty certainty);
		public void set_filter (Gst.IndexFilter filter, pointer user_data);
		public void set_filter_full (Gst.IndexFilter filter, pointer user_data, GLib.DestroyNotify user_data_destroy);
		public bool set_group (int groupnum);
		public void set_resolver (Gst.IndexResolver resolver, pointer user_data);
		[NoAccessorMethod]
		public weak Gst.IndexResolver resolver { get; set; }
		public signal void entry_added (Gst.IndexEntry entry);
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class IndexFactory : Gst.PluginFeature {
		public weak string longdesc;
		public GLib.Type type;
		public weak Gst.Index create ();
		public void destroy ();
		public static weak Gst.IndexFactory find (string name);
		public static weak Gst.Index make (string name);
		public IndexFactory (string name, string longdesc, GLib.Type type);
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class Object : GLib.Object {
		public int refcount;
		public weak GLib.Mutex @lock;
		public weak string name_prefix;
		public weak Gst.Object parent;
		public uint flags;
		public static bool check_uniqueness (GLib.List list, string name);
		public static void default_deep_notify (GLib.Object object, Gst.Object orig, GLib.ParamSpec pspec, string excluded_props);
		public void default_error (GLib.Error error, string debug);
		public weak string get_name ();
		public weak string get_name_prefix ();
		public weak Gst.Object get_parent ();
		public weak string get_path_string ();
		public bool has_ancestor (Gst.Object ancestor);
		public static pointer @ref (pointer object);
		public void replace (Gst.Object newobj);
		public virtual void restore_thyself (pointer self);
		public virtual pointer save_thyself (pointer parent);
		public bool set_name (string name);
		public void set_name_prefix (string name_prefix);
		public bool set_parent (Gst.Object parent);
		public static void sink (pointer object);
		public void unparent ();
		public static void unref (pointer object);
		public weak string name { get; set construct; }
		public signal void deep_notify (Gst.Object orig, GLib.ParamSpec pspec);
		public signal void object_saved (pointer parent);
		public signal void parent_set (Gst.Object parent);
		public signal void parent_unset (Gst.Object parent);
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class Pad : Gst.Object {
		public pointer element_private;
		public weak Gst.PadTemplate padtemplate;
		public pointer stream_rec_lock;
		public weak Gst.Task task;
		public weak GLib.Mutex preroll_lock;
		public weak GLib.Cond preroll_cond;
		public weak GLib.Cond block_cond;
		public Gst.PadBlockCallback block_callback;
		public pointer block_data;
		public Gst.PadGetCapsFunction getcapsfunc;
		public Gst.PadSetCapsFunction setcapsfunc;
		public Gst.PadAcceptCapsFunction acceptcapsfunc;
		public Gst.PadFixateCapsFunction fixatecapsfunc;
		public Gst.PadActivateFunction activatefunc;
		public Gst.PadActivateModeFunction activatepushfunc;
		public Gst.PadActivateModeFunction activatepullfunc;
		public Gst.PadLinkFunction linkfunc;
		public Gst.PadUnlinkFunction unlinkfunc;
		public weak Gst.Pad peer;
		public pointer sched_private;
		public Gst.PadChainFunction chainfunc;
		public Gst.PadCheckGetRangeFunction checkgetrangefunc;
		public Gst.PadGetRangeFunction getrangefunc;
		public Gst.PadEventFunction eventfunc;
		public Gst.ActivateMode mode;
		public Gst.PadQueryFunction queryfunc;
		public Gst.PadIntLinkFunction intlinkfunc;
		public Gst.PadBufferAllocFunction bufferallocfunc;
		public int do_buffer_signals;
		public int do_event_signals;
		public bool accept_caps (Gst.Caps caps);
		public bool activate_pull (bool active);
		public bool activate_push (bool active);
		public ulong add_buffer_probe (GLib.Callback handler, pointer data);
		public ulong add_data_probe (GLib.Callback handler, pointer data);
		public ulong add_event_probe (GLib.Callback handler, pointer data);
		public Gst.FlowReturn alloc_buffer (uint64 offset, int size, Gst.Caps caps, out weak Gst.Buffer buf);
		public Gst.FlowReturn alloc_buffer_and_set_caps (uint64 offset, int size, Gst.Caps caps, out weak Gst.Buffer buf);
		public bool can_link (Gst.Pad sinkpad);
		public Gst.FlowReturn chain (Gst.Buffer buffer);
		public bool check_pull_range ();
		public bool dispatcher (Gst.PadDispatcherFunction dispatch, pointer data);
		public bool event_default (Gst.Event event);
		public void fixate_caps (Gst.Caps caps);
		public weak Gst.Caps get_allowed_caps ();
		public weak Gst.Caps get_caps ();
		public Gst.PadDirection get_direction ();
		public pointer get_element_private ();
		public weak Gst.Caps get_fixed_caps_func ();
		public weak GLib.List get_internal_links ();
		public weak GLib.List get_internal_links_default ();
		public weak Gst.Caps get_negotiated_caps ();
		public weak Gst.PadTemplate get_pad_template ();
		public weak Gst.Caps get_pad_template_caps ();
		public weak Gst.Element get_parent_element ();
		public weak Gst.Pad get_peer ();
		public Gst.QueryType get_query_types ();
		public Gst.QueryType get_query_types_default ();
		public Gst.FlowReturn get_range (uint64 offset, uint size, out weak Gst.Buffer buffer);
		public bool is_active ();
		public bool is_blocked ();
		public bool is_blocking ();
		public bool is_linked ();
		public Gst.PadLinkReturn link (Gst.Pad sinkpad);
		public void load_and_link (Gst.Object parent);
		public Pad (string name, Gst.PadDirection direction);
		public Pad.from_static_template (Gst.StaticPadTemplate templ, string name);
		public Pad.from_template (Gst.PadTemplate templ, string name);
		public bool pause_task ();
		public bool peer_accept_caps (Gst.Caps caps);
		public weak Gst.Caps peer_get_caps ();
		public bool peer_query (Gst.Query query);
		public weak Gst.Caps proxy_getcaps ();
		public bool proxy_setcaps (Gst.Caps caps);
		public Gst.FlowReturn pull_range (uint64 offset, uint size, out weak Gst.Buffer buffer);
		public Gst.FlowReturn push (Gst.Buffer buffer);
		public bool push_event (Gst.Event event);
		public bool query (Gst.Query query);
		public bool query_convert (Gst.Format src_format, int64 src_val, Gst.Format dest_format, int64 dest_val);
		public bool query_default (Gst.Query query);
		public bool query_duration (Gst.Format format, int64 duration);
		public bool query_peer_convert (Gst.Format src_format, int64 src_val, Gst.Format dest_format, int64 dest_val);
		public bool query_peer_duration (Gst.Format format, int64 duration);
		public bool query_peer_position (Gst.Format format, int64 cur);
		public bool query_position (Gst.Format format, int64 cur);
		public void remove_buffer_probe (uint handler_id);
		public void remove_data_probe (uint handler_id);
		public void remove_event_probe (uint handler_id);
		public bool send_event (Gst.Event event);
		public void set_acceptcaps_function (Gst.PadAcceptCapsFunction acceptcaps);
		public void set_activate_function (Gst.PadActivateFunction activate);
		public void set_activatepull_function (Gst.PadActivateModeFunction activatepull);
		public void set_activatepush_function (Gst.PadActivateModeFunction activatepush);
		public bool set_active (bool active);
		public bool set_blocked (bool blocked);
		public bool set_blocked_async (bool blocked, Gst.PadBlockCallback callback, pointer user_data);
		public void set_bufferalloc_function (Gst.PadBufferAllocFunction bufalloc);
		public bool set_caps (Gst.Caps caps);
		public void set_chain_function (Gst.PadChainFunction chain);
		public void set_checkgetrange_function (Gst.PadCheckGetRangeFunction check);
		public void set_element_private (pointer priv);
		public void set_event_function (Gst.PadEventFunction event);
		public void set_fixatecaps_function (Gst.PadFixateCapsFunction fixatecaps);
		public void set_getcaps_function (Gst.PadGetCapsFunction getcaps);
		public void set_getrange_function (Gst.PadGetRangeFunction get);
		public void set_internal_link_function (Gst.PadIntLinkFunction intlink);
		public void set_link_function (Gst.PadLinkFunction link);
		public void set_query_function (Gst.PadQueryFunction query);
		public void set_setcaps_function (Gst.PadSetCapsFunction setcaps);
		public void set_unlink_function (Gst.PadUnlinkFunction unlink);
		public bool start_task (Gst.TaskFunction func, pointer data);
		public bool stop_task ();
		public bool unlink (Gst.Pad sinkpad);
		public void use_fixed_caps ();
		public weak Gst.Caps caps { get; }
		[NoAccessorMethod]
		public weak Gst.PadDirection direction { get; construct; }
		[NoAccessorMethod]
		public weak Gst.PadTemplate template { get; set; }
		public signal bool have_data (Gst.MiniObject data);
		public signal void linked (Gst.Pad peer);
		public signal void request_link ();
		public signal void unlinked (Gst.Pad peer);
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class PadTemplate : Gst.Object {
		public weak string name_template;
		public Gst.PadDirection direction;
		public Gst.PadPresence presence;
		public weak Gst.Caps caps;
		public weak Gst.Caps get_caps ();
		public PadTemplate (string name_template, Gst.PadDirection direction, Gst.PadPresence presence, Gst.Caps caps);
		[HasEmitter]
		public signal void pad_created (Gst.Pad pad);
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class Pipeline : Gst.Bin, Gst.ChildProxy {
		public weak Gst.Clock fixed_clock;
		public weak Gst.ClockTime stream_time;
		public void auto_clock ();
		public bool get_auto_flush_bus ();
		public weak Gst.Bus get_bus ();
		public weak Gst.Clock get_clock ();
		public weak Gst.ClockTime get_delay ();
		public weak Gst.ClockTime get_last_stream_time ();
		public Pipeline (string name);
		public void set_auto_flush_bus (bool auto_flush);
		public bool set_clock (Gst.Clock clock);
		public void set_delay (Gst.ClockTime delay);
		public void set_new_stream_time (Gst.ClockTime time);
		public void use_clock (Gst.Clock clock);
		public weak bool auto_flush_bus { get; set; }
		public weak uint64 delay { get; set; }
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class Plugin : Gst.Object {
		public weak Gst.PluginDesc desc;
		public weak Gst.PluginDesc orig_desc;
		public uint flags;
		public weak string filename;
		public weak string basename;
		public weak GLib.Module module;
		public int64 file_size;
		public ulong file_mtime;
		public bool registered;
		public static GLib.Quark error_quark ();
		public weak string get_description ();
		public weak string get_filename ();
		public weak string get_license ();
		public weak GLib.Module get_module ();
		public weak string get_name ();
		public weak string get_origin ();
		public weak string get_package ();
		public weak string get_source ();
		public weak string get_version ();
		public bool is_loaded ();
		public static void list_free (GLib.List list);
		public weak Gst.Plugin load ();
		public static weak Gst.Plugin load_by_name (string name);
		public static weak Gst.Plugin load_file (string filename) throws GLib.Error;
		public bool name_filter (string name);
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class PluginFeature : Gst.Object {
		public bool loaded;
		public weak string name;
		public uint rank;
		public weak string plugin_name;
		public bool check_version (uint min_major, uint min_minor, uint min_micro);
		public weak string get_name ();
		public uint get_rank ();
		public static void list_free (GLib.List list);
		public weak Gst.PluginFeature load ();
		public void set_name (string name);
		public void set_rank (uint rank);
		public bool type_name_filter (Gst.TypeNameData data);
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class PushSrc : Gst.BaseSrc {
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class Registry : Gst.Object {
		public weak GLib.List plugins;
		public weak GLib.List features;
		public weak GLib.List paths;
		public int cache_file;
		public weak GLib.HashTable feature_hash;
		public bool add_feature (Gst.PluginFeature feature);
		public void add_path (string path);
		public bool add_plugin (Gst.Plugin plugin);
		public weak GLib.List feature_filter (Gst.PluginFeatureFilter filter, bool first, pointer user_data);
		public weak Gst.PluginFeature find_feature (string name, GLib.Type type);
		public weak Gst.Plugin find_plugin (string name);
		public static bool fork_is_enabled ();
		public static void fork_set_enabled (bool enabled);
		public static weak Gst.Registry get_default ();
		public weak GLib.List get_feature_list (GLib.Type type);
		public weak GLib.List get_feature_list_by_plugin (string name);
		public weak GLib.List get_path_list ();
		public weak GLib.List get_plugin_list ();
		public weak Gst.Plugin lookup (string filename);
		public weak Gst.PluginFeature lookup_feature (string name);
		public weak GLib.List plugin_filter (Gst.PluginFilter filter, bool first, pointer user_data);
		public void remove_feature (Gst.PluginFeature feature);
		public void remove_plugin (Gst.Plugin plugin);
		public bool scan_path (string path);
		public bool xml_read_cache (string location);
		public bool xml_write_cache (string location);
		public signal void feature_added (pointer feature);
		public signal void plugin_added (pointer plugin);
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class SystemClock : Gst.Clock {
		public weak GLib.Thread thread;
		public bool stopping;
		public static weak Gst.Clock obtain ();
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class Task : Gst.Object {
		public Gst.TaskState state;
		public weak GLib.Cond cond;
		public pointer @lock;
		public Gst.TaskFunction func;
		public pointer data;
		public bool running;
		public pointer abidata;
		public static void cleanup_all ();
		public static weak Gst.Task create (Gst.TaskFunction func, pointer data);
		public Gst.TaskState get_state ();
		public bool join ();
		public bool pause ();
		public void set_lock (pointer mutex);
		public bool start ();
		public bool stop ();
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class TypeFindFactory : Gst.PluginFeature {
		public Gst.TypeFindFunction function;
		public weak string extensions;
		public weak Gst.Caps caps;
		public pointer user_data;
		public GLib.DestroyNotify user_data_notify;
		[CCode (cname = "gst_type_find_factory_call_function")]
		public void call_function (Gst.TypeFind find);
		[CCode (cname = "gst_type_find_factory_get_caps")]
		public weak Gst.Caps get_caps ();
		[CCode (cname = "gst_type_find_factory_get_extensions")]
		public weak string get_extensions ();
		[CCode (cname = "gst_type_find_factory_get_list")]
		public static weak GLib.List get_list ();
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class XML : Gst.Object {
		public weak GLib.List topelements;
		public pointer ns;
		[NoArrayLength]
		public weak Gst.Element get_element (uchar[] name);
		public weak GLib.List get_topelements ();
		public static weak Gst.Element make_element (pointer cur, Gst.Object parent);
		public XML ();
		[NoArrayLength]
		public bool parse_doc (pointer doc, uchar[] root);
		[NoArrayLength]
		public bool parse_file (uchar[] fname, uchar[] root);
		[NoArrayLength]
		public bool parse_memory (uchar[] buffer, uint size, string root);
		public static pointer write (Gst.Element element);
		public static int write_file (Gst.Element element, GLib.FileStream @out);
		public signal void object_loaded (Gst.Object object, pointer self);
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public interface ChildProxy : Gst.Object {
		public static void get (Gst.Object object, ...);
		public abstract weak Gst.Object get_child_by_index (uint index);
		public weak Gst.Object get_child_by_name (string name);
		public abstract uint get_children_count ();
		public static void get_property (Gst.Object object, string name, GLib.Value value);
		public static void get_valist (Gst.Object object, string first_property_name, pointer var_args);
		public static bool lookup (Gst.Object object, string name, out weak Gst.Object target, out weak GLib.ParamSpec pspec);
		public static void set (Gst.Object object, ...);
		public static void set_property (Gst.Object object, string name, GLib.Value value);
		public static void set_valist (Gst.Object object, string first_property_name, pointer var_args);
		[HasEmitter]
		public signal void child_added (GLib.Object child);
		[HasEmitter]
		public signal void child_removed (GLib.Object child);
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public interface ImplementsInterface : Gst.Element {
		public static pointer cast (pointer from, GLib.Type type);
		public static bool check (pointer from, GLib.Type type);
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public interface URIHandler {
		public abstract weak string get_protocols ();
		public abstract weak string get_uri ();
		public uint get_uri_type ();
		public abstract bool set_uri (string uri);
		[HasEmitter]
		public signal void new_uri (string uri);
	}
	public static delegate bool BusFunc (Gst.Bus bus, Gst.Message message, pointer data);
	public static delegate Gst.BusSyncReply BusSyncHandler (Gst.Bus bus, Gst.Message message, pointer data);
	public static delegate bool ClockCallback (Gst.Clock clock, Gst.ClockTime time, Gst.ClockID id, pointer user_data);
	public static delegate void CollectDataDestroyNotify (Gst.CollectData data);
	public static delegate Gst.FlowReturn CollectPadsFunction (Gst.CollectPads pads, pointer user_data);
	public static delegate bool DataQueueCheckFullFunction (Gst.DataQueue queue, uint visible, uint bytes, uint64 time, pointer checkdata);
	public static delegate void DebugFuncPtr ();
	public static delegate bool FilterFunc (pointer obj, pointer user_data);
	public static delegate bool IndexFilter (Gst.Index index, Gst.IndexEntry entry, pointer user_data);
	public static delegate bool IndexResolver (Gst.Index index, Gst.Object writer, string writer_string, pointer user_data);
	public static delegate void IteratorDisposeFunction (pointer owner);
	public static delegate bool IteratorFoldFunction (pointer item, GLib.Value ret, pointer user_data);
	public static delegate void IteratorFreeFunction (Gst.Iterator it);
	public static delegate Gst.IteratorItem IteratorItemFunction (Gst.Iterator it, pointer item);
	public static delegate Gst.IteratorResult IteratorNextFunction (Gst.Iterator it, pointer result);
	public static delegate void IteratorResyncFunction (Gst.Iterator it);
	public static delegate void LogFunction (Gst.DebugCategory category, Gst.DebugLevel level, string file, string function, int line, GLib.Object object, Gst.DebugMessage message, pointer data);
	public static delegate weak Gst.MiniObject MiniObjectCopyFunction (Gst.MiniObject obj);
	public static delegate void MiniObjectFinalizeFunction (Gst.MiniObject obj);
	public static delegate bool PadAcceptCapsFunction (Gst.Pad pad, Gst.Caps caps);
	public static delegate bool PadActivateFunction (Gst.Pad pad);
	public static delegate bool PadActivateModeFunction (Gst.Pad pad, bool active);
	public static delegate void PadBlockCallback (Gst.Pad pad, bool blocked, pointer user_data);
	public static delegate Gst.FlowReturn PadBufferAllocFunction (Gst.Pad pad, uint64 offset, uint size, Gst.Caps caps, out weak Gst.Buffer buf);
	public static delegate Gst.FlowReturn PadChainFunction (Gst.Pad pad, Gst.Buffer buffer);
	public static delegate bool PadCheckGetRangeFunction (Gst.Pad pad);
	public static delegate bool PadDispatcherFunction (Gst.Pad pad, pointer data);
	public static delegate bool PadEventFunction (Gst.Pad pad, Gst.Event event);
	public static delegate void PadFixateCapsFunction (Gst.Pad pad, Gst.Caps caps);
	public static delegate weak Gst.Caps PadGetCapsFunction (Gst.Pad pad);
	public static delegate Gst.FlowReturn PadGetRangeFunction (Gst.Pad pad, uint64 offset, uint length, out weak Gst.Buffer buffer);
	public static delegate weak GLib.List PadIntLinkFunction (Gst.Pad pad);
	public static delegate Gst.PadLinkReturn PadLinkFunction (Gst.Pad pad, Gst.Pad peer);
	public static delegate bool PadQueryFunction (Gst.Pad pad, Gst.Query query);
	public static delegate Gst.QueryType PadQueryTypeFunction (Gst.Pad pad);
	public static delegate bool PadSetCapsFunction (Gst.Pad pad, Gst.Caps caps);
	public static delegate void PadUnlinkFunction (Gst.Pad pad);
	public static delegate bool PluginFeatureFilter (Gst.PluginFeature feature, pointer user_data);
	public static delegate bool PluginFilter (Gst.Plugin plugin, pointer user_data);
	public static delegate bool PluginInitFunc (Gst.Plugin plugin);
	public static delegate bool StructureForeachFunc (GLib.Quark field_id, GLib.Value value, pointer user_data);
	public static delegate bool StructureMapFunc (GLib.Quark field_id, GLib.Value value, pointer user_data);
	public static delegate void TagForeachFunc (Gst.TagList list, string tag, pointer user_data);
	public static delegate void TagMergeFunc (GLib.Value dest, GLib.Value src);
	public static delegate void TaskFunction (pointer data);
	public static delegate void TypeFindFunction (Gst.TypeFind find, pointer data);
	public static delegate Gst.FlowReturn TypeFindHelperGetRangeFunction (Gst.Object obj, uint64 offset, uint length, out weak Gst.Buffer buffer);
	public static delegate int ValueCompareFunc (GLib.Value value1, GLib.Value value2);
	public static delegate bool ValueDeserializeFunc (GLib.Value dest, string s);
	public static delegate bool ValueIntersectFunc (GLib.Value dest, GLib.Value value1, GLib.Value value2);
	public static delegate weak string ValueSerializeFunc (GLib.Value value1);
	public static delegate bool ValueSubtractFunc (GLib.Value dest, GLib.Value minuend, GLib.Value subtrahend);
	public static delegate bool ValueUnionFunc (GLib.Value dest, GLib.Value value1, GLib.Value value2);
	public const string BASE_TRANSFORM_SINK_NAME;
	public const string BASE_TRANSFORM_SRC_NAME;
	public const int BUFFER_COPY_ALL;
	public const int BUFFER_OFFSET_NONE;
	public const string BUFFER_TRACE_NAME;
	public const string CLOCK_ENTRY_TRACE_NAME;
	public const int CLOCK_TIME_NONE;
	public const int DEBUG_BG_MASK;
	public const int DEBUG_FG_MASK;
	public const int DEBUG_FORMAT_MASK;
	public const string EVENT_TRACE_NAME;
	public const int EVENT_TYPE_BOTH;
	public const int EVENT_TYPE_SHIFT;
	public const string FOURCC_FORMAT;
	public const int INDEX_ID_INVALID;
	public const string LICENSE_UNKNOWN;
	public const string MESSAGE_TRACE_NAME;
	public const int MSECOND;
	public const int NSECOND;
	public const int SECOND;
	public const string TAG_ALBUM;
	public const string TAG_ALBUM_GAIN;
	public const string TAG_ALBUM_PEAK;
	public const string TAG_ALBUM_SORTNAME;
	public const string TAG_ALBUM_VOLUME_COUNT;
	public const string TAG_ALBUM_VOLUME_NUMBER;
	public const string TAG_ARTIST;
	public const string TAG_ARTIST_SORTNAME;
	public const string TAG_AUDIO_CODEC;
	public const string TAG_BEATS_PER_MINUTE;
	public const string TAG_BITRATE;
	public const string TAG_CODEC;
	public const string TAG_COMMENT;
	public const string TAG_COMPOSER;
	public const string TAG_CONTACT;
	public const string TAG_COPYRIGHT;
	public const string TAG_COPYRIGHT_URI;
	public const string TAG_DATE;
	public const string TAG_DESCRIPTION;
	public const string TAG_DURATION;
	public const string TAG_ENCODER;
	public const string TAG_ENCODER_VERSION;
	public const string TAG_EXTENDED_COMMENT;
	public const string TAG_GENRE;
	public const string TAG_IMAGE;
	public const string TAG_ISRC;
	public const string TAG_LANGUAGE_CODE;
	public const string TAG_LICENSE;
	public const string TAG_LICENSE_URI;
	public const string TAG_LOCATION;
	public const string TAG_MAXIMUM_BITRATE;
	public const string TAG_MINIMUM_BITRATE;
	public const string TAG_NOMINAL_BITRATE;
	public const string TAG_ORGANIZATION;
	public const string TAG_PERFORMER;
	public const string TAG_PREVIEW_IMAGE;
	public const string TAG_REFERENCE_LEVEL;
	public const string TAG_SERIAL;
	public const string TAG_TITLE;
	public const string TAG_TITLE_SORTNAME;
	public const string TAG_TRACK_COUNT;
	public const string TAG_TRACK_GAIN;
	public const string TAG_TRACK_NUMBER;
	public const string TAG_TRACK_PEAK;
	public const string TAG_VERSION;
	public const string TAG_VIDEO_CODEC;
	public const string TIME_FORMAT;
	public const int USECOND;
	public const int VALUE_EQUAL;
	public const int VALUE_GREATER_THAN;
	public const int VALUE_LESS_THAN;
	public const int VALUE_UNORDERED;
	public const int VERSION_MAJOR;
	public const int VERSION_MICRO;
	public const int VERSION_MINOR;
	public const int VERSION_NANO;
	public static void init (ref string[] args);
	public static void atomic_int_set (int atomic_int, int value);
	public static uint class_signal_connect (pointer klass, string name, pointer func, pointer func_data);
	public static void class_signal_emit_by_name (Gst.Object object, string name, pointer self);
	public static GLib.Quark core_error_quark ();
	public static void debug_add_log_function (Gst.LogFunction func, pointer data);
	public static weak string debug_construct_term_color (uint colorinfo);
	public static weak GLib.SList debug_get_all_categories ();
	public static Gst.DebugLevel debug_get_default_threshold ();
	public static bool debug_is_active ();
	public static bool debug_is_colored ();
	public static weak string debug_level_get_name (Gst.DebugLevel level);
	public static void debug_log (Gst.DebugCategory category, Gst.DebugLevel level, string file, string function, int line, GLib.Object object, string format);
	public static void debug_log_default (Gst.DebugCategory category, Gst.DebugLevel level, string file, string function, int line, GLib.Object object, Gst.DebugMessage message, pointer unused);
	public static void debug_log_valist (Gst.DebugCategory category, Gst.DebugLevel level, string file, string function, int line, GLib.Object object, string format, pointer args);
	public static void debug_print_stack_trace ();
	public static uint debug_remove_log_function (Gst.LogFunction func);
	public static uint debug_remove_log_function_by_data (pointer data);
	public static void debug_set_active (bool active);
	public static void debug_set_colored (bool colored);
	public static void debug_set_default_threshold (Gst.DebugLevel level);
	public static void debug_set_threshold_for_name (string name, Gst.DebugLevel level);
	public static void debug_unset_threshold_for_name (string name);
	public static bool default_registry_check_feature_version (string feature_name, uint min_major, uint min_minor, uint min_micro);
	public static void deinit ();
	public static GLib.Type double_range_get_type ();
	public static weak string error_get_message (GLib.Quark domain, int code);
	public static weak GLib.List filter_run (GLib.List list, Gst.FilterFunc func, bool first, pointer user_data);
	public static weak string flow_get_name (Gst.FlowReturn ret);
	public static GLib.Quark flow_to_quark (Gst.FlowReturn ret);
	public static Gst.Format format_get_by_nick (string nick);
	public static weak Gst.FormatDefinition format_get_details (Gst.Format format);
	public static weak string format_get_name (Gst.Format format);
	public static weak Gst.Iterator format_iterate_definitions ();
	public static Gst.Format format_register (string nick, string description);
	public static GLib.Quark format_to_quark (Gst.Format format);
	public static bool formats_contains (Gst.Format formats, Gst.Format format);
	public static GLib.Type fourcc_get_type ();
	public static GLib.Type fraction_get_type ();
	public static GLib.Type fraction_range_get_type ();
	public static bool init_check (int argc, string argv) throws GLib.Error;
	public static weak GLib.OptionGroup init_get_option_group ();
	public static GLib.Type int_range_get_type ();
	public static bool is_tag_list (pointer p);
	public static GLib.Quark library_error_quark ();
	public static void marshal_BOOLEAN__POINTER (GLib.Closure closure, GLib.Value return_value, uint n_param_values, GLib.Value param_values, pointer invocation_hint, pointer marshal_data);
	public static void marshal_BOOLEAN__VOID (GLib.Closure closure, GLib.Value return_value, uint n_param_values, GLib.Value param_values, pointer invocation_hint, pointer marshal_data);
	public static void marshal_BOXED__BOXED (GLib.Closure closure, GLib.Value return_value, uint n_param_values, GLib.Value param_values, pointer invocation_hint, pointer marshal_data);
	public static void marshal_POINTER__POINTER (GLib.Closure closure, GLib.Value return_value, uint n_param_values, GLib.Value param_values, pointer invocation_hint, pointer marshal_data);
	public static void marshal_VOID__BOXED_OBJECT (GLib.Closure closure, GLib.Value return_value, uint n_param_values, GLib.Value param_values, pointer invocation_hint, pointer marshal_data);
	public static void marshal_VOID__INT64 (GLib.Closure closure, GLib.Value return_value, uint n_param_values, GLib.Value param_values, pointer invocation_hint, pointer marshal_data);
	public static void marshal_VOID__INT_INT (GLib.Closure closure, GLib.Value return_value, uint n_param_values, GLib.Value param_values, pointer invocation_hint, pointer marshal_data);
	public static void marshal_VOID__OBJECT_BOXED (GLib.Closure closure, GLib.Value return_value, uint n_param_values, GLib.Value param_values, pointer invocation_hint, pointer marshal_data);
	public static void marshal_VOID__OBJECT_BOXED_STRING (GLib.Closure closure, GLib.Value return_value, uint n_param_values, GLib.Value param_values, pointer invocation_hint, pointer marshal_data);
	public static void marshal_VOID__OBJECT_OBJECT (GLib.Closure closure, GLib.Value return_value, uint n_param_values, GLib.Value param_values, pointer invocation_hint, pointer marshal_data);
	public static void marshal_VOID__OBJECT_OBJECT_STRING (GLib.Closure closure, GLib.Value return_value, uint n_param_values, GLib.Value param_values, pointer invocation_hint, pointer marshal_data);
	public static void marshal_VOID__OBJECT_PARAM (GLib.Closure closure, GLib.Value return_value, uint n_param_values, GLib.Value param_values, pointer invocation_hint, pointer marshal_data);
	public static void marshal_VOID__OBJECT_POINTER (GLib.Closure closure, GLib.Value return_value, uint n_param_values, GLib.Value param_values, pointer invocation_hint, pointer marshal_data);
	public static void marshal_VOID__OBJECT_STRING (GLib.Closure closure, GLib.Value return_value, uint n_param_values, GLib.Value param_values, pointer invocation_hint, pointer marshal_data);
	public static void marshal_VOID__POINTER_OBJECT (GLib.Closure closure, GLib.Value return_value, uint n_param_values, GLib.Value param_values, pointer invocation_hint, pointer marshal_data);
	public static void marshal_VOID__UINT_BOXED (GLib.Closure closure, GLib.Value return_value, uint n_param_values, GLib.Value param_values, pointer invocation_hint, pointer marshal_data);
	public static weak 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);
	public static weak GLib.ParamSpec param_spec_mini_object (string name, string nick, string blurb, GLib.Type object_type, GLib.ParamFlags flags);
	public static weak Gst.Element parse_bin_from_description (string bin_description, bool ghost_unconnected_pads) throws GLib.Error;
	public static GLib.Quark parse_error_quark ();
	public static weak Gst.Element parse_launch (string pipeline_description) throws GLib.Error;
	[NoArrayLength]
	public static weak Gst.Element parse_launchv (string[] argv) throws GLib.Error;
	public static void print_element_args (GLib.String buf, int indent, Gst.Element element);
	public static void print_pad_caps (GLib.String buf, int indent, Gst.Pad pad);
	public static GLib.Quark resource_error_quark ();
	public static bool segtrap_is_enabled ();
	public static void segtrap_set_enabled (bool enabled);
	public static GLib.Quark stream_error_quark ();
	public static bool tag_exists (string tag);
	public static weak string tag_get_description (string tag);
	public static Gst.TagFlag tag_get_flag (string tag);
	public static weak string tag_get_nick (string tag);
	public static GLib.Type tag_get_type (string tag);
	public static bool tag_is_fixed (string tag);
	public static void tag_merge_strings_with_comma (GLib.Value dest, GLib.Value src);
	public static void tag_merge_use_first (GLib.Value dest, GLib.Value src);
	public static void tag_register (string name, Gst.TagFlag flag, GLib.Type type, string nick, string blurb, Gst.TagMergeFunc func);
	public static bool update_registry ();
	public static weak string uri_construct (string protocol, string location);
	public static weak string uri_get_location (string uri);
	public static weak string uri_get_protocol (string uri);
	public static bool uri_has_protocol (string uri, string protocol);
	public static bool uri_is_valid (string uri);
	public static bool uri_protocol_is_supported (Gst.URIType type, string protocol);
	public static bool uri_protocol_is_valid (string protocol);
	[NoArrayLength]
	public static void util_dump_mem (uchar[] mem, uint size);
	public static uint64 util_gdouble_to_guint64 (double value);
	public static double util_guint64_to_gdouble (uint64 value);
	public static void util_set_object_arg (GLib.Object object, string name, string value);
	public static void util_set_value_from_string (GLib.Value value, string value_str);
	public static uint64 util_uint64_scale (uint64 val, uint64 num, uint64 denom);
	public static uint64 util_uint64_scale_int (uint64 val, int num, int denom);
	public static void value_array_append_value (GLib.Value value, GLib.Value append_value);
	public static uint value_array_get_size (GLib.Value value);
	public static GLib.Type value_array_get_type ();
	public static weak GLib.Value value_array_get_value (GLib.Value value, uint index);
	public static void value_array_prepend_value (GLib.Value value, GLib.Value prepend_value);
	public static bool value_can_compare (GLib.Value value1, GLib.Value value2);
	public static bool value_can_intersect (GLib.Value value1, GLib.Value value2);
	public static bool value_can_subtract (GLib.Value minuend, GLib.Value subtrahend);
	public static bool value_can_union (GLib.Value value1, GLib.Value value2);
	public static int value_compare (GLib.Value value1, GLib.Value value2);
	public static bool value_deserialize (GLib.Value dest, string src);
	public static bool value_fraction_multiply (GLib.Value product, GLib.Value factor1, GLib.Value factor2);
	public static bool value_fraction_subtract (GLib.Value dest, GLib.Value minuend, GLib.Value subtrahend);
	public static weak Gst.Caps value_get_caps (GLib.Value value);
	public static weak GLib.Date value_get_date (GLib.Value value);
	public static double value_get_double_range_max (GLib.Value value);
	public static double value_get_double_range_min (GLib.Value value);
	public static uint value_get_fourcc (GLib.Value value);
	public static int value_get_fraction_denominator (GLib.Value value);
	public static int value_get_fraction_numerator (GLib.Value value);
	public static weak GLib.Value value_get_fraction_range_max (GLib.Value value);
	public static weak GLib.Value value_get_fraction_range_min (GLib.Value value);
	public static int value_get_int_range_max (GLib.Value value);
	public static int value_get_int_range_min (GLib.Value value);
	public static weak Gst.MiniObject value_get_mini_object (GLib.Value value);
	public static weak Gst.Structure value_get_structure (GLib.Value value);
	public static void value_init_and_copy (GLib.Value dest, GLib.Value src);
	public static bool value_intersect (GLib.Value dest, GLib.Value value1, GLib.Value value2);
	public static bool value_is_fixed (GLib.Value value);
	public static void value_list_append_value (GLib.Value value, GLib.Value append_value);
	public static void value_list_concat (GLib.Value dest, GLib.Value value1, GLib.Value value2);
	public static uint value_list_get_size (GLib.Value value);
	public static GLib.Type value_list_get_type ();
	public static weak GLib.Value value_list_get_value (GLib.Value value, uint index);
	public static void value_list_prepend_value (GLib.Value value, GLib.Value prepend_value);
	public static void value_register (Gst.ValueTable table);
	public static void value_register_intersect_func (GLib.Type type1, GLib.Type type2, Gst.ValueIntersectFunc func);
	public static void value_register_subtract_func (GLib.Type minuend_type, GLib.Type subtrahend_type, Gst.ValueSubtractFunc func);
	public static void value_register_union_func (GLib.Type type1, GLib.Type type2, Gst.ValueUnionFunc func);
	public static weak string value_serialize (GLib.Value value);
	public static void value_set_caps (GLib.Value value, Gst.Caps caps);
	public static void value_set_date (GLib.Value value, GLib.Date date);
	public static void value_set_double_range (GLib.Value value, double start, double end);
	public static void value_set_fourcc (GLib.Value value, uint fourcc);
	public static void value_set_fraction (GLib.Value value, int numerator, int denominator);
	public static void value_set_fraction_range (GLib.Value value, GLib.Value start, GLib.Value end);
	public static void value_set_fraction_range_full (GLib.Value value, int numerator_start, int denominator_start, int numerator_end, int denominator_end);
	public static void value_set_int_range (GLib.Value value, int start, int end);
	public static void value_set_mini_object (GLib.Value value, Gst.MiniObject mini_object);
	public static void value_set_structure (GLib.Value value, Gst.Structure structure);
	public static bool value_subtract (GLib.Value dest, GLib.Value minuend, GLib.Value subtrahend);
	public static void value_take_mini_object (GLib.Value value, Gst.MiniObject mini_object);
	public static bool value_union (GLib.Value dest, GLib.Value value1, GLib.Value value2);
	public static void version (uint major, uint minor, uint micro, uint nano);
	public static string version_string ();
}