This file is indexed.

/usr/share/vala-0.16/vapi/gstreamer-0.10.vapi is in valac-0.16-vapi 0.16.1-2ubuntu4.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

   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
2181
2182
2183
2184
2185
2186
2187
2188
2189
2190
2191
2192
2193
2194
2195
2196
2197
2198
2199
2200
2201
2202
2203
2204
2205
2206
2207
2208
2209
2210
2211
2212
2213
2214
2215
2216
2217
2218
2219
2220
2221
2222
2223
2224
2225
2226
2227
2228
2229
2230
2231
2232
2233
2234
2235
2236
2237
2238
2239
2240
2241
2242
2243
2244
2245
2246
2247
2248
2249
2250
2251
2252
2253
2254
2255
2256
2257
2258
2259
2260
2261
2262
2263
2264
2265
2266
2267
2268
2269
2270
2271
2272
2273
2274
2275
2276
2277
2278
2279
2280
2281
2282
2283
2284
2285
2286
2287
2288
2289
2290
2291
2292
2293
2294
2295
2296
2297
2298
2299
2300
2301
2302
2303
2304
2305
2306
2307
2308
2309
2310
2311
2312
2313
2314
2315
2316
2317
2318
2319
2320
2321
2322
2323
2324
2325
2326
2327
2328
2329
2330
2331
2332
2333
2334
2335
2336
2337
2338
2339
2340
2341
2342
2343
2344
2345
2346
2347
2348
2349
2350
2351
2352
2353
2354
2355
2356
2357
2358
2359
2360
2361
2362
2363
2364
2365
2366
2367
2368
2369
2370
2371
2372
2373
2374
2375
2376
2377
2378
2379
2380
2381
2382
2383
2384
2385
2386
2387
2388
2389
2390
2391
2392
2393
2394
2395
2396
2397
2398
2399
2400
2401
2402
2403
2404
2405
2406
2407
2408
2409
2410
2411
2412
2413
2414
2415
2416
2417
2418
2419
2420
2421
2422
2423
2424
2425
2426
2427
2428
2429
2430
2431
2432
2433
2434
2435
2436
2437
2438
2439
2440
2441
2442
2443
2444
2445
2446
2447
2448
2449
2450
2451
2452
2453
2454
2455
2456
2457
2458
2459
2460
2461
2462
2463
2464
2465
2466
2467
2468
2469
2470
2471
2472
2473
2474
2475
2476
2477
2478
2479
2480
2481
2482
2483
2484
2485
2486
2487
2488
2489
2490
2491
2492
2493
2494
2495
2496
2497
2498
2499
2500
2501
2502
2503
2504
2505
2506
2507
2508
2509
2510
2511
2512
2513
2514
2515
2516
2517
2518
2519
2520
2521
2522
2523
2524
2525
2526
2527
2528
2529
2530
2531
2532
2533
2534
2535
2536
2537
2538
2539
2540
2541
2542
2543
2544
2545
2546
2547
2548
2549
2550
2551
2552
2553
2554
2555
2556
2557
2558
2559
2560
2561
2562
2563
2564
2565
2566
2567
2568
2569
2570
2571
2572
2573
2574
2575
2576
2577
2578
2579
2580
2581
2582
2583
2584
2585
2586
2587
2588
2589
2590
2591
2592
2593
2594
2595
2596
2597
2598
2599
2600
2601
2602
2603
2604
2605
2606
2607
2608
2609
2610
2611
2612
2613
2614
2615
2616
2617
2618
2619
2620
2621
2622
2623
2624
2625
2626
2627
2628
2629
2630
2631
2632
2633
2634
2635
2636
2637
2638
2639
2640
2641
2642
2643
2644
2645
2646
2647
2648
2649
2650
2651
2652
2653
2654
2655
2656
2657
2658
2659
2660
2661
2662
2663
2664
2665
2666
2667
2668
2669
2670
2671
2672
2673
2674
2675
2676
2677
2678
2679
2680
2681
2682
2683
2684
2685
2686
2687
2688
2689
2690
2691
2692
2693
2694
2695
2696
2697
2698
2699
2700
2701
2702
2703
2704
2705
2706
2707
2708
2709
2710
2711
2712
2713
2714
2715
2716
2717
2718
2719
2720
2721
2722
2723
2724
2725
2726
2727
2728
2729
2730
2731
2732
2733
2734
2735
2736
2737
2738
2739
2740
2741
2742
2743
2744
2745
2746
2747
2748
2749
2750
2751
2752
2753
2754
2755
2756
2757
2758
2759
2760
2761
2762
2763
2764
2765
2766
2767
2768
2769
2770
2771
2772
2773
2774
2775
2776
2777
2778
2779
2780
2781
2782
2783
2784
2785
2786
2787
2788
2789
2790
2791
2792
2793
2794
2795
2796
2797
2798
2799
2800
2801
2802
2803
2804
2805
2806
2807
2808
2809
2810
2811
2812
2813
2814
2815
2816
2817
2818
2819
2820
2821
2822
2823
2824
2825
2826
2827
2828
2829
2830
2831
2832
2833
2834
2835
2836
2837
2838
2839
2840
2841
2842
2843
2844
2845
2846
2847
2848
2849
2850
2851
2852
2853
2854
2855
2856
2857
2858
2859
2860
2861
2862
2863
2864
2865
2866
2867
2868
2869
2870
2871
2872
2873
2874
2875
2876
2877
2878
2879
2880
2881
2882
2883
2884
2885
2886
2887
2888
2889
2890
2891
2892
2893
2894
2895
2896
2897
2898
2899
2900
2901
2902
2903
2904
2905
2906
2907
2908
2909
2910
2911
2912
2913
2914
2915
2916
2917
2918
2919
2920
2921
2922
2923
2924
2925
2926
2927
2928
2929
2930
2931
2932
2933
2934
2935
2936
2937
2938
2939
2940
2941
2942
2943
2944
2945
2946
2947
2948
2949
2950
2951
2952
2953
2954
2955
2956
2957
2958
2959
2960
2961
2962
2963
2964
2965
2966
2967
2968
2969
2970
2971
2972
2973
2974
2975
2976
2977
2978
2979
2980
2981
2982
2983
2984
2985
2986
2987
2988
2989
2990
2991
2992
2993
2994
2995
2996
2997
2998
2999
3000
3001
3002
3003
3004
3005
3006
3007
3008
3009
3010
3011
3012
3013
3014
3015
3016
3017
3018
3019
3020
3021
3022
3023
3024
3025
3026
3027
3028
3029
3030
3031
3032
3033
3034
3035
3036
3037
3038
3039
3040
3041
3042
3043
3044
3045
3046
3047
3048
3049
3050
3051
3052
3053
3054
3055
3056
3057
3058
3059
3060
3061
3062
3063
3064
3065
3066
3067
3068
3069
/* gstreamer-0.10.vapi generated by vapigen, do not modify. */

[CCode (cprefix = "Gst", lower_case_cprefix = "gst_")]
namespace Gst {
	[CCode (cheader_filename = "gst/gst.h")]
	[Compact]
	public class AllocTrace {
		public int flags;
		public int live;
		public weak GLib.SList<weak void*> mem_live;
		public weak string name;
		public static bool available ();
		public static unowned Gst.AllocTrace @get (string name);
		public static unowned GLib.List<Gst.AllocTrace> 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", ref_function = "gst_atomic_queue_ref", ref_function_void = true, unref_function = "gst_atomic_queue_unref")]
	[Compact]
	public class AtomicQueue {
		[CCode (has_construct_function = false)]
		public AtomicQueue (uint initial_size);
		public uint length ();
		public void* peek ();
		public void* pop ();
		public void push (void* data);
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class Bin : Gst.Element, Gst.ChildProxy {
		public weak Gst.Bus child_bus;
		public weak GLib.List<Gst.Element> children;
		public uint32 children_cookie;
		public bool clock_dirty;
		public weak Gst.Element clock_provider;
		public weak GLib.List<Gst.Message> messages;
		public int numchildren;
		public bool polling;
		public weak Gst.Clock provided_clock;
		public bool state_dirty;
		[CCode (has_construct_function = false, type = "GstElement*")]
		public Bin (string? name);
		public bool add (Gst.Element element);
		[NoWrapper]
		public virtual bool add_element (Gst.Element element);
		public void add_many (params Gst.Element[] elements);
		public Gst.Pad? find_unconnected_pad (Gst.PadDirection direction);
		public Gst.Pad? find_unlinked_pad (Gst.PadDirection direction);
		public Gst.Element? get_by_interface (GLib.Type iface);
		public Gst.Element? get_by_name (string name);
		public Gst.Element? get_by_name_recurse_up (string name);
		[NoWrapper]
		public virtual void handle_message (Gst.Message message);
		public Gst.Iterator<Gst.Element> iterate_all_by_interface (GLib.Type iface);
		public Gst.Iterator<Gst.Element> iterate_elements ();
		public Gst.Iterator<Gst.Element> iterate_recurse ();
		public Gst.Iterator<Gst.Element> iterate_sinks ();
		public Gst.Iterator<Gst.Element> iterate_sorted ();
		public Gst.Iterator<Gst.Element> iterate_sources ();
		public bool recalculate_latency ();
		public bool remove (Gst.Element element);
		[NoWrapper]
		public virtual bool remove_element (Gst.Element element);
		public void remove_many (params Gst.Element[] elements);
		[NoAccessorMethod]
		public bool async_handling { get; set; }
		[NoAccessorMethod]
		public bool message_forward { get; set; }
		public virtual signal bool do_latency ();
		public virtual signal void element_added (Gst.Element child);
		public virtual signal void element_removed (Gst.Element child);
	}
	[CCode (cheader_filename = "gst/gst.h", ref_function = "gst_buffer_ref", unref_function = "gst_buffer_unref")]
	public class Buffer : Gst.MiniObject {
		public weak Gst.Caps caps;
		[CCode (array_length_cname = "size", array_length_type = "guint")]
		public weak uint8[] data;
		public Gst.ClockTime duration;
		public weak GLib.FreeFunc free_func;
		public void* malloc_data;
		public uint64 offset;
		public uint64 offset_end;
		public weak Gst.Buffer parent;
		public uint size;
		public Gst.ClockTime timestamp;
		[CCode (has_construct_function = false)]
		public Buffer ();
		[CCode (has_construct_function = false)]
		public Buffer.and_alloc (uint size);
		public Gst.Buffer copy ();
		public void copy_metadata (Gst.Buffer src, Gst.BufferCopyFlags flags);
		public Gst.Buffer create_sub (uint offset, uint size);
		[CCode (cname = "GST_BUFFER_DURATION_IS_VALID")]
		public bool duration_is_valid ();
		[CCode (cname = "GST_BUFFER_FLAG_IS_SET")]
		public bool flag_is_set (Gst.BufferFlag flag);
		[CCode (cname = "GST_BUFFER_FLAG_SET")]
		public void flag_set (Gst.BufferFlag flag);
		[CCode (cname = "GST_BUFFER_FLAG_UNSET")]
		public void flag_unset (Gst.BufferFlag flag);
		public Gst.Caps get_caps ();
		[CCode (cname = "GST_BUFFER_IS_DISCONT")]
		public bool is_discont ();
		public bool is_metadata_writable ();
		public bool is_span_fast (Gst.Buffer buf2);
		[ReturnsModifiedPointer]
		public void join (owned Gst.Buffer buf2);
		[ReturnsModifiedPointer]
		public void make_metadata_writable ();
		[ReturnsModifiedPointer]
		public void make_writable ();
		public Gst.Buffer merge (Gst.Buffer buf2);
		[CCode (cname = "GST_BUFFER_OFFSET_END_IS_VALID")]
		public bool offset_end_is_valid ();
		[CCode (cname = "GST_BUFFER_OFFSET_IS_VALID")]
		public bool offset_is_valid ();
		public unowned Gst.Buffer @ref ();
		public static void replace (ref Gst.Buffer? oldobj, Gst.Buffer? newobj);
		public void set_caps (Gst.Caps caps);
		public Gst.Buffer span (uint32 offset, Gst.Buffer buf2, uint32 len);
		public void stamp (Gst.Buffer src);
		[CCode (cname = "GST_BUFFER_TIMESTAMP_IS_VALID")]
		public bool timestamp_is_valid ();
		public static Gst.Buffer? try_new_and_alloc (uint size);
		public void unref ();
	}
	[CCode (cheader_filename = "gst/gst.h", ref_function = "gst_buffer_list_ref", unref_function = "gst_buffer_list_unref")]
	public class BufferList : Gst.MiniObject {
		[CCode (has_construct_function = false)]
		public BufferList ();
		public Gst.BufferList copy ();
		public void @foreach (Gst.BufferListFunc func);
		public unowned Gst.Buffer? @get (uint group, uint idx);
		public Gst.BufferListIterator iterate ();
		[ReturnsModifiedPointer]
		public void make_writable ();
		public uint n_groups ();
		public unowned Gst.BufferList @ref ();
		public void unref ();
	}
	[CCode (cheader_filename = "gst/gst.h", type_id = "gst_buffer_list_iterator_get_type ()")]
	[Compact]
	public class BufferListIterator {
		public void add (owned Gst.Buffer buffer);
		public void add_group ();
		public void add_list (GLib.List list);
		public unowned Gst.Buffer? @do (Gst.BufferListDoFunction do_func);
		public Gst.Buffer? merge_group ();
		public uint n_buffers ();
		public unowned Gst.Buffer? next ();
		public bool next_group ();
		public void remove ();
		public unowned Gst.Buffer? steal ();
		public void take (owned Gst.Buffer buffer);
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class Bus : Gst.Object {
		[CCode (has_construct_function = false)]
		public Bus ();
		public void add_signal_watch ();
		public void add_signal_watch_full (int priority);
		[CCode (cname = "gst_bus_add_watch_full")]
		public uint add_watch (owned Gst.BusFunc func, [CCode (pos = 0.1)] int priority = GLib.Priority.DEFAULT);
		public uint add_watch_full (int priority, owned Gst.BusFunc func);
		[CCode (instance_pos = -1)]
		public bool async_signal_func (Gst.Bus bus, Gst.Message message);
		public GLib.TimeoutSource create_watch ();
		public void disable_sync_message_emission ();
		public void enable_sync_message_emission ();
		public bool have_pending ();
		public Gst.Message? peek ();
		public Gst.Message? poll (Gst.MessageType events, Gst.ClockTimeDiff timeout);
		public Gst.Message? pop ();
		public Gst.Message? pop_filtered (Gst.MessageType types);
		public bool post (owned Gst.Message message);
		public void remove_signal_watch ();
		public void set_flushing (bool flushing);
		public void set_sync_handler (Gst.BusSyncHandler? func);
		[CCode (instance_pos = -1)]
		public Gst.BusSyncReply sync_signal_handler (Gst.Bus bus, Gst.Message message);
		public Gst.Message? timed_pop (Gst.ClockTime timeout);
		public Gst.Message? timed_pop_filtered (Gst.ClockTime timeout, Gst.MessageType types);
		public virtual signal void message (Gst.Message message);
		public virtual signal void sync_message (Gst.Message message);
	}
	[CCode (cheader_filename = "gst/gst.h", ref_function = "gst_caps_ref", unref_function = "gst_caps_unref")]
	public class Caps {
		public Gst.CapsFlags flags;
		[CCode (has_construct_function = false)]
		public Caps.any ();
		public void append (owned Gst.Caps caps2);
		public void append_structure (owned Gst.Structure structure);
		public bool can_intersect (Gst.Caps caps2);
		public Gst.Caps copy ();
		public Gst.Caps copy_nth (uint nth);
		public bool do_simplify ();
		[CCode (has_construct_function = false)]
		public Caps.empty ();
		public static Gst.Caps from_string (string str);
		[CCode (has_construct_function = false)]
		public Caps.full (Gst.Structure struct1, ...);
		[CCode (has_construct_function = false)]
		public Caps.full_valist (Gst.Structure structure, void* var_args);
		public uint get_size ();
		public unowned Gst.Structure get_structure (uint index);
		public Gst.Caps intersect (Gst.Caps caps2);
		public unowned Gst.Caps intersect_full (Gst.Caps caps2, Gst.CapsIntersectMode mode);
		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 ();
		[CCode (cname = "GST_CAPS_IS_SIMPLE")]
		public bool is_simple ();
		public bool is_subset (Gst.Caps superset);
		public bool is_subset_structure (Gst.Structure structure);
		public static Gst.Caps load_thyself (void* parent);
		[ReturnsModifiedPointer]
		public void make_writable ();
		public void merge (owned Gst.Caps caps2);
		public void merge_structure (owned Gst.Structure structure);
		public Gst.Caps normalize ();
		public unowned Gst.Caps @ref ();
		public void remove_structure (uint idx);
		public static void replace (ref Gst.Caps? oldobj, Gst.Caps? newobj);
		public void* save_thyself (void* parent);
		public void set_simple (string field, ...);
		public void set_simple_valist (string field, void* varargs);
		public void set_value (string field, GLib.Value value);
		[CCode (has_construct_function = false)]
		public Caps.simple (string media_type, string fieldname, ...);
		public unowned Gst.Structure steal_structure (uint index);
		public Gst.Caps subtract (Gst.Caps subtrahend);
		public string to_string ();
		public void truncate ();
		public Gst.Caps union (Gst.Caps caps2);
		public void unref ();
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public abstract class Clock : Gst.Object {
		public weak Gst.ClockID clockid;
		public weak GLib.List<Gst.ClockEntry> entries;
		public weak GLib.Cond entries_changed;
		public Gst.ClockTime external_calibration;
		public bool filling;
		public Gst.ClockTime internal_calibration;
		public Gst.ClockTime last_time;
		public weak Gst.Clock master;
		public Gst.ClockTime rate_denominator;
		public Gst.ClockTime rate_numerator;
		public Gst.ClockTime resolution;
		public weak GLib.Mutex slave_lock;
		public int time_index;
		[CCode (array_length = false)]
		public weak Gst.ClockTime[] times;
		[CCode (has_construct_function = false)]
		protected Clock ();
		public bool add_observation (Gst.ClockTime slave, Gst.ClockTime master, out double r_squared);
		public Gst.ClockTime adjust_unlocked (Gst.ClockTime @internal);
		[NoWrapper]
		public virtual Gst.ClockTime change_resolution (Gst.ClockTime old_resolution, Gst.ClockTime new_resolution);
		public void get_calibration (out Gst.ClockTime @internal, out Gst.ClockTime external, out Gst.ClockTime rate_num, out Gst.ClockTime rate_denom);
		public virtual Gst.ClockTime get_internal_time ();
		public Gst.Clock? get_master ();
		public virtual Gst.ClockTime get_resolution ();
		public Gst.ClockTime get_time ();
		public bool periodic_id_reinit (Gst.ClockID id, Gst.ClockTime start_time, Gst.ClockTime interval);
		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 Gst.ClockTime set_resolution (Gst.ClockTime resolution);
		public bool single_shot_id_reinit (Gst.ClockID id, Gst.ClockTime time);
		public Gst.ClockTime unadjust_unlocked (Gst.ClockTime external);
		[NoWrapper]
		public virtual void unschedule (Gst.ClockEntry entry);
		[NoWrapper]
		public virtual Gst.ClockReturn wait (Gst.ClockEntry entry);
		[NoWrapper]
		public virtual Gst.ClockReturn wait_async (Gst.ClockEntry entry);
		[NoWrapper]
		public virtual Gst.ClockReturn wait_jitter (Gst.ClockEntry entry, out Gst.ClockTimeDiff jitter);
		[NoAccessorMethod]
		public bool stats { get; set; }
		[NoAccessorMethod]
		public uint64 timeout { get; set; }
		[NoAccessorMethod]
		public int window_size { get; set; }
		[NoAccessorMethod]
		public int window_threshold { get; set; }
	}
	[CCode (cheader_filename = "gst/gst.h")]
	[Compact]
	public class ClockEntry {
		public weak Gst.Clock clock;
		public weak GLib.DestroyNotify destroy_data;
		public weak Gst.ClockCallback func;
		public Gst.ClockTime interval;
		public int refcount;
		public Gst.ClockReturn status;
		public Gst.ClockTime time;
		public Gst.ClockEntryType type;
		public bool unscheduled;
		public void* user_data;
		public bool woken_up;
	}
	[CCode (cheader_filename = "gst/gst.h", ref_function = "gst_clock_id_ref", unref_function = "gst_clock_id_unref")]
	[Compact]
	public class ClockID {
		public static int compare_func (void* id1, void* id2);
		public Gst.ClockTime get_time ();
		[CCode (cname = "gst_clock_new_periodic_id")]
		public ClockID.periodic (Gst.Clock clock, Gst.ClockTime start_time, Gst.ClockTime interval);
		[CCode (cname = "gst_clock_new_single_shot_id")]
		public ClockID.single_shot (Gst.Clock clock, Gst.ClockTime time);
		public void unschedule ();
		public Gst.ClockReturn wait (out Gst.ClockTimeDiff jitter);
		public Gst.ClockReturn wait_async (Gst.ClockCallback func);
		public Gst.ClockReturn wait_async_full (Gst.ClockCallback func, GLib.DestroyNotify destroy_data);
	}
	[CCode (cheader_filename = "gst/gst.h", type_id = "gst_date_get_type ()")]
	[Compact]
	public class Date {
	}
	[CCode (cheader_filename = "gst/gst.h", ref_function = "gst_date_time_ref", type_id = "gst_date_time_get_type ()", unref_function = "gst_date_time_unref")]
	[Compact]
	public class DateTime {
		[CCode (has_construct_function = false)]
		public DateTime (float tzoffset, int year, int month, int day, int hour, int minute, double seconds);
		[CCode (has_construct_function = false)]
		public DateTime.from_unix_epoch_local_time (int64 secs);
		[CCode (has_construct_function = false)]
		public DateTime.from_unix_epoch_utc (int64 secs);
		public int get_day ();
		public int get_hour ();
		public int get_microsecond ();
		public int get_minute ();
		public int get_month ();
		public int get_second ();
		public float get_time_zone_offset ();
		public int get_year ();
		[CCode (has_construct_function = false)]
		public DateTime.local_time (int year, int month, int day, int hour, int minute, double seconds);
		[CCode (has_construct_function = false)]
		public DateTime.now_local_time ();
		[CCode (has_construct_function = false)]
		public DateTime.now_utc ();
	}
	[CCode (cheader_filename = "gst/gst.h")]
	[Compact]
	public class DebugCategory {
		[CCode (cname = "GST_CAT_DEBUG")]
		public void debug (string format, ...);
		[CCode (cname = "GST_CAT_DEBUG_OBJECT")]
		public void debug_object (GLib.Object obj, string format, ...);
		[CCode (cname = "GST_CAT_ERROR")]
		public void error (string format, ...);
		[CCode (cname = "GST_CAT_ERROR_OBJECT")]
		public void error_object (GLib.Object obj, string format, ...);
		[CCode (cname = "GST_DEBUG_CATEGORY_GET")]
		public static unowned Gst.DebugCategory @get (string name);
		public uint get_color ();
		public unowned string get_description ();
		public unowned string get_name ();
		public Gst.DebugLevel get_threshold ();
		[CCode (cname = "GST_CAT_INFO")]
		public void info (string format, ...);
		[CCode (cname = "GST_CAT_INFO_OBJECT")]
		public void info_object (GLib.Object obj, string format, ...);
		[CCode (cname = "GST_DEBUG_CATEGORY_INIT")]
		public void init (string name, uint color, string description);
		[CCode (cname = "GST_CAT_LOG")]
		public void log (string format, ...);
		[CCode (cname = "GST_CAT_LOG_OBJECT")]
		public void log_object (GLib.Object obj, string format, ...);
		public void reset_threshold ();
		public void set_threshold (Gst.DebugLevel level);
		[CCode (cname = "GST_CAT_WARNING")]
		public void warning (string format, ...);
		[CCode (cname = "GST_CAT_WARNING_OBJECT")]
		public void warning_object (GLib.Object obj, string format, ...);
	}
	[CCode (cheader_filename = "gst/gst.h")]
	[Compact]
	public class DebugMessage {
		public unowned string @get ();
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public abstract class Element : Gst.Object {
		public Gst.ClockTimeDiff base_time;
		public weak Gst.Bus bus;
		public weak Gst.Clock clock;
		public Gst.State current_state;
		public Gst.StateChangeReturn last_return;
		public Gst.State next_state;
		public uint16 numpads;
		public uint16 numsinkpads;
		public uint16 numsrcpads;
		public weak GLib.List<Gst.Pad> pads;
		public uint32 pads_cookie;
		public Gst.State pending_state;
		public weak GLib.List<Gst.Pad> sinkpads;
		public weak GLib.List<Gst.Pad> srcpads;
		public weak GLib.Cond state_cond;
		public uint32 state_cookie;
		public GLib.StaticRecMutex state_lock;
		[CCode (cname = "abidata.ABI.target_state")]
		public Gst.State target_state;
		[CCode (has_construct_function = false)]
		protected Element ();
		public void abort_state ();
		public bool add_pad (Gst.Pad pad);
		[CCode (cname = "gst_element_class_add_pad_template")]
		public class void add_pad_template (Gst.PadTemplate templ);
		public virtual Gst.StateChangeReturn change_state (Gst.StateChange transition);
		public Gst.StateChangeReturn continue_state (Gst.StateChangeReturn ret);
		public void create_all_pads ();
		public void found_tags (owned Gst.TagList list);
		public void found_tags_for_pad (Gst.Pad pad, owned Gst.TagList list);
		public Gst.ClockTime get_base_time ();
		public Gst.Bus? get_bus ();
		public Gst.Clock? get_clock ();
		public Gst.Pad? get_compatible_pad (Gst.Pad pad, Gst.Caps? caps);
		public unowned Gst.PadTemplate? get_compatible_pad_template (Gst.PadTemplate compattempl);
		public unowned Gst.ElementFactory? get_factory ();
		public virtual Gst.Index? get_index ();
		public Gst.Pad? get_pad (string name);
		[CCode (cname = "gst_element_class_get_pad_template")]
		public class unowned Gst.PadTemplate? get_pad_template (string name);
		[CCode (cname = "gst_element_class_get_pad_template_list")]
		public class unowned GLib.List<Gst.PadTemplate> get_pad_template_list ();
		[CCode (array_length = false)]
		public virtual unowned Gst.QueryType[]? get_query_types ();
		public Gst.Pad? get_request_pad (string name);
		public Gst.ClockTime get_start_time ();
		public virtual Gst.StateChangeReturn get_state (out Gst.State state, out Gst.State pending, Gst.ClockTime timeout);
		public Gst.Pad? get_static_pad (string name);
		public bool implements_interface (GLib.Type iface_type);
		[CCode (cname = "gst_element_class_install_std_props")]
		public class void install_std_props (...);
		public bool is_indexable ();
		public bool is_locked_state ();
		public Gst.Iterator<Gst.Pad> iterate_pads ();
		public Gst.Iterator<Gst.Pad> iterate_sink_pads ();
		public Gst.Iterator<Gst.Pad> 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 bool link_pads_full (string srcpadname, Gst.Element dest, string destpadname, Gst.PadLinkCheck flags);
		public void lost_state ();
		public void lost_state_full (bool new_base_time);
		[CCode (returns_floating_reference = true)]
		public static Gst.Element? make_from_uri (Gst.URIType type, string uri, string? elementname);
		public void message_full (Gst.MessageType type, GLib.Quark domain, int code, owned string? text, owned string? debug, string file, string function, int line);
		public bool post_message (owned Gst.Message message);
		public virtual 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, ref Gst.Format dest_format, out 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);
		[NoWrapper]
		public virtual void release_pad (Gst.Pad pad);
		public void release_request_pad (Gst.Pad pad);
		public bool remove_pad (Gst.Pad pad);
		[NoWrapper]
		public virtual unowned Gst.Pad request_new_pad (Gst.PadTemplate templ, string? name);
		[NoWrapper]
		public virtual unowned Gst.Pad request_new_pad_full (Gst.PadTemplate templ, string name, Gst.Caps caps);
		public unowned Gst.Pad request_pad (Gst.PadTemplate templ, string name, Gst.Caps caps);
		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 (owned 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);
		[CCode (cname = "gst_element_class_set_details")]
		public class void set_details (Gst.ElementDetails details);
		[CCode (cname = "gst_element_class_set_details_simple")]
		public class void set_details_simple (string longname, string classification, string description, string author);
		[CCode (cname = "gst_element_class_set_documentation_uri")]
		public class void set_documentation_uri (string uri);
		[CCode (cname = "gst_element_class_set_icon_name")]
		public class void set_icon_name (string name);
		public virtual void set_index (Gst.Index? index);
		public bool set_locked_state (bool locked_state);
		public void set_start_time (Gst.ClockTime time);
		public virtual Gst.StateChangeReturn set_state (Gst.State state);
		[NoWrapper]
		public virtual void state_changed (Gst.State oldstate, Gst.State newstate, Gst.State pending);
		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 virtual signal void no_more_pads ();
		public virtual signal void pad_added (Gst.Pad pad);
		public virtual signal void pad_removed (Gst.Pad pad);
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class ElementFactory : Gst.PluginFeature {
		[CCode (has_construct_function = false)]
		protected ElementFactory ();
		public bool can_sink_all_caps (Gst.Caps caps);
		public bool can_sink_any_caps (Gst.Caps caps);
		public bool can_sink_caps (Gst.Caps caps);
		public bool can_src_all_caps (Gst.Caps caps);
		public bool can_src_any_caps (Gst.Caps caps);
		public bool can_src_caps (Gst.Caps caps);
		[CCode (returns_floating_reference = true)]
		public Gst.Element? create (string? name);
		public static Gst.ElementFactory? find (string name);
		public unowned string get_author ();
		public unowned string get_description ();
		public unowned string get_documentation_uri ();
		public GLib.Type get_element_type ();
		public unowned string get_icon_name ();
		public unowned string get_klass ();
		public unowned string get_longname ();
		public uint get_num_pad_templates ();
		public unowned GLib.List<Gst.StaticPadTemplate> get_static_pad_templates ();
		[CCode (array_length = false, array_null_terminated = true)]
		public string[]? get_uri_protocols ();
		public int get_uri_type ();
		public bool has_interface (string interfacename);
		public static GLib.List<Gst.ElementFactory> list_filter (GLib.List<Gst.ElementFactory> list, Gst.Caps caps, Gst.PadDirection direction, bool subsetonly);
		public static GLib.List<Gst.ElementFactory> list_get_elements (Gst.ElementFactoryListType type, Gst.Rank minrank);
		public bool list_is_type (Gst.ElementFactoryListType type);
		[CCode (returns_floating_reference = true)]
		public static Gst.Element? make (string factoryname, string? name);
	}
	[CCode (cheader_filename = "gst/gst.h", ref_function = "gst_event_ref", unref_function = "gst_event_unref")]
	public class Event : Gst.MiniObject {
		public weak Gst.Object src;
		public uint64 timestamp;
		public Gst.EventType type;
		[CCode (has_construct_function = false)]
		public Event.buffer_size (Gst.Format format, int64 minsize, int64 maxsize, bool @async);
		public Gst.Event copy ();
		[CCode (has_construct_function = false)]
		public Event.custom (Gst.EventType type, owned Gst.Structure structure);
		[CCode (has_construct_function = false)]
		public Event.eos ();
		[CCode (has_construct_function = false)]
		public Event.flush_start ();
		[CCode (has_construct_function = false)]
		public Event.flush_stop ();
		public uint32 get_seqnum ();
		public unowned Gst.Structure get_structure ();
		public bool has_name (string name);
		[CCode (cname = "GST_EVENT_IS_DOWNSTREAM")]
		public bool is_downstream ();
		[CCode (cname = "GST_EVENT_IS_SERIALIZED")]
		public bool is_serialized ();
		[CCode (cname = "GST_EVENT_IS_UPSTREAM")]
		public bool is_upstream ();
		[CCode (has_construct_function = false)]
		public Event.latency (Gst.ClockTime latency);
		[CCode (has_construct_function = false)]
		public Event.navigation (owned Gst.Structure structure);
		[CCode (has_construct_function = false)]
		public Event.new_segment (bool update, double rate, Gst.Format format, int64 start, int64 stop, int64 position);
		[CCode (has_construct_function = false)]
		public Event.new_segment_full (bool update, double rate, double applied_rate, Gst.Format format, int64 start, int64 stop, int64 position);
		public void parse_buffer_size (out Gst.Format format, out int64 minsize, out int64 maxsize, out bool @async);
		public void parse_latency (out Gst.ClockTime latency);
		public void parse_new_segment (out bool update, out double rate, out Gst.Format format, out int64 start, out int64 stop, out int64 position);
		public void parse_new_segment_full (out bool update, out double rate, out double applied_rate, out Gst.Format format, out int64 start, out int64 stop, out int64 position);
		public void parse_qos (out double proportion, out Gst.ClockTimeDiff diff, out Gst.ClockTime timestamp);
		public void parse_qos_full (out Gst.QOSType type, out double proportion, out Gst.ClockTimeDiff diff, out Gst.ClockTime timestamp);
		public void parse_seek (out double rate, out Gst.Format format, out Gst.SeekFlags flags, out Gst.SeekType start_type, out int64 start, out Gst.SeekType stop_type, out int64 stop);
		public void parse_sink_message (out unowned Gst.Message msg);
		public void parse_step (out Gst.Format format, out uint64 amount, out double rate, out bool flush, out bool intermediate);
		public void parse_tag (out unowned Gst.TagList taglist);
		[CCode (has_construct_function = false)]
		public Event.qos (double proportion, Gst.ClockTimeDiff diff, Gst.ClockTime timestamp);
		[CCode (has_construct_function = false)]
		public Event.qos_full (Gst.QOSType type, double proportion, Gst.ClockTimeDiff diff, Gst.ClockTime timestamp);
		public unowned Gst.Event @ref ();
		public static void replace (ref Gst.Event? oldobj, Gst.Event? newobj);
		[CCode (has_construct_function = false)]
		public Event.seek (double rate, Gst.Format format, Gst.SeekFlags flags, Gst.SeekType start_type, int64 start, Gst.SeekType stop_type, int64 stop);
		public void set_seqnum (uint32 seqnum);
		[CCode (has_construct_function = false)]
		public Event.sink_message (owned Gst.Message msg);
		[CCode (has_construct_function = false)]
		public Event.step (Gst.Format format, uint64 amount, double rate, bool flush, bool intermediate);
		[CCode (has_construct_function = false)]
		public Event.tag (owned Gst.TagList taglist);
		public static Gst.EventTypeFlags type_get_flags (Gst.EventType type);
		public static unowned string type_get_name (Gst.EventType type);
		public static GLib.Quark type_to_quark (Gst.EventType type);
		public void unref ();
	}
	[CCode (cheader_filename = "gst/gst.h", type_id = "gst_g_error_get_type ()")]
	[Compact]
	public class GError {
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class GhostPad : Gst.Pad {
		[CCode (has_construct_function = false, type = "GstPad*")]
		public GhostPad (string? name, Gst.Pad target);
		public static bool activate_pull_default (Gst.Pad pad, bool active);
		public static bool activate_push_default (Gst.Pad pad, bool active);
		[CCode (has_construct_function = false, type = "GstPad*")]
		public GhostPad.from_template (string? name, Gst.Pad target, Gst.PadTemplate templ);
		public Gst.Pad? get_target ();
		public static bool internal_activate_pull_default (Gst.Pad pad, bool active);
		public static bool internal_activate_push_default (Gst.Pad pad, bool active);
		public static Gst.PadLinkReturn link_default (Gst.Pad pad, Gst.Pad peer);
		[CCode (has_construct_function = false, type = "GstPad*")]
		public GhostPad.no_target (string? name, Gst.PadDirection dir);
		[CCode (has_construct_function = false, type = "GstPad*")]
		public GhostPad.no_target_from_template (string? name, Gst.PadTemplate templ);
		public bool set_target (Gst.Pad? newtarget);
		public static bool setcaps_default (Gst.Pad pad, Gst.Caps caps);
		public static void unlink_default (Gst.Pad pad);
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public abstract class Index : Gst.Object {
		[CCode (has_construct_function = false)]
		public Index ();
		public unowned Gst.IndexEntry add_association (int id, Gst.AssocFlags flags, Gst.Format format, int64 value, ...);
		public unowned Gst.IndexEntry? add_associationv (int id, Gst.AssocFlags flags, [CCode (array_length_pos = 2.9)] Gst.IndexAssociation[] list);
		[NoWrapper]
		public virtual void add_entry (Gst.IndexEntry entry);
		public unowned Gst.IndexEntry? add_format (int id, Gst.Format format);
		public unowned Gst.IndexEntry? add_id (int id, string description);
		public unowned Gst.IndexEntry? add_object (int id, string key, GLib.Type type, void* object);
		public virtual void commit (int id);
		public virtual unowned Gst.IndexEntry? get_assoc_entry (int id, Gst.IndexLookupMethod method, Gst.AssocFlags flags, Gst.Format format, int64 value);
		public unowned Gst.IndexEntry? get_assoc_entry_full (int id, Gst.IndexLookupMethod method, Gst.AssocFlags flags, Gst.Format format, int64 value, GLib.CompareDataFunc func);
		public Gst.IndexCertainty get_certainty ();
		public int get_group ();
		public virtual bool get_writer_id (Gst.Object writer, out int id);
		[CCode (cname = "GST_INDEX_IS_READABLE")]
		public bool is_readable ();
		[CCode (cname = "GST_INDEX_IS_WRITABLE")]
		public bool is_writable ();
		public int new_group ();
		public void set_certainty (Gst.IndexCertainty certainty);
		[CCode (cname = "gst_index_set_filter_full")]
		public void set_filter (owned Gst.IndexFilter filter);
		public bool set_group (int groupnum);
		[CCode (cname = "gst_index_set_resolver_full")]
		public void set_resolver (owned Gst.IndexResolver resolver);
		[NoAccessorMethod]
		public Gst.IndexResolver resolver { owned get; set; }
		public virtual signal void entry_added (Gst.IndexEntry entry);
	}
	[CCode (cheader_filename = "gst/gst.h", copy_function = "gst_index_entry_copy")]
	[Compact]
	public class IndexEntry {
		public Gst.IndexEntryType type;
		[CCode (cname = "GST_INDEX_ASSOC_FLAGS")]
		public Gst.AssocFlags assoc_flags ();
		[CCode (cname = "GST_INDEX_ASSOC_FORMAT")]
		public Gst.Format assoc_format (int i);
		public bool assoc_map (Gst.Format format, out int64 value);
		[CCode (cname = "GST_INDEX_ASSOC_VALUE")]
		public Gst.IndexAssociation assoc_value (int i);
		public Gst.IndexEntry copy ();
		[CCode (cname = "GST_INDEX_FORMAT_FORMAT")]
		public Gst.Format format_format ();
		[CCode (cname = "GST_INDEX_FORMAT_KEY")]
		public unowned string format_key ();
		[CCode (cname = "GST_INDEX_ID_DESCRIPTION")]
		public unowned string id_description ();
		[CCode (cname = "GST_INDEX_NASSOCS")]
		public int n_assocs ();
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class IndexFactory : Gst.PluginFeature {
		public weak string longdesc;
		public GLib.Type type;
		[CCode (has_construct_function = false)]
		public IndexFactory (string name, string longdesc, GLib.Type type);
		public Gst.Index create ();
		public void destroy ();
		public static Gst.IndexFactory? find (string name);
		public static Gst.Index? make (string name);
	}
	[CCode (cheader_filename = "gst/gst.h")]
	[Compact]
	public class Iterator<T> {
		public uint32 cookie;
		public weak GLib.Mutex @lock;
		public void* master_cookie;
		public weak Gst.Iterator pushed;
		public GLib.Type type;
		[CCode (has_construct_function = false)]
		public Iterator (uint size, GLib.Type type, GLib.Mutex @lock, ref uint32 master_cookie, Gst.IteratorNextFunction<T> next, Gst.IteratorItemFunction<T> item, Gst.IteratorResyncFunction resync, Gst.IteratorFreeFunction free);
		public T find_custom (GLib.CompareFunc func, T user_data);
		public Gst.IteratorResult fold ([CCode (delegate_target_pos = 2.1)] Gst.IteratorFoldFunction<T> func, out Gst.Value ret);
		public Gst.IteratorResult @foreach (GLib.Func func);
		[CCode (has_construct_function = false)]
		public Iterator.list (GLib.Type type, GLib.Mutex @lock, ref uint32 master_cookie, GLib.List<T> list, void* owner, Gst.IteratorItemFunction<T> item, Gst.IteratorDisposeFunction free);
		public Gst.IteratorResult next (out T elem);
		public void push (Gst.Iterator other);
		public void resync ();
		[CCode (has_construct_function = false)]
		public Iterator.single (GLib.Type type, T object, Gst.CopyFunction copy, GLib.FreeFunc free);
	}
	[CCode (cheader_filename = "gst/gst.h", ref_function = "gst_message_ref", unref_function = "gst_message_unref")]
	public class Message : Gst.MiniObject {
		public weak Gst.Object src;
		public uint64 timestamp;
		public Gst.MessageType type;
		[CCode (has_construct_function = false)]
		public Message.application (Gst.Object src, owned Gst.Structure? structure);
		[CCode (has_construct_function = false)]
		public Message.async_done (Gst.Object src);
		[CCode (has_construct_function = false)]
		public Message.async_start (Gst.Object src, bool new_base_time);
		[CCode (has_construct_function = false)]
		public Message.buffering (Gst.Object src, int percent);
		[CCode (has_construct_function = false)]
		public Message.clock_lost (Gst.Object src, Gst.Clock clock);
		[CCode (has_construct_function = false)]
		public Message.clock_provide (Gst.Object src, Gst.Clock clock, bool ready);
		public Gst.Message copy ();
		[CCode (has_construct_function = false)]
		public Message.custom (Gst.MessageType type, Gst.Object src, owned Gst.Structure? structure);
		[CCode (has_construct_function = false)]
		public Message.duration (Gst.Object src, Gst.Format format, int64 duration);
		[CCode (has_construct_function = false)]
		public Message.element (Gst.Object src, owned Gst.Structure? structure);
		[CCode (has_construct_function = false)]
		public Message.eos (Gst.Object src);
		[CCode (has_construct_function = false)]
		public Message.error (Gst.Object src, GLib.Error error, string? debug);
		public uint32 get_seqnum ();
		public unowned Gst.Value? get_stream_status_object ();
		public unowned Gst.Structure? get_structure ();
		[CCode (has_construct_function = false)]
		public Message.info (Gst.Object src, GLib.Error error, string? debug);
		[CCode (has_construct_function = false)]
		public Message.latency (Gst.Object src);
		[ReturnsModifiedPointer]
		public void make_writable ();
		[CCode (has_construct_function = false)]
		public Message.new_clock (Gst.Object src, Gst.Clock clock);
		public void parse_async_start (out bool new_base_time);
		public void parse_buffering (out int percent);
		public void parse_buffering_stats (out Gst.BufferingMode mode, out int avg_in, out int avg_out, out int64 buffering_left);
		public void parse_clock_lost (out unowned Gst.Clock clock);
		public void parse_clock_provide (out unowned Gst.Clock clock, out bool ready);
		public void parse_duration (out Gst.Format format, out int64 duration);
		public void parse_error (out GLib.Error gerror, out string? debug);
		public void parse_info (out GLib.Error gerror, out string? debug);
		public void parse_new_clock (out unowned Gst.Clock clock);
		public void parse_progress (out Gst.ProgressType type, out string code, out string text);
		public void parse_qos (out bool live, out uint64 running_time, out uint64 stream_time, out uint64 timestamp, out uint64 duration);
		public void parse_qos_stats (out Gst.Format format, out uint64 processed, out uint64 dropped);
		public void parse_qos_values (out int64 jitter, out double proportion, out int quality);
		public void parse_request_state (out Gst.State state);
		public void parse_segment_done (out Gst.Format format, out int64 position);
		public void parse_segment_start (out Gst.Format format, out int64 position);
		public void parse_state_changed (out Gst.State oldstate, out Gst.State newstate, out Gst.State pending);
		public void parse_step_done (out Gst.Format format, out uint64 amount, out double rate, out bool flush, out bool intermediate, out uint64 duration, out bool eos);
		public void parse_step_start (out bool active, out Gst.Format format, out uint64 amount, out double rate, out bool flush, out bool intermediate);
		public void parse_stream_status (out Gst.StreamStatusType type, out unowned Gst.Element owner);
		public void parse_structure_change (out Gst.StructureChangeType type, out unowned Gst.Element owner, out bool busy);
		public void parse_tag (out Gst.TagList tag_list);
		public void parse_tag_full (out unowned Gst.Pad pad, out unowned Gst.TagList tag_list);
		public void parse_warning (out GLib.Error gerror, out string? debug);
		[CCode (has_construct_function = false)]
		public Message.progress (Gst.Object src, Gst.ProgressType type, string code, string text);
		[CCode (has_construct_function = false)]
		public Message.qos (Gst.Object src, bool live, uint64 running_time, uint64 stream_time, uint64 timestamp, uint64 duration);
		public unowned Gst.Message @ref ();
		[CCode (has_construct_function = false)]
		public Message.request_state (Gst.Object src, Gst.State state);
		[CCode (has_construct_function = false)]
		public Message.segment_done (Gst.Object src, Gst.Format format, int64 position);
		[CCode (has_construct_function = false)]
		public Message.segment_start (Gst.Object src, Gst.Format format, int64 position);
		public void set_buffering_stats (Gst.BufferingMode mode, int avg_in, int avg_out, int64 buffering_left);
		public void set_qos_stats (Gst.Format format, uint64 processed, uint64 dropped);
		public void set_qos_values (int64 jitter, double proportion, int quality);
		public void set_seqnum (uint32 seqnum);
		public void set_stream_status_object (ref unowned Gst.Value? object);
		[CCode (has_construct_function = false)]
		public Message.state_changed (Gst.Object src, Gst.State oldstate, Gst.State newstate, Gst.State pending);
		[CCode (has_construct_function = false)]
		public Message.state_dirty (Gst.Object src);
		[CCode (has_construct_function = false)]
		public Message.step_done (Gst.Object src, Gst.Format format, uint64 amount, double rate, bool flush, bool intermediate, uint64 duration, bool eos);
		[CCode (has_construct_function = false)]
		public Message.step_start (Gst.Object src, bool active, Gst.Format format, uint64 amount, double rate, bool flush, bool intermediate);
		[CCode (has_construct_function = false)]
		public Message.stream_status (Gst.Object src, Gst.StreamStatusType type, Gst.Element owner);
		[CCode (has_construct_function = false)]
		public Message.structure_change (Gst.Object src, Gst.StructureChangeType type, Gst.Element owner, bool busy);
		[CCode (has_construct_function = false)]
		public Message.tag (Gst.Object src, Gst.TagList tag_list);
		[CCode (has_construct_function = false)]
		public Message.tag_full (Gst.Object src, Gst.Pad pad, Gst.TagList tag_list);
		public static GLib.Quark type_to_quark (Gst.MessageType type);
		public void unref ();
		[CCode (has_construct_function = false)]
		public Message.warning (Gst.Object src, GLib.Error error, string? debug);
	}
	[CCode (cheader_filename = "gst/gst.h", ref_function = "gst_mini_object_ref", unref_function = "gst_mini_object_unref")]
	public abstract class MiniObject {
		public Gst.MiniObjectFlags flags;
		[CCode (has_construct_function = false)]
		public MiniObject (GLib.Type type);
		public virtual Gst.MiniObject copy ();
		public virtual void finalize ();
		[CCode (cname = "GST_MINI_OBJECT_FLAG_IS_SET")]
		public bool flag_is_set (Gst.MiniObjectFlags flag);
		[CCode (cname = "GST_MINI_OBJECT_FLAG_SET")]
		public void flag_set (Gst.MiniObjectFlags flag);
		[CCode (cname = "GST_MINI_OBJECT_FLAG_UNSET")]
		public void flag_unset (Gst.MiniObjectFlags flag);
		public bool is_writable ();
		[ReturnsModifiedPointer]
		public void make_writable ();
		public unowned Gst.MiniObject @ref ();
		public static void replace (ref Gst.MiniObject? oldobj, Gst.MiniObject? newobj);
		public void unref ();
		public void weak_ref (Gst.MiniObjectWeakNotify notify, void* data);
		public void weak_unref (Gst.MiniObjectWeakNotify notify, void* data);
	}
	[CCode (cheader_filename = "gst/gst.h", ref_function = "gst_object_ref", ref_sink_function = "gst_object_ref_sink", ref_sink_function_void = true, unref_function = "gst_object_unref")]
	public abstract class Object : GLib.Object {
		public Gst.ObjectFlags flags;
		public weak GLib.Mutex @lock;
		public weak string name_prefix;
		public weak Gst.Object parent;
		[CCode (has_construct_function = false)]
		protected Object ();
		public static bool check_uniqueness (GLib.List<Gst.Object> 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);
		[CCode (cname = "GST_OBJECT_FLAG_IS_SET")]
		public bool flag_is_set (Gst.ObjectFlags flag);
		[CCode (cname = "GST_OBJECT_FLAG_SET")]
		public void flag_set (Gst.ObjectFlags flag);
		[CCode (cname = "GST_OBJECT_FLAG_UNSET")]
		public void flag_unset (Gst.ObjectFlags flag);
		public string get_name ();
		public string get_name_prefix ();
		public Gst.Object get_parent ();
		public string get_path_string ();
		public bool has_ancestor (Gst.Object ancestor);
		[CCode (cname = "GST_OBJECT_IS_DISPOSING")]
		public bool is_disposing ();
		[CCode (cname = "GST_OBJECT_IS_FLOATING")]
		public bool is_floating ();
		public unowned Gst.Object @ref ();
		public void ref_sink ();
		public static void replace (ref Gst.Object? oldobj, Gst.Object? newobj);
		public virtual void restore_thyself (void* self);
		public virtual void* save_thyself (void* parent);
		public bool set_name (string name);
		public void set_name_prefix (string name_prefix);
		public bool set_parent (Gst.Object parent);
		public void sink ();
		public void unparent ();
		public void unref ();
		public string name { owned get; set construct; }
		public virtual signal void deep_notify (Gst.Object orig, GLib.ParamSpec pspec);
		public virtual signal void object_saved (void* parent);
		public virtual signal void parent_set (Gst.Object parent);
		public virtual signal void parent_unset (Gst.Object parent);
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class Pad : Gst.Object {
		public weak Gst.PadAcceptCapsFunction acceptcapsfunc;
		public weak Gst.PadActivateFunction activatefunc;
		public weak Gst.PadActivateModeFunction activatepullfunc;
		public weak Gst.PadActivateModeFunction activatepushfunc;
		public weak Gst.PadBufferAllocFunction bufferallocfunc;
		public weak Gst.PadChainFunction chainfunc;
		public weak Gst.PadCheckGetRangeFunction checkgetrangefunc;
		public void* element_private;
		public weak Gst.PadEventFunction eventfunc;
		public weak Gst.PadFixateCapsFunction fixatecapsfunc;
		public weak Gst.PadGetCapsFunction getcapsfunc;
		public weak Gst.PadGetRangeFunction getrangefunc;
		public weak Gst.PadIntLinkFunction intlinkfunc;
		public weak Gst.PadIterIntLinkFunction iterintlinkfunc;
		public weak Gst.PadLinkFunction linkfunc;
		public Gst.ActivateMode mode;
		public weak Gst.PadQueryFunction queryfunc;
		public weak Gst.PadQueryTypeFunction querytypefunc;
		public weak Gst.PadSetCapsFunction setcapsfunc;
		public weak Gst.PadUnlinkFunction unlinkfunc;
		[CCode (has_construct_function = false)]
		public Pad (string name, Gst.PadDirection direction);
		public bool accept_caps (Gst.Caps caps);
		public bool activate_pull (bool active);
		public bool activate_push (bool active);
		[CCode (cname = "gst_pad_add_buffer_probe_full")]
		public uint add_buffer_probe ([CCode (type = "GCallback")] owned Gst.BufferProbeCallback handler);
		[CCode (cname = "gst_pad_add_data_probe_full")]
		public uint add_data_probe ([CCode (type = "GCallback")] owned Gst.DataProbeCallback handler);
		[CCode (cname = "gst_pad_add_event_probe_full")]
		public uint add_event_probe ([CCode (type = "GCallback")] owned Gst.EventProbeCallback handler);
		public Gst.FlowReturn alloc_buffer (uint64 offset, int size, Gst.Caps caps, out Gst.Buffer buf);
		public Gst.FlowReturn alloc_buffer_and_set_caps (uint64 offset, int size, Gst.Caps caps, out Gst.Buffer buf);
		public bool can_link (Gst.Pad sinkpad);
		public Gst.FlowReturn chain (owned Gst.Buffer buffer);
		public Gst.FlowReturn chain_list (owned Gst.BufferList list);
		public bool check_pull_range ();
		public bool dispatcher (Gst.PadDispatcherFunction dispatch);
		public bool event_default (owned Gst.Event event);
		public void fixate_caps (Gst.Caps caps);
		[CCode (has_construct_function = false)]
		public Pad.from_static_template (Gst.StaticPadTemplate templ, string name);
		[CCode (has_construct_function = false)]
		public Pad.from_template (Gst.PadTemplate templ, string name);
		public Gst.Caps get_allowed_caps ();
		public Gst.Caps get_caps ();
		public Gst.Caps get_caps_reffed ();
		public Gst.PadDirection get_direction ();
		public void* get_element_private ();
		public Gst.Caps get_fixed_caps_func ();
		public GLib.List<Gst.Pad> get_internal_links ();
		public GLib.List<Gst.Pad> get_internal_links_default ();
		public Gst.Caps get_negotiated_caps ();
		public unowned Gst.PadTemplate get_pad_template ();
		public unowned Gst.Caps get_pad_template_caps ();
		public Gst.Element? get_parent_element ();
		public Gst.Pad get_peer ();
		[CCode (array_length = false)]
		public unowned Gst.QueryType[]? get_query_types ();
		[CCode (array_length = false)]
		public unowned Gst.QueryType[]? get_query_types_default ();
		public Gst.FlowReturn get_range (uint64 offset, uint size, out Gst.Buffer buffer);
		public bool is_active ();
		public bool is_blocked ();
		public bool is_blocking ();
		public bool is_linked ();
		public Gst.Iterator<Gst.Pad> iterate_internal_links ();
		public Gst.Iterator<Gst.Pad> iterate_internal_links_default ();
		public Gst.PadLinkReturn link (Gst.Pad sinkpad);
		public Gst.PadLinkReturn link_full (Gst.Pad sinkpad, Gst.PadLinkCheck flags);
		public void load_and_link (Gst.Object parent);
		public bool pause_task ();
		public bool peer_accept_caps (Gst.Caps caps);
		public Gst.Caps peer_get_caps ();
		public Gst.Caps peer_get_caps_reffed ();
		public bool peer_query (Gst.Query query);
		public Gst.Caps proxy_getcaps ();
		public bool proxy_setcaps (Gst.Caps caps);
		public Gst.FlowReturn pull_range (uint64 offset, uint size, out Gst.Buffer buffer);
		public Gst.FlowReturn push (owned Gst.Buffer buffer);
		public bool push_event (owned Gst.Event event);
		public Gst.FlowReturn push_list (owned Gst.BufferList list);
		public bool query (Gst.Query query);
		public bool query_convert (Gst.Format src_format, int64 src_val, ref Gst.Format dest_format, out int64 dest_val);
		public bool query_default (Gst.Query query);
		public bool query_duration (ref Gst.Format format, out int64 duration);
		public bool query_peer_convert (Gst.Format src_format, int64 src_val, ref Gst.Format dest_format, out int64 dest_val);
		public bool query_peer_duration (ref Gst.Format format, out int64 duration);
		public bool query_peer_position (ref Gst.Format format, out int64 cur);
		public bool query_position (ref Gst.Format format, out 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 (owned 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);
		[CCode (cname = "gst_pad_set_blocked_async_full")]
		public bool set_blocked_async (bool blocked, owned Gst.PadBlockCallback callback);
		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_chain_list_function (Gst.PadChainListFunction chainlist);
		public void set_checkgetrange_function (Gst.PadCheckGetRangeFunction check);
		public void set_element_private (void* 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_iterate_internal_links_function (Gst.PadIterIntLinkFunction iterintlink);
		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);
		public bool stop_task ();
		[CCode (cname = "GST_PAD_STREAM_LOCK")]
		public void stream_lock ();
		[CCode (cname = "GST_PAD_STREAM_UNLOCK")]
		public void stream_unlock ();
		public bool unlink (Gst.Pad sinkpad);
		public void use_fixed_caps ();
		[NoAccessorMethod]
		public Gst.Caps caps { owned get; }
		public Gst.PadDirection direction { get; construct; }
		[NoAccessorMethod]
		public Gst.PadTemplate template { owned get; set; }
		public virtual signal bool have_data (Gst.MiniObject data);
		public virtual signal void linked (Gst.Pad peer);
		public virtual signal void request_link ();
		public virtual signal void unlinked (Gst.Pad peer);
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class PadTemplate : Gst.Object {
		[CCode (has_construct_function = false)]
		public PadTemplate (string name_template, Gst.PadDirection direction, Gst.PadPresence presence, owned Gst.Caps caps);
		public unowned Gst.Caps get_caps ();
		public Gst.Caps caps { get; construct; }
		[NoAccessorMethod]
		public Gst.PadDirection direction { get; construct; }
		[NoAccessorMethod]
		public string name_template { owned get; construct; }
		[NoAccessorMethod]
		public Gst.PadPresence presence { get; construct; }
		[HasEmitter]
		public virtual signal void pad_created (Gst.Pad pad);
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class ParamSpecFraction : GLib.ParamSpec {
		public int def_den;
		public int def_num;
		public int max_den;
		public int max_num;
		public int min_den;
		public int min_num;
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class ParamSpecMiniObject : GLib.ParamSpec {
	}
	[CCode (cheader_filename = "gst/gst.h", type_id = "gst_parse_context_get_type ()")]
	[Compact]
	public class ParseContext {
		[CCode (has_construct_function = false)]
		public ParseContext ();
		[CCode (array_length = false, array_null_terminated = true)]
		public string[] get_missing_elements ();
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class Pipeline : Gst.Bin, Gst.ChildProxy {
		[CCode (has_construct_function = false, type = "GstElement*")]
		public Pipeline (string? name);
		public void auto_clock ();
		public bool get_auto_flush_bus ();
		public Gst.Bus get_bus ();
		public Gst.Clock? get_clock ();
		public Gst.ClockTime get_delay ();
		public Gst.ClockTime get_last_stream_time ();
		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 bool auto_flush_bus { get; set; }
		public uint64 delay { get; set; }
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class Plugin : Gst.Object {
		[CCode (has_construct_function = false)]
		protected Plugin ();
		public void add_dependency ([CCode (array_length = false, array_null_terminated = true)] string?[] env_vars, [CCode (array_length = false, array_null_terminated = true)] string?[] paths, [CCode (array_length = false, array_null_terminated = true)] string?[] names, Gst.PluginDependencyFlags flags);
		public void add_dependency_simple (string? env_vars, string? paths, string? names, Gst.PluginDependencyFlags flags);
		public static GLib.Quark error_quark ();
		public unowned Gst.Structure get_cache_data ();
		public unowned string get_description ();
		public unowned string get_filename ();
		public unowned string get_license ();
		public unowned GLib.Module get_module ();
		public unowned string get_name ();
		public unowned string get_origin ();
		public unowned string get_package ();
		public unowned string get_source ();
		public unowned string get_version ();
		public bool is_loaded ();
		public Gst.Plugin? load ();
		public static Gst.Plugin? load_by_name (string name);
		public static Gst.Plugin? load_file (string filename) throws GLib.Error;
		[CCode (instance_pos = -1)]
		public bool name_filter (Gst.Plugin plugin, string name);
		public static bool register_static (int major_version, int minor_version, string name, string description, Gst.PluginInitFunc init_func, string version, string license, string source, string package, string origin);
		public static bool register_static_full (int major_version, int minor_version, string name, string description, Gst.PluginInitFullFunc init_full_func, string version, string license, string source, string package, string origin);
		public void set_cache_data (owned Gst.Structure cache_data);
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public abstract class PluginFeature : Gst.Object {
		[CCode (has_construct_function = false)]
		protected PluginFeature ();
		public bool check_version (uint min_major, uint min_minor, uint min_micro);
		public unowned string get_name ();
		public uint get_rank ();
		public static void list_debug (GLib.List list);
		public Gst.PluginFeature? load ();
		public static int rank_compare_func (void* p1, void* p2);
		public void set_name (string name);
		public void set_rank (uint rank);
		[CCode (instance_pos = -1)]
		public bool type_name_filter (Gst.PluginFeature feature, Gst.TypeNameData data);
	}
	[CCode (cheader_filename = "gst/gst.h")]
	[Compact]
	public class Poll {
		[CCode (has_construct_function = false)]
		public Poll (bool controllable);
		public bool add_fd (Gst.PollFD fd);
		public void get_read_gpollfd (GLib.PollFD fd);
		public bool read_control ();
		public bool remove_fd (Gst.PollFD fd);
		public void restart ();
		public bool set_controllable (bool controllable);
		public void set_flushing (bool flushing);
		[CCode (has_construct_function = false)]
		public Poll.timer ();
		public int wait (Gst.ClockTime timeout);
		public bool write_control ();
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class ProxyPad : Gst.Pad {
		[CCode (has_construct_function = false)]
		protected ProxyPad ();
		public static bool acceptcaps_default (Gst.Pad pad, Gst.Caps caps);
		public static Gst.FlowReturn bufferalloc_default (Gst.Pad pad, uint64 offset, uint size, Gst.Caps caps, out unowned Gst.Buffer buf);
		public static Gst.FlowReturn chain_default (Gst.Pad pad, Gst.Buffer buffer);
		public static Gst.FlowReturn chain_list_default (Gst.Pad pad, Gst.BufferList list);
		public static bool checkgetrange_default (Gst.Pad pad);
		public static bool event_default (Gst.Pad pad, Gst.Event event);
		public static void fixatecaps_default (Gst.Pad pad, Gst.Caps caps);
		public unowned Gst.ProxyPad get_internal ();
		public static unowned Gst.Caps getcaps_default (Gst.Pad pad);
		public static Gst.FlowReturn getrange_default (Gst.Pad pad, uint64 offset, uint size, out unowned Gst.Buffer buffer);
		public static unowned Gst.Iterator iterate_internal_links_default (Gst.Pad pad);
		public static bool query_default (Gst.Pad pad, Gst.Query query);
		public static Gst.QueryType query_type_default (Gst.Pad pad);
		public static bool setcaps_default (Gst.Pad pad, Gst.Caps caps);
		public static void unlink_default (Gst.Pad pad);
	}
	[CCode (cheader_filename = "gst/gst.h", ref_function = "gst_query_ref", unref_function = "gst_query_unref")]
	public class Query : Gst.MiniObject {
		public weak Gst.Structure structure;
		public Gst.QueryType type;
		public bool add_buffering_range (int64 start, int64 stop);
		[CCode (has_construct_function = false)]
		public Query.application (Gst.QueryType type, owned Gst.Structure structure);
		[CCode (has_construct_function = false)]
		public Query.buffering (Gst.Format format);
		[CCode (has_construct_function = false)]
		public Query.convert (Gst.Format src_format, int64 value, Gst.Format dest_format);
		public Gst.Query copy ();
		[CCode (has_construct_function = false)]
		public Query.duration (Gst.Format format);
		[CCode (has_construct_function = false)]
		public Query.formats ();
		public uint get_n_buffering_ranges ();
		public unowned Gst.Structure get_structure ();
		[CCode (has_construct_function = false)]
		public Query.latency ();
		[ReturnsModifiedPointer]
		public void make_writable ();
		public void parse_buffering_percent (out bool busy, out int percent);
		public void parse_buffering_range (out Gst.Format format, out int64 start, out int64 stop, out int64 estimated_total);
		public void parse_buffering_stats (out Gst.BufferingMode mode, out int avg_in, out int avg_out, out int64 buffering_left);
		public void parse_convert (out Gst.Format src_format, out int64 src_value, out Gst.Format dest_format, out int64 dest_value);
		public void parse_duration (out Gst.Format format, out int64 duration);
		public void parse_formats_length (out uint n_formats);
		public void parse_formats_nth (uint nth, out Gst.Format format);
		public void parse_latency (out bool live, out Gst.ClockTime min_latency, out Gst.ClockTime max_latency);
		public bool parse_nth_buffering_range (uint index, int64 start, int64 stop);
		public void parse_position (out Gst.Format format, out int64 cur);
		public void parse_seeking (out Gst.Format format, out bool seekable, out int64 segment_start, out int64 segment_end);
		public void parse_segment (out double rate, out Gst.Format format, out int64 start_value, out int64 stop_value);
		public void parse_uri (out string uri);
		[CCode (has_construct_function = false)]
		public Query.position (Gst.Format format);
		public unowned Gst.Query @ref ();
		[CCode (has_construct_function = false)]
		public Query.seeking (Gst.Format format);
		[CCode (has_construct_function = false)]
		public Query.segment (Gst.Format format);
		public void set_buffering_percent (bool busy, int percent);
		public void set_buffering_range (Gst.Format format, int64 start, int64 stop, int64 estimated_total);
		public void set_buffering_stats (Gst.BufferingMode mode, int avg_in, int avg_out, int64 buffering_left);
		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 ([CCode (array_length_pos = 0.9)] 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 void set_uri (string uri);
		public static bool types_contains (Gst.QueryType types, Gst.QueryType type);
		public void unref ();
		[CCode (has_construct_function = false)]
		public Query.uri ();
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class Registry : Gst.Object {
		[CCode (has_construct_function = false)]
		protected Registry ();
		public bool add_feature (owned Gst.PluginFeature feature);
		public void add_path (string path);
		public bool add_plugin (owned Gst.Plugin plugin);
		public GLib.List<Gst.PluginFeature> feature_filter ([CCode (delegate_target_pos = 2.1)] Gst.PluginFeatureFilter filter, bool first);
		public Gst.PluginFeature? find_feature (string name, GLib.Type type);
		public Gst.Plugin? find_plugin (string name);
		public static bool fork_is_enabled ();
		public static void fork_set_enabled (bool enabled);
		public static unowned Gst.Registry get_default ();
		public GLib.List<Gst.PluginFeature> get_feature_list (GLib.Type type);
		public GLib.List<Gst.PluginFeature> get_feature_list_by_plugin (string name);
		public uint32 get_feature_list_cookie ();
		public GLib.List<string> get_path_list ();
		public GLib.List<Gst.Plugin> get_plugin_list ();
		public Gst.Plugin? lookup (string filename);
		public Gst.PluginFeature? lookup_feature (string name);
		public GLib.List<Gst.Plugin> plugin_filter (Gst.PluginFilter filter, bool first);
		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 virtual signal void feature_added (void* feature);
		public virtual signal void plugin_added (void* plugin);
	}
	[CCode (cheader_filename = "gst/gst.h", copy_function = "gst_segment_copy", type_id = "gst_segment_get_type ()")]
	[Compact]
	public class Segment {
		public double abs_rate;
		public int64 accum;
		public double applied_rate;
		public int64 duration;
		public Gst.SeekFlags flags;
		public Gst.Format format;
		public int64 last_stop;
		public double rate;
		public int64 start;
		public int64 stop;
		public int64 time;
		[CCode (has_construct_function = false)]
		public Segment ();
		public bool clip (Gst.Format format, int64 start, int64 stop, out int64 clip_start, out int64 clip_stop);
		public Gst.Segment copy ();
		public void init (Gst.Format format);
		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 bool set_running_time (Gst.Format format, int64 running_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_position (Gst.Format format, int64 running_time);
		public int64 to_running_time (Gst.Format format, int64 position);
		public int64 to_stream_time (Gst.Format format, int64 position);
	}
	[CCode (cheader_filename = "gst/gst.h", copy_function = "gst_structure_copy", type_id = "GST_TYPE_STRUCTURE")]
	[Compact]
	[Immutable]
	public class Structure {
		[CCode (has_construct_function = false)]
		public Structure (string name, string firstfield, ...);
		public bool can_intersect (Gst.Structure struct2);
		public Gst.Structure copy ();
		[CCode (cname = "gst_structure_empty_new", has_construct_function = false)]
		public Structure.empty (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 fixate_field_string (string field_name, string target);
		public bool @foreach (Gst.StructureForeachFunc func);
		public static Gst.Structure? from_string (string str, out unowned string end);
		public bool @get (...);
		public bool get_boolean (string fieldname, out bool value);
		public bool get_clock_time (string fieldname, out Gst.ClockTime value);
		public bool get_date (string fieldname, out GLib.Date value);
		public bool get_date_time (string fieldname, out unowned Gst.DateTime 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 uint32 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 unowned string get_name ();
		public GLib.Quark get_name_id ();
		public unowned string? get_string (string fieldname);
		public bool get_uint (string fieldname, out uint value);
		public bool get_valist (string first_fieldname, va_list args);
		public unowned Gst.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);
		[CCode (cname = "gst_structure_id_new", has_construct_function = false)]
		public Structure.id (GLib.Quark quark, GLib.Quark field_quark, ...);
		[CCode (cname = "gst_structure_id_empty_new", has_construct_function = false)]
		public Structure.id_empty (GLib.Quark quark);
		public bool id_get (...);
		public bool id_get_valist (GLib.Quark first_field_id, va_list args);
		public unowned Gst.Value? id_get_value (GLib.Quark field);
		public bool id_has_field (GLib.Quark field);
		public bool id_has_field_typed (GLib.Quark field, GLib.Type type);
		public void id_set (GLib.Quark fieldname, ...);
		public void id_set_valist (GLib.Quark fieldname, va_list varargs);
		public void id_set_value (GLib.Quark field, GLib.Value value);
		public void id_take_value (GLib.Quark field, GLib.Value value);
		public unowned Gst.Structure intersect (Gst.Structure struct2);
		public bool is_equal (Gst.Structure structure2);
		public bool is_subset (Gst.Structure superset);
		public bool map_in_place (Gst.StructureMapFunc func);
		public int n_fields ();
		public unowned 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, va_list varargs);
		public void @set (string fieldname, ...);
		public void set_name (string name);
		public void set_parent_refcount (ref int refcount);
		public void set_valist (string fieldname, va_list varargs);
		public void set_value (string fieldname, GLib.Value value);
		public void take_value (string fieldname, GLib.Value value);
		public string to_string ();
		[CCode (has_construct_function = false)]
		public Structure.valist (string name, string firstfield, va_list varargs);
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class SystemClock : Gst.Clock {
		[CCode (has_construct_function = false)]
		protected SystemClock ();
		public static Gst.Clock obtain ();
		[NoAccessorMethod]
		public Gst.ClockType clock_type { get; set; }
	}
	[CCode (cheader_filename = "gst/gst.h", copy_function = "gst_tag_list_copy")]
	[Compact]
	public class TagList {
		[CCode (has_construct_function = false)]
		public TagList ();
		public void add (Gst.TagMergeMode mode, string tag, ...);
		public void add_valist (Gst.TagMergeMode mode, string tag, void* var_args);
		public void add_valist_values (Gst.TagMergeMode mode, string tag, void* var_args);
		public void add_value (Gst.TagMergeMode mode, string tag, GLib.Value value);
		public void add_values (Gst.TagMergeMode mode, string tag, ...);
		public Gst.TagList copy ();
		public static bool copy_value (out Gst.Value dest, Gst.TagList list, string tag);
		public void @foreach (Gst.TagForeachFunc func);
		[CCode (has_construct_function = false)]
		public TagList.full (string tag);
		[CCode (has_construct_function = false)]
		public TagList.full_valist (void* var_args);
		public bool get_boolean (string tag, out bool value);
		public bool get_boolean_index (string tag, uint index, out bool value);
		public bool get_buffer (string tag, out unowned Gst.Buffer value);
		public bool get_buffer_index (string tag, uint index, out unowned Gst.Buffer value);
		public bool get_char (string tag, out char value);
		public bool get_char_index (string tag, uint index, out char value);
		public bool get_date (string tag, out GLib.Date? value);
		public bool get_date_index (string tag, uint index, out GLib.Date? value);
		public bool get_date_time (string tag, out unowned Gst.DateTime value);
		public bool get_date_time_index (string tag, uint index, out unowned Gst.DateTime value);
		public bool get_double (string tag, out double value);
		public bool get_double_index (string tag, uint index, out double value);
		public bool get_float (string tag, out float value);
		public bool get_float_index (string tag, uint index, out float value);
		public bool get_int (string tag, out int value);
		public bool get_int64 (string tag, out int64 value);
		public bool get_int64_index (string tag, uint index, out int64 value);
		public bool get_int_index (string tag, uint index, out int value);
		public bool get_long (string tag, out long value);
		public bool get_long_index (string tag, uint index, out long value);
		public bool get_pointer (string tag, out void* value);
		public bool get_pointer_index (string tag, uint index, out void* value);
		public bool get_string (string tag, out string value);
		public bool get_string_index (string tag, uint index, out string value);
		public uint get_tag_size (string tag);
		public bool get_uchar (string tag, out uchar value);
		public bool get_uchar_index (string tag, uint index, out uchar value);
		public bool get_uint (string tag, out uint value);
		public bool get_uint64 (string tag, out uint64 value);
		public bool get_uint64_index (string tag, uint index, out uint64 value);
		public bool get_uint_index (string tag, uint index, out uint value);
		public bool get_ulong (string tag, out ulong value);
		public bool get_ulong_index (string tag, uint index, out ulong value);
		public unowned Gst.Value? get_value_index (string tag, uint index);
		public void insert (Gst.TagList from, Gst.TagMergeMode mode);
		public bool is_empty ();
		public Gst.TagList merge (Gst.TagList list2, Gst.TagMergeMode mode);
		public bool peek_string_index (string tag, uint index, string value);
		public void remove_tag (string tag);
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class Task : Gst.Object {
		public void* abidata;
		public weak GLib.Cond cond;
		public void* data;
		public weak Gst.TaskFunction func;
		public GLib.StaticRecMutex @lock;
		public bool running;
		public Gst.TaskState state;
		[CCode (has_construct_function = false)]
		protected Task ();
		public static void cleanup_all ();
		public static unowned Gst.Task create (Gst.TaskFunction func, void* data);
		public unowned Gst.TaskPool get_pool ();
		public Gst.TaskState get_state ();
		public bool join ();
		public bool pause ();
		public void set_lock (GLib.StaticRecMutex mutex);
		public void set_pool (Gst.TaskPool pool);
		public void set_priority (GLib.ThreadPriority priority);
		public bool set_state (Gst.TaskState state);
		public void set_thread_callbacks (Gst.TaskThreadCallbacks callbacks, GLib.DestroyNotify notify);
		public bool start ();
		public bool stop ();
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class TaskPool : Gst.Object {
		public weak GLib.ThreadPool pool;
		[CCode (has_construct_function = false)]
		public TaskPool ();
		public virtual void cleanup ();
		public virtual void join (void* id);
		public virtual void prepare () throws GLib.Error;
		public virtual void* push (Gst.TaskPoolFunction func) throws GLib.Error;
	}
	[CCode (cheader_filename = "gst/gst.h")]
	[Compact]
	public class TaskThreadCallbacks {
		public weak GLib.Callback enter_thread;
		public weak GLib.Callback leave_thread;
	}
	[CCode (cheader_filename = "gst/gst.h", free_function = "gst_trace_destroy")]
	[Compact]
	public class Trace {
		public weak Gst.TraceEntry buf;
		public int bufoffset;
		public int bufsize;
		public int fd;
		public weak string filename;
		[CCode (has_construct_function = false)]
		public Trace (string filename, int size);
		public void flush ();
		public static void read_tsc (int64 dst);
		public void set_default ();
		public void text_flush ();
	}
	[CCode (cheader_filename = "gst/gst.h")]
	[Compact]
	public class TraceEntry {
		public uint32 data;
		[CCode (array_length = false)]
		public weak char[] message;
		public uint32 sequence;
		public int64 timestamp;
	}
	[CCode (cheader_filename = "gst/gst.h")]
	[Compact]
	public class TypeFind {
		public void* data;
		[CCode (cname = "gst_type_find_get_length")]
		public uint64 get_length ();
		[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, void* data, GLib.DestroyNotify data_notify);
		[CCode (cname = "gst_type_find_suggest")]
		public void suggest (uint probability, Gst.Caps caps);
		[CCode (cname = "gst_type_find_suggest_simple")]
		public void suggest_simple (uint probability, string media_type, string fieldname);
	}
	[CCode (cheader_filename = "gst/gst.h", type_id = "GST_TYPE_TYPE_FIND_FACTORY")]
	public class TypeFindFactory : Gst.PluginFeature {
		public weak Gst.Caps caps;
		public weak string extensions;
		public weak Gst.TypeFindFunction function;
		public void* user_data;
		public weak GLib.DestroyNotify user_data_notify;
		[CCode (has_construct_function = false)]
		protected TypeFindFactory ();
		[CCode (cname = "gst_type_find_factory_call_function")]
		public void call_function (Gst.TypeFind find);
		[CCode (cname = "gst_type_find_factory_get_caps")]
		public unowned Gst.Caps get_caps ();
		[CCode (cname = "gst_type_find_factory_get_extensions")]
		public unowned string get_extensions ();
		[CCode (cname = "gst_type_find_factory_get_list")]
		public static GLib.List<Gst.PluginFeature> get_list ();
	}
	[CCode (cheader_filename = "gst/gst.h")]
	[Compact]
	public class TypeNameData {
		public weak string name;
		public GLib.Type type;
	}
	[CCode (cheader_filename = "gst/gst.h")]
	[Compact]
	public class ValueTable {
		public weak Gst.ValueCompareFunc compare;
		public weak Gst.ValueDeserializeFunc deserialize;
		public weak Gst.ValueSerializeFunc serialize;
		public GLib.Type type;
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public class XML : Gst.Object {
		public void* ns;
		public weak GLib.List<Gst.Element> topelements;
		[CCode (has_construct_function = false)]
		public XML ();
		public unowned Gst.Element get_element (string name);
		public unowned GLib.List<Gst.Element> get_topelements ();
		public static unowned Gst.Element make_element (void* cur, Gst.Object parent);
		[NoWrapper]
		public virtual void object_saved (Gst.Object object, void* self);
		public bool parse_doc (void* doc, string root);
		public bool parse_file (string fname, string root);
		public bool parse_memory (uchar[] buffer, uint size, string root);
		public static void* write (Gst.Element element);
		public static int write_file (Gst.Element element, GLib.FileStream @out);
		public virtual signal void object_loaded (Gst.Object object, void* self);
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public interface ChildProxy : Gst.Object {
		public void @get (string first_property_name, ...);
		public abstract Gst.Object? get_child_by_index (uint index);
		public Gst.Object? get_child_by_name (string name);
		public abstract uint get_children_count ();
		public void get_property (string name, ref Gst.Value value);
		public void get_valist (string first_property_name, void* var_args);
		public bool lookup (string name, out Gst.Object? target, out unowned GLib.ParamSpec? pspec);
		public void @set (string first_property_name, ...);
		public void set_property (string name, Gst.Value value);
		public void set_valist (string first_property_name, void* 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 unowned Gst.Element? cast (GLib.Type type);
		public bool check (GLib.Type type);
		[NoWrapper]
		public abstract bool supported (GLib.Type iface_type);
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public interface Preset {
		public abstract bool delete_preset (string name);
		public abstract bool get_meta (string name, string tag, out string value);
		[CCode (array_length = false, array_null_terminated = true)]
		public abstract string[] get_preset_names ();
		[CCode (array_length = false, array_null_terminated = true)]
		public abstract string[] get_property_names ();
		public abstract bool load_preset (string name);
		public abstract bool rename_preset (string old_name, string new_name);
		public abstract bool save_preset (string name);
		public abstract bool set_meta (string name, string tag, string value);
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public interface TagSetter : Gst.Element {
		public void add_tag_valist (Gst.TagMergeMode mode, string tag, void* var_args);
		public void add_tag_valist_values (Gst.TagMergeMode mode, string tag, void* var_args);
		public void add_tag_value (Gst.TagMergeMode mode, string tag, GLib.Value value);
		public void add_tag_values (Gst.TagMergeMode mode, string tag, ...);
		public void add_tags (Gst.TagMergeMode mode, string tag, ...);
		public unowned Gst.TagList get_tag_list ();
		public Gst.TagMergeMode get_tag_merge_mode ();
		public void merge_tags (Gst.TagList list, Gst.TagMergeMode mode);
		public void reset_tags ();
		public void set_tag_merge_mode (Gst.TagMergeMode mode);
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public interface URIHandler {
		public abstract unowned string[] get_protocols ();
		[NoWrapper]
		public abstract unowned string[] get_protocols_full (GLib.Type type);
		[NoWrapper]
		public abstract Gst.URIType get_type ();
		[NoWrapper]
		public abstract Gst.URIType get_type_full (GLib.Type type);
		public abstract unowned string get_uri ();
		public uint get_uri_type ();
		public abstract bool set_uri (string uri);
		[HasEmitter]
		public signal void new_uri (string uri);
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public struct Array {
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public struct ClockTime : uint64 {
		[CCode (cname = "GST_TIME_ARGS")]
		public unowned string args ();
		[CCode (cname = "GST_CLOCK_TIME_IS_VALID")]
		public bool is_valid ();
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public struct ClockTimeDiff : int64 {
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public struct DoubleRange {
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public struct ElementDetails {
		public weak string longname;
		public weak string klass;
		public weak string description;
		public weak string author;
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public struct ElementFactoryListType : uint64 {
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public struct FormatDefinition {
		public Gst.Format value;
		public weak string nick;
		public weak string description;
		public GLib.Quark quark;
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public struct Fraction {
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public struct FractionRange {
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public struct IndexAssociation {
		public Gst.Format format;
		public int64 value;
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public struct IntRange {
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public struct List {
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public struct PluginDesc {
		public int major_version;
		public int minor_version;
		public weak string name;
		public weak string description;
		public weak 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 void*[] _gst_reserved;
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public struct PollFD {
		public int fd;
		public int idx;
		public static bool can_read (Gst.Poll @set, Gst.PollFD fd);
		public static bool can_write (Gst.Poll @set, Gst.PollFD fd);
		public static bool ctl_read (Gst.Poll @set, Gst.PollFD fd, bool active);
		public static bool ctl_write (Gst.Poll @set, Gst.PollFD fd, bool active);
		public static bool has_closed (Gst.Poll @set, Gst.PollFD fd);
		public static bool has_error (Gst.Poll @set, Gst.PollFD fd);
		public static void ignored (Gst.Poll @set, Gst.PollFD fd);
		public void init ();
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public struct QueryTypeDefinition {
		public weak string description;
		public weak string nick;
		public GLib.Quark quark;
		public Gst.QueryType value;
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public struct StaticCaps {
		[CCode (cname = "string")]
		public weak string str;
		public Gst.Caps @get ();
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public struct StaticPadTemplate {
		public weak string name_template;
		public Gst.PadDirection direction;
		public Gst.PadPresence presence;
		public Gst.StaticCaps static_caps;
		public Gst.PadTemplate @get ();
		public Gst.Caps get_caps ();
	}
	[CCode (cheader_filename = "gst/gst.h", cname = "GValue", type_id = "G_TYPE_VALUE")]
	public struct Value : GLib.Value {
		public void array_append_value (Gst.Value append_value);
		public uint array_get_size ();
		public static GLib.Type array_get_type ();
		public unowned Gst.Value? array_get_value (uint index);
		public void array_prepend_value (Gst.Value prepend_value);
		public static bool can_compare (Gst.Value value1, Gst.Value value2);
		public static bool can_intersect (Gst.Value value1, Gst.Value value2);
		public static bool can_subtract (Gst.Value minuend, Gst.Value subtrahend);
		public static bool can_union (Gst.Value value1, Gst.Value value2);
		public static int compare (Gst.Value value1, Gst.Value value2);
		public bool deserialize (string src);
		public static bool fraction_multiply (GLib.Value product, GLib.Value factor1, GLib.Value factor2);
		public static bool fraction_subtract (GLib.Value dest, GLib.Value minuend, GLib.Value subtrahend);
		public unowned Gst.Buffer get_buffer ();
		public Gst.Caps get_caps ();
		public GLib.Date get_date ();
		public double get_double_range_max ();
		public double get_double_range_min ();
		public uint get_fourcc ();
		public int get_fraction_denominator ();
		public int get_fraction_numerator ();
		public unowned Gst.Value? get_fraction_range_max ();
		public unowned Gst.Value? get_fraction_range_min ();
		public int get_int_range_max ();
		public int get_int_range_min ();
		public unowned Gst.Structure get_structure ();
		public void init_and_copy (Gst.Value src);
		public static bool intersect (Gst.Value dest, Gst.Value value1, Gst.Value value2);
		public bool is_fixed ();
		public void list_append_value (Gst.Value append_value);
		public void list_concat (Gst.Value value1, Gst.Value value2);
		public uint list_get_size ();
		public static GLib.Type list_get_type ();
		public unowned Gst.Value? list_get_value (uint index);
		public void list_prepend_value (Gst.Value prepend_value);
		[CCode (cname = "GST_MAKE_FOURCC")]
		public static uint make_fourcc (char a, char b, char c, char d);
		public static void register (Gst.ValueTable table);
		public static void register_intersect_func (GLib.Type type1, GLib.Type type2, Gst.ValueIntersectFunc func);
		public static void register_subtract_func (GLib.Type minuend_type, GLib.Type subtrahend_type, Gst.ValueSubtractFunc func);
		public static void register_union_func (GLib.Type type1, GLib.Type type2, Gst.ValueUnionFunc func);
		public string serialize ();
		public void set_buffer (Gst.Buffer b);
		public void set_caps (Gst.Caps caps);
		public void set_date (GLib.Date date);
		public void set_double_range (double start, double end);
		public void set_fourcc (uint fourcc);
		public void set_fraction (int numerator, int denominator);
		public void set_fraction_range (Gst.Value start, Gst.Value end);
		public void set_fraction_range_full (int numerator_start, int denominator_start, int numerator_end, int denominator_end);
		public void set_int_range (int start, int end);
		public void set_structure (Gst.Structure structure);
		[CCode (cname = "GST_STR_FOURCC")]
		public static uint str_fourcc (string str);
		public static bool subtract (Gst.Value dest, Gst.Value minuend, Gst.Value subtrahend);
		public void take_buffer (Gst.Buffer b);
		public static bool union (Gst.Value dest, Gst.Value value1, Gst.Value value2);
	}
	[CCode (cheader_filename = "gst/gst.h", cprefix = "GST_ACTIVATE_")]
	public enum ActivateMode {
		NONE,
		PUSH,
		PULL
	}
	[CCode (cheader_filename = "gst/gst.h", cprefix = "GST_ALLOC_TRACE_")]
	[Flags]
	public enum AllocTraceFlags {
		LIVE,
		MEM_LIVE
	}
	[CCode (cheader_filename = "gst/gst.h", cprefix = "GST_ASSOCIATION_FLAG_")]
	[Flags]
	public enum AssocFlags {
		NONE,
		KEY_UNIT,
		DELTA_UNIT,
		LAST
	}
	[CCode (cheader_filename = "gst/gst.h", cprefix = "GST_BIN_FLAG_")]
	[Flags]
	public enum BinFlags {
		LAST
	}
	[CCode (cheader_filename = "gst/gst.h", cprefix = "GST_BUFFER_COPY_")]
	[Flags]
	public enum BufferCopyFlags {
		FLAGS,
		TIMESTAMPS,
		CAPS
	}
	[CCode (cheader_filename = "gst/gst.h", cprefix = "GST_BUFFER_FLAG_")]
	[Flags]
	public enum BufferFlag {
		READONLY,
		MEDIA4,
		PREROLL,
		DISCONT,
		IN_CAPS,
		GAP,
		DELTA_UNIT,
		MEDIA1,
		MEDIA2,
		MEDIA3,
		LAST
	}
	[CCode (cheader_filename = "gst/gst.h", cprefix = "GST_BUFFER_LIST_")]
	public enum BufferListItem {
		CONTINUE,
		SKIP_GROUP,
		END
	}
	[CCode (cheader_filename = "gst/gst.h", cprefix = "GST_BUFFERING_")]
	public enum BufferingMode {
		STREAM,
		DOWNLOAD,
		TIMESHIFT,
		LIVE
	}
	[CCode (cheader_filename = "gst/gst.h", cprefix = "GST_BUS_")]
	[Flags]
	public enum BusFlags {
		FLUSHING,
		FLAG_LAST
	}
	[CCode (cheader_filename = "gst/gst.h", cprefix = "GST_BUS_")]
	public enum BusSyncReply {
		DROP,
		PASS,
		ASYNC
	}
	[CCode (cheader_filename = "gst/gst.h", cprefix = "GST_CAPS_FLAGS_")]
	[Flags]
	public enum CapsFlags {
		ANY
	}
	[CCode (cheader_filename = "gst/gst.h", cprefix = "GST_CAPS_INTERSECT_")]
	public enum CapsIntersectMode {
		ZIG_ZAG,
		FIRST
	}
	[CCode (cheader_filename = "gst/gst.h", cprefix = "GST_CLOCK_ENTRY_")]
	public enum ClockEntryType {
		SINGLE,
		PERIODIC
	}
	[CCode (cheader_filename = "gst/gst.h", cprefix = "GST_CLOCK_FLAG_")]
	[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 (cheader_filename = "gst/gst.h", cprefix = "GST_CLOCK_")]
	public enum ClockReturn {
		OK,
		EARLY,
		UNSCHEDULED,
		BUSY,
		BADTIME,
		ERROR,
		UNSUPPORTED,
		DONE
	}
	[CCode (cheader_filename = "gst/gst.h", cprefix = "GST_CLOCK_TYPE_")]
	public enum ClockType {
		REALTIME,
		MONOTONIC
	}
	[CCode (cheader_filename = "gst/gst.h", cprefix = "GST_DEBUG_")]
	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 (cheader_filename = "gst/gst.h", cprefix = "GST_DEBUG_GRAPH_SHOW_")]
	[Flags]
	public enum DebugGraphDetails {
		MEDIA_TYPE,
		CAPS_DETAILS,
		NON_DEFAULT_PARAMS,
		STATES,
		ALL
	}
	[CCode (cheader_filename = "gst/gst.h", cprefix = "GST_LEVEL_")]
	public enum DebugLevel {
		NONE,
		ERROR,
		WARNING,
		INFO,
		DEBUG,
		LOG,
		FIXME,
		TRACE,
		MEMDUMP,
		COUNT;
		[CCode (cname = "gst_debug_level_get_name")]
		public unowned string to_string ();
	}
	[CCode (cheader_filename = "gst/gst.h", cprefix = "GST_ELEMENT_")]
	[Flags]
	public enum ElementFlags {
		LOCKED_STATE,
		IS_SINK,
		UNPARENTING,
		IS_SOURCE,
		FLAG_LAST
	}
	[CCode (cheader_filename = "gst/gst.h", cprefix = "GST_EVENT_")]
	public enum EventType {
		UNKNOWN,
		FLUSH_START,
		FLUSH_STOP,
		EOS,
		NEWSEGMENT,
		TAG,
		BUFFERSIZE,
		SINK_MESSAGE,
		QOS,
		SEEK,
		NAVIGATION,
		LATENCY,
		STEP,
		CUSTOM_UPSTREAM,
		CUSTOM_DOWNSTREAM,
		CUSTOM_DOWNSTREAM_OOB,
		CUSTOM_BOTH,
		CUSTOM_BOTH_OOB;
		[CCode (cname = "gst_event_type_get_flags")]
		public Gst.EventTypeFlags get_flags ();
		[CCode (cname = "gst_event_type_to_quark")]
		public GLib.Quark to_quark ();
		[CCode (cname = "gst_event_type_get_name")]
		public unowned string get_name ();
		[CCode (cname = "gst_event_type_get_name")]
		public unowned string to_string ();
	}
	[CCode (cheader_filename = "gst/gst.h", cprefix = "GST_EVENT_TYPE_")]
	[Flags]
	public enum EventTypeFlags {
		UPSTREAM,
		DOWNSTREAM,
		SERIALIZED
	}
	[CCode (cheader_filename = "gst/gst.h", cprefix = "GST_FLOW_")]
	public enum FlowReturn {
		CUSTOM_SUCCESS_2,
		CUSTOM_SUCCESS_1,
		CUSTOM_SUCCESS,
		RESEND,
		OK,
		NOT_LINKED,
		WRONG_STATE,
		UNEXPECTED,
		NOT_NEGOTIATED,
		ERROR,
		NOT_SUPPORTED,
		CUSTOM_ERROR,
		CUSTOM_ERROR_1,
		CUSTOM_ERROR_2;
		[CCode (cname = "GST_FLOW_IS_FATAL")]
		public bool is_fatal ();
		[CCode (cname = "GST_FLOW_IS_SUCCESS")]
		public bool is_success ();
		[CCode (cname = "gst_flow_get_name")]
		public unowned string to_string ();
	}
	[CCode (cheader_filename = "gst/gst.h", cprefix = "GST_FORMAT_")]
	public enum Format {
		UNDEFINED,
		DEFAULT,
		BYTES,
		TIME,
		BUFFERS,
		PERCENT;
		[CCode (cname = "gst_format_get_details")]
		public Gst.FormatDefinition get_details ();
		[CCode (cname = "gst_format_to_quark")]
		public GLib.Quark to_quark ();
		[CCode (cname = "gst_format_get_name")]
		public unowned string get_name ();
		[CCode (cname = "gst_format_get_name")]
		public unowned string to_string ();
		[CCode (cname = "GST_FORMAT_PERCENT_MAX")]
		public const int64 PERCENT_MAX;
		[CCode (cname = "GST_FORMAT_PERCENT_SCALE")]
		public const int64 PERCENT_SCALE;
	}
	[CCode (cheader_filename = "gst/gst.h", cprefix = "GST_INDEX_")]
	public enum IndexCertainty {
		UNKNOWN,
		CERTAIN,
		FUZZY
	}
	[CCode (cheader_filename = "gst/gst.h", cprefix = "GST_INDEX_ENTRY_")]
	public enum IndexEntryType {
		ID,
		ASSOCIATION,
		OBJECT,
		FORMAT
	}
	[CCode (cheader_filename = "gst/gst.h", cprefix = "GST_INDEX_")]
	[Flags]
	public enum IndexFlags {
		WRITABLE,
		READABLE,
		FLAG_LAST
	}
	[CCode (cheader_filename = "gst/gst.h", cprefix = "GST_INDEX_LOOKUP_")]
	public enum IndexLookupMethod {
		EXACT,
		BEFORE,
		AFTER
	}
	[CCode (cheader_filename = "gst/gst.h", cprefix = "GST_INDEX_RESOLVER_")]
	public enum IndexResolverMethod {
		CUSTOM,
		GTYPE,
		PATH
	}
	[CCode (cheader_filename = "gst/gst.h", cprefix = "GST_ITERATOR_ITEM_")]
	public enum IteratorItem {
		SKIP,
		PASS,
		END
	}
	[CCode (cheader_filename = "gst/gst.h", cprefix = "GST_ITERATOR_")]
	public enum IteratorResult {
		DONE,
		OK,
		RESYNC,
		ERROR
	}
	[CCode (cheader_filename = "gst/gst.h", cprefix = "GST_LIBRARY_ERROR_")]
	public enum LibraryError {
		FAILED,
		TOO_LAZY,
		INIT,
		SHUTDOWN,
		SETTINGS,
		ENCODE,
		NUM_ERRORS
	}
	[CCode (cheader_filename = "gst/gst.h", cprefix = "GST_MESSAGE_")]
	[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,
		REQUEST_STATE,
		STEP_START,
		QOS,
		PROGRESS,
		ANY;
		public GLib.Quark to_quark ();
		public unowned string get_name ();
		[CCode (cname = "gst_message_type_get_name")]
		public unowned string to_string ();
	}
	[CCode (cheader_filename = "gst/gst.h", cprefix = "GST_MINI_OBJECT_FLAG_")]
	[Flags]
	public enum MiniObjectFlags {
		READONLY,
		RESERVED1,
		LAST
	}
	[CCode (cheader_filename = "gst/gst.h", cprefix = "GST_OBJECT_")]
	[Flags]
	public enum ObjectFlags {
		DISPOSING,
		FLOATING,
		FLAG_LAST
	}
	[CCode (cheader_filename = "gst/gst.h", cprefix = "GST_PAD_")]
	public enum PadDirection {
		UNKNOWN,
		SRC,
		SINK
	}
	[CCode (cheader_filename = "gst/gst.h", cprefix = "GST_PAD_")]
	[Flags]
	public enum PadFlags {
		BLOCKED,
		FLUSHING,
		IN_GETCAPS,
		IN_SETCAPS,
		BLOCKING,
		FLAG_LAST
	}
	[CCode (cheader_filename = "gst/gst.h", cprefix = "GST_PAD_LINK_CHECK_")]
	[Flags]
	public enum PadLinkCheck {
		NOTHING,
		HIERARCHY,
		TEMPLATE_CAPS,
		CAPS
	}
	[CCode (cheader_filename = "gst/gst.h", cprefix = "GST_PAD_LINK_")]
	public enum PadLinkReturn {
		OK,
		WRONG_HIERARCHY,
		WAS_LINKED,
		WRONG_DIRECTION,
		NOFORMAT,
		NOSCHED,
		REFUSED;
		[CCode (cname = "GST_PAD_LINK_FAILED")]
		public bool failed ();
		[CCode (cname = "GST_PAD_LINK_SUCCESSFUL")]
		public bool successful ();
	}
	[CCode (cheader_filename = "gst/gst.h", cprefix = "GST_PAD_")]
	public enum PadPresence {
		ALWAYS,
		SOMETIMES,
		REQUEST
	}
	[CCode (cheader_filename = "gst/gst.h", cprefix = "GST_PAD_TEMPLATE_")]
	[Flags]
	public enum PadTemplateFlags {
		FIXED,
		FLAG_LAST
	}
	[CCode (cheader_filename = "gst/gst.h", cprefix = "GST_PARSE_ERROR_")]
	public enum ParseError {
		SYNTAX,
		NO_SUCH_ELEMENT,
		NO_SUCH_PROPERTY,
		LINK,
		COULD_NOT_SET_PROPERTY,
		EMPTY_BIN,
		EMPTY
	}
	[CCode (cheader_filename = "gst/gst.h", cprefix = "GST_PARSE_FLAG_")]
	[Flags]
	public enum ParseFlags {
		NONE,
		FATAL_ERRORS
	}
	[CCode (cheader_filename = "gst/gst.h", cprefix = "GST_PIPELINE_FLAG_")]
	[Flags]
	public enum PipelineFlags {
		FIXED_CLOCK,
		LAST
	}
	[CCode (cheader_filename = "gst/gst.h", cprefix = "GST_PLUGIN_DEPENDENCY_FLAG_")]
	[Flags]
	public enum PluginDependencyFlags {
		NONE,
		RECURSE,
		PATHS_ARE_DEFAULT_ONLY,
		FILE_NAME_IS_SUFFIX
	}
	[CCode (cheader_filename = "gst/gst.h", cprefix = "GST_PLUGIN_ERROR_")]
	public enum PluginError {
		MODULE,
		DEPENDENCIES,
		NAME_MISMATCH
	}
	[CCode (cheader_filename = "gst/gst.h", cprefix = "GST_PLUGIN_FLAG_")]
	[Flags]
	public enum PluginFlags {
		CACHED,
		BLACKLISTED
	}
	[CCode (cheader_filename = "gst/gst.h", cprefix = "GST_PROGRESS_TYPE_")]
	public enum ProgressType {
		START,
		CONTINUE,
		COMPLETE,
		CANCELED,
		ERROR
	}
	[CCode (cheader_filename = "gst/gst.h", cprefix = "GST_QOS_TYPE_")]
	public enum QOSType {
		OVERFLOW,
		UNDERFLOW,
		THROTTLE
	}
	[CCode (cheader_filename = "gst/gst.h", cprefix = "GST_QUERY_")]
	public enum QueryType {
		NONE,
		POSITION,
		DURATION,
		LATENCY,
		JITTER,
		RATE,
		SEEKING,
		SEGMENT,
		CONVERT,
		FORMATS,
		BUFFERING,
		CUSTOM,
		URI;
		public GLib.Quark to_quark ();
		public unowned string get_name ();
		public Gst.QueryTypeDefinition get_details ();
		public static Gst.QueryType get_by_nick ();
		public static Gst.Iterator<Gst.QueryTypeDefinition> iterate_definitions ();
		public static Gst.QueryType register (string nick, string description);
		[CCode (cname = "gst_query_type_get_name")]
		public unowned string to_string ();
	}
	[CCode (cheader_filename = "gst/gst.h", cprefix = "GST_RANK_")]
	public enum Rank {
		NONE,
		MARGINAL,
		SECONDARY,
		PRIMARY
	}
	[CCode (cheader_filename = "gst/gst.h", cprefix = "GST_RESOURCE_ERROR_")]
	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 (cheader_filename = "gst/gst.h", cprefix = "GST_SEARCH_MODE_")]
	public enum SearchMode {
		EXACT,
		BEFORE,
		AFTER
	}
	[CCode (cheader_filename = "gst/gst.h", cprefix = "GST_SEEK_FLAG_")]
	[Flags]
	public enum SeekFlags {
		NONE,
		FLUSH,
		ACCURATE,
		KEY_UNIT,
		SEGMENT,
		SKIP
	}
	[CCode (cheader_filename = "gst/gst.h", cprefix = "GST_SEEK_TYPE_")]
	public enum SeekType {
		NONE,
		CUR,
		SET,
		END
	}
	[CCode (cheader_filename = "gst/gst.h", cprefix = "GST_STATE_")]
	public enum State {
		VOID_PENDING,
		NULL,
		READY,
		PAUSED,
		PLAYING;
		[CCode (cname = "GST_STATE_GET_NEXT")]
		public Gst.State get_next (Gst.State pending);
		[CCode (cname = "gst_element_state_get_name")]
		public unowned string to_string ();
	}
	[CCode (cheader_filename = "gst/gst.h", cprefix = "GST_STATE_CHANGE_")]
	public enum StateChange {
		NULL_TO_READY,
		READY_TO_PAUSED,
		PAUSED_TO_PLAYING,
		PLAYING_TO_PAUSED,
		PAUSED_TO_READY,
		READY_TO_NULL;
		[CCode (cname = "GST_STATE_TRANSITION")]
		public static Gst.StateChange transition (Gst.State cur, Gst.State next);
		[CCode (cname = "GST_STATE_TRANSITION_CURRENT")]
		public static Gst.State transition_current ();
		[CCode (cname = "GST_STATE_TRANSITION_NEXT")]
		public static Gst.State transition_next ();
	}
	[CCode (cheader_filename = "gst/gst.h", cprefix = "GST_STATE_CHANGE_")]
	public enum StateChangeReturn {
		FAILURE,
		SUCCESS,
		ASYNC,
		NO_PREROLL;
		[CCode (cname = "gst_element_state_change_return_get_name")]
		public unowned string to_string ();
	}
	[CCode (cheader_filename = "gst/gst.h", cprefix = "GST_STREAM_ERROR_")]
	public enum StreamError {
		FAILED,
		TOO_LAZY,
		NOT_IMPLEMENTED,
		TYPE_NOT_FOUND,
		WRONG_TYPE,
		CODEC_NOT_FOUND,
		DECODE,
		ENCODE,
		DEMUX,
		MUX,
		FORMAT,
		DECRYPT,
		DECRYPT_NOKEY,
		NUM_ERRORS
	}
	[CCode (cheader_filename = "gst/gst.h", cprefix = "GST_STREAM_STATUS_TYPE_")]
	public enum StreamStatusType {
		CREATE,
		ENTER,
		LEAVE,
		DESTROY,
		START,
		PAUSE,
		STOP
	}
	[CCode (cheader_filename = "gst/gst.h", cprefix = "GST_STRUCTURE_CHANGE_TYPE_PAD_")]
	public enum StructureChangeType {
		LINK,
		UNLINK
	}
	[CCode (cheader_filename = "gst/gst.h", cprefix = "GST_TAG_FLAG_")]
	public enum TagFlag {
		UNDEFINED,
		META,
		ENCODED,
		DECODED,
		COUNT
	}
	[CCode (cheader_filename = "gst/gst.h", cprefix = "GST_TAG_MERGE_")]
	public enum TagMergeMode {
		UNDEFINED,
		REPLACE_ALL,
		REPLACE,
		APPEND,
		PREPEND,
		KEEP,
		KEEP_ALL,
		COUNT
	}
	[CCode (cheader_filename = "gst/gst.h", cprefix = "GST_TASK_")]
	public enum TaskState {
		STARTED,
		STOPPED,
		PAUSED
	}
	[CCode (cheader_filename = "gst/gst.h", cprefix = "GST_TYPE_FIND_")]
	public enum TypeFindProbability {
		MINIMUM,
		POSSIBLE,
		LIKELY,
		NEARLY_CERTAIN,
		MAXIMUM
	}
	[CCode (cheader_filename = "gst/gst.h", cprefix = "GST_URI_")]
	public enum URIType {
		UNKNOWN,
		SINK,
		SRC
	}
	[CCode (cheader_filename = "gst/gst.h", cprefix = "GST_CORE_ERROR_")]
	public errordomain CoreError {
		FAILED,
		TOO_LAZY,
		NOT_IMPLEMENTED,
		STATE_CHANGE,
		PAD,
		THREAD,
		NEGOTIATION,
		EVENT,
		SEEK,
		CAPS,
		TAG,
		MISSING_PLUGIN,
		CLOCK,
		DISABLED,
		NUM_ERRORS
	}
	[CCode (cheader_filename = "gst/gst.h")]
	public delegate unowned Gst.Buffer BufferListDoFunction (Gst.Buffer buffer);
	[CCode (cheader_filename = "gst/gst.h")]
	public delegate Gst.BufferListItem BufferListFunc (out unowned Gst.Buffer buffer, uint group, uint idx);
	[CCode (cheader_filename = "gst/gst.h", cname = "GCallback")]
	public delegate bool BufferProbeCallback (Gst.Pad pad, Gst.Buffer buffer);
	[CCode (cheader_filename = "gst/gst.h")]
	public delegate bool BusFunc (Gst.Bus bus, Gst.Message message);
	[CCode (cheader_filename = "gst/gst.h")]
	public delegate Gst.BusSyncReply BusSyncHandler (Gst.Bus bus, Gst.Message message);
	[CCode (cheader_filename = "gst/gst.h")]
	public delegate bool ClockCallback (Gst.Clock clock, Gst.ClockTime time, Gst.ClockID id);
	[CCode (cheader_filename = "gst/gst.h", has_target = false)]
	public delegate void* CopyFunction (void* object);
	[CCode (cheader_filename = "gst/gst.h", cname = "GCallback")]
	public delegate bool DataProbeCallback (Gst.Pad pad, Gst.MiniObject data);
	[CCode (cheader_filename = "gst/gst.h", has_target = false)]
	public delegate void DebugFuncPtr ();
	[CCode (cheader_filename = "gst/gst.h", cname = "GCallback")]
	public delegate bool EventProbeCallback (Gst.Pad pad, Gst.Event event);
	[CCode (cheader_filename = "gst/gst.h")]
	public delegate bool FilterFunc (void* obj);
	[CCode (cheader_filename = "gst/gst.h")]
	public delegate bool IndexFilter (Gst.Index index, Gst.IndexEntry entry);
	[CCode (cheader_filename = "gst/gst.h")]
	public delegate bool IndexResolver (Gst.Index index, Gst.Object writer, string writer_string);
	[CCode (cheader_filename = "gst/gst.h", has_target = false)]
	public delegate void IteratorDisposeFunction (void* owner);
	[CCode (cheader_filename = "gst/gst.h")]
	public delegate bool IteratorFoldFunction<T> (T item, ref Gst.Value ret);
	[CCode (cheader_filename = "gst/gst.h", has_target = false)]
	public delegate void IteratorFreeFunction (Gst.Iterator it);
	[CCode (cheader_filename = "gst/gst.h", has_target = false)]
	public delegate Gst.IteratorItem IteratorItemFunction<T> (Gst.Iterator it, out T item);
	[CCode (cheader_filename = "gst/gst.h", has_target = false)]
	public delegate Gst.IteratorResult IteratorNextFunction<T> (Gst.Iterator it, out T result);
	[CCode (cheader_filename = "gst/gst.h", has_target = false)]
	public delegate void IteratorResyncFunction (Gst.Iterator it);
	[CCode (cheader_filename = "gst/gst.h")]
	public delegate void LogFunction (Gst.DebugCategory category, Gst.DebugLevel level, string file, string function, int line, GLib.Object object, Gst.DebugMessage message);
	[CCode (cheader_filename = "gst/gst.h", has_target = false)]
	public delegate unowned Gst.MiniObject MiniObjectCopyFunction (Gst.MiniObject obj);
	[CCode (cheader_filename = "gst/gst.h", has_target = false)]
	public delegate void MiniObjectFinalizeFunction (Gst.MiniObject obj);
	[CCode (cheader_filename = "gst/gst.h", has_target = false)]
	public delegate void MiniObjectWeakNotify (void* data, Gst.MiniObject where_the_mini_object_was);
	[CCode (cheader_filename = "gst/gst.h", has_target = false)]
	public delegate bool PadAcceptCapsFunction (Gst.Pad pad, Gst.Caps caps);
	[CCode (cheader_filename = "gst/gst.h", has_target = false)]
	public delegate bool PadActivateFunction (Gst.Pad pad);
	[CCode (cheader_filename = "gst/gst.h", has_target = false)]
	public delegate bool PadActivateModeFunction (Gst.Pad pad, bool active);
	[CCode (cheader_filename = "gst/gst.h")]
	public delegate void PadBlockCallback (Gst.Pad pad, bool blocked);
	[CCode (cheader_filename = "gst/gst.h", has_target = false)]
	public delegate Gst.FlowReturn PadBufferAllocFunction (Gst.Pad pad, uint64 offset, uint size, Gst.Caps caps, out Gst.Buffer buf);
	[CCode (cheader_filename = "gst/gst.h", has_target = false)]
	public delegate Gst.FlowReturn PadChainFunction (Gst.Pad pad, owned Gst.Buffer buffer);
	[CCode (cheader_filename = "gst/gst.h", has_target = false)]
	public delegate Gst.FlowReturn PadChainListFunction (Gst.Pad pad, owned Gst.BufferList list);
	[CCode (cheader_filename = "gst/gst.h", has_target = false)]
	public delegate bool PadCheckGetRangeFunction (Gst.Pad pad);
	[CCode (cheader_filename = "gst/gst.h")]
	public delegate bool PadDispatcherFunction (Gst.Pad pad);
	[CCode (cheader_filename = "gst/gst.h", has_target = false)]
	public delegate bool PadEventFunction (Gst.Pad pad, owned Gst.Event event);
	[CCode (cheader_filename = "gst/gst.h", has_target = false)]
	public delegate void PadFixateCapsFunction (Gst.Pad pad, Gst.Caps caps);
	[CCode (cheader_filename = "gst/gst.h", has_target = false)]
	public delegate Gst.Caps PadGetCapsFunction (Gst.Pad pad);
	[CCode (cheader_filename = "gst/gst.h", has_target = false)]
	public delegate Gst.FlowReturn PadGetRangeFunction (Gst.Pad pad, uint64 offset, uint length, out Gst.Buffer buffer);
	[CCode (cheader_filename = "gst/gst.h", has_target = false)]
	public delegate GLib.List<Gst.Pad> PadIntLinkFunction (Gst.Pad pad);
	[CCode (cheader_filename = "gst/gst.h", has_target = false)]
	public delegate Gst.Iterator<Gst.Pad> PadIterIntLinkFunction (Gst.Pad pad);
	[CCode (cheader_filename = "gst/gst.h", has_target = false)]
	public delegate Gst.PadLinkReturn PadLinkFunction (Gst.Pad pad, Gst.Pad peer);
	[CCode (cheader_filename = "gst/gst.h", has_target = false)]
	public delegate bool PadQueryFunction (Gst.Pad pad, Gst.Query query);
	[CCode (cheader_filename = "gst/gst.h", has_target = false)]
	public delegate Gst.QueryType PadQueryTypeFunction (Gst.Pad pad);
	[CCode (cheader_filename = "gst/gst.h", has_target = false)]
	public delegate bool PadSetCapsFunction (Gst.Pad pad, Gst.Caps caps);
	[CCode (cheader_filename = "gst/gst.h", has_target = false)]
	public delegate void PadUnlinkFunction (Gst.Pad pad);
	[CCode (cheader_filename = "gst/gst.h")]
	public delegate bool PluginFeatureFilter (Gst.PluginFeature feature);
	[CCode (cheader_filename = "gst/gst.h")]
	public delegate bool PluginFilter (Gst.Plugin plugin);
	[CCode (cheader_filename = "gst/gst.h")]
	public delegate bool PluginInitFullFunc (Gst.Plugin plugin);
	[CCode (cheader_filename = "gst/gst.h", has_target = false)]
	public delegate bool PluginInitFunc (Gst.Plugin plugin);
	[CCode (cheader_filename = "gst/gst.h")]
	public delegate bool StructureForeachFunc (GLib.Quark field_id, Gst.Value value);
	[CCode (cheader_filename = "gst/gst.h")]
	public delegate bool StructureMapFunc (GLib.Quark field_id, ref Gst.Value value);
	[CCode (cheader_filename = "gst/gst.h")]
	public delegate void TagForeachFunc (Gst.TagList list, string tag);
	[CCode (cheader_filename = "gst/gst.h", has_target = false)]
	public delegate void TagMergeFunc (Gst.Value dest, Gst.Value src);
	[CCode (cheader_filename = "gst/gst.h")]
	public delegate void TaskFunction ();
	[CCode (cheader_filename = "gst/gst.h")]
	public delegate void TaskPoolFunction ();
	[CCode (cheader_filename = "gst/gst.h")]
	public delegate void TypeFindFunction (Gst.TypeFind find);
	[CCode (cheader_filename = "gst/gst.h", has_target = false)]
	public delegate int ValueCompareFunc (Gst.Value value1, Gst.Value value2);
	[CCode (cheader_filename = "gst/gst.h", has_target = false)]
	public delegate bool ValueDeserializeFunc (Gst.Value dest, string s);
	[CCode (cheader_filename = "gst/gst.h", has_target = false)]
	public delegate bool ValueIntersectFunc (Gst.Value dest, Gst.Value value1, Gst.Value value2);
	[CCode (cheader_filename = "gst/gst.h", has_target = false)]
	public delegate unowned string ValueSerializeFunc (Gst.Value value1);
	[CCode (cheader_filename = "gst/gst.h", has_target = false)]
	public delegate bool ValueSubtractFunc (Gst.Value dest, Gst.Value minuend, Gst.Value subtrahend);
	[CCode (cheader_filename = "gst/gst.h", has_target = false)]
	public delegate bool ValueUnionFunc (Gst.Value dest, Gst.Value value1, Gst.Value value2);
	[CCode (cheader_filename = "gst/gst.h")]
	public const int BUFFER_COPY_ALL;
	[CCode (cheader_filename = "gst/gst.h")]
	public const int BUFFER_OFFSET_NONE;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string BUFFER_TRACE_NAME;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string CLOCK_ENTRY_TRACE_NAME;
	[CCode (cheader_filename = "gst/gst.h")]
	public const int CLOCK_TIME_NONE;
	[CCode (cheader_filename = "gst/gst.h")]
	public const int DEBUG_BG_MASK;
	[CCode (cheader_filename = "gst/gst.h")]
	public const int DEBUG_FG_MASK;
	[CCode (cheader_filename = "gst/gst.h")]
	public const int DEBUG_FORMAT_MASK;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string ELEMENT_FACTORY_KLASS_DECODER;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string ELEMENT_FACTORY_KLASS_DEMUXER;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string ELEMENT_FACTORY_KLASS_DEPAYLOADER;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string ELEMENT_FACTORY_KLASS_ENCODER;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string ELEMENT_FACTORY_KLASS_FORMATTER;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string ELEMENT_FACTORY_KLASS_MEDIA_AUDIO;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string ELEMENT_FACTORY_KLASS_MEDIA_IMAGE;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string ELEMENT_FACTORY_KLASS_MEDIA_METADATA;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string ELEMENT_FACTORY_KLASS_MEDIA_SUBTITLE;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string ELEMENT_FACTORY_KLASS_MEDIA_VIDEO;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string ELEMENT_FACTORY_KLASS_MUXER;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string ELEMENT_FACTORY_KLASS_PARSER;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string ELEMENT_FACTORY_KLASS_PAYLOADER;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string ELEMENT_FACTORY_KLASS_SINK;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string ELEMENT_FACTORY_KLASS_SRC;
	[CCode (cheader_filename = "gst/gst.h")]
	public const int ELEMENT_FACTORY_TYPE_ANY;
	[CCode (cheader_filename = "gst/gst.h")]
	public const int ELEMENT_FACTORY_TYPE_AUDIOVIDEO_SINKS;
	[CCode (cheader_filename = "gst/gst.h")]
	public const int ELEMENT_FACTORY_TYPE_AUDIO_ENCODER;
	[CCode (cheader_filename = "gst/gst.h")]
	public const int ELEMENT_FACTORY_TYPE_DECODABLE;
	[CCode (cheader_filename = "gst/gst.h")]
	public const int ELEMENT_FACTORY_TYPE_DECODER;
	[CCode (cheader_filename = "gst/gst.h")]
	public const int ELEMENT_FACTORY_TYPE_DEMUXER;
	[CCode (cheader_filename = "gst/gst.h")]
	public const int ELEMENT_FACTORY_TYPE_DEPAYLOADER;
	[CCode (cheader_filename = "gst/gst.h")]
	public const int ELEMENT_FACTORY_TYPE_ENCODER;
	[CCode (cheader_filename = "gst/gst.h")]
	public const int ELEMENT_FACTORY_TYPE_FORMATTER;
	[CCode (cheader_filename = "gst/gst.h")]
	public const int ELEMENT_FACTORY_TYPE_MAX_ELEMENTS;
	[CCode (cheader_filename = "gst/gst.h")]
	public const int ELEMENT_FACTORY_TYPE_MEDIA_ANY;
	[CCode (cheader_filename = "gst/gst.h")]
	public const int ELEMENT_FACTORY_TYPE_MEDIA_AUDIO;
	[CCode (cheader_filename = "gst/gst.h")]
	public const int ELEMENT_FACTORY_TYPE_MEDIA_IMAGE;
	[CCode (cheader_filename = "gst/gst.h")]
	public const int ELEMENT_FACTORY_TYPE_MEDIA_METADATA;
	[CCode (cheader_filename = "gst/gst.h")]
	public const int ELEMENT_FACTORY_TYPE_MEDIA_SUBTITLE;
	[CCode (cheader_filename = "gst/gst.h")]
	public const int ELEMENT_FACTORY_TYPE_MEDIA_VIDEO;
	[CCode (cheader_filename = "gst/gst.h")]
	public const int ELEMENT_FACTORY_TYPE_MUXER;
	[CCode (cheader_filename = "gst/gst.h")]
	public const int ELEMENT_FACTORY_TYPE_PARSER;
	[CCode (cheader_filename = "gst/gst.h")]
	public const int ELEMENT_FACTORY_TYPE_PAYLOADER;
	[CCode (cheader_filename = "gst/gst.h")]
	public const int ELEMENT_FACTORY_TYPE_SINK;
	[CCode (cheader_filename = "gst/gst.h")]
	public const int ELEMENT_FACTORY_TYPE_SRC;
	[CCode (cheader_filename = "gst/gst.h")]
	public const int ELEMENT_FACTORY_TYPE_VIDEO_ENCODER;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string EVENT_TRACE_NAME;
	[CCode (cheader_filename = "gst/gst.h")]
	public const int EVENT_TYPE_BOTH;
	[CCode (cheader_filename = "gst/gst.h")]
	public const int EVENT_TYPE_SHIFT;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string FOURCC_FORMAT;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string LICENSE_UNKNOWN;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string MESSAGE_TRACE_NAME;
	[CCode (cheader_filename = "gst/gst.h")]
	public const int MSECOND;
	[CCode (cheader_filename = "gst/gst.h")]
	public const int NSECOND;
	[CCode (cheader_filename = "gst/gst.h")]
	public const int PAD_LINK_CHECK_DEFAULT;
	[CCode (cheader_filename = "gst/gst.h")]
	public const int PARAM_CONTROLLABLE;
	[CCode (cheader_filename = "gst/gst.h")]
	public const int PARAM_MUTABLE_PAUSED;
	[CCode (cheader_filename = "gst/gst.h")]
	public const int PARAM_MUTABLE_PLAYING;
	[CCode (cheader_filename = "gst/gst.h")]
	public const int PARAM_MUTABLE_READY;
	[CCode (cheader_filename = "gst/gst.h")]
	public const int PARAM_USER_SHIFT;
	[CCode (cheader_filename = "gst/gst.h")]
	public const int SECOND;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_ALBUM;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_ALBUM_ARTIST;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_ALBUM_ARTIST_SORTNAME;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_ALBUM_GAIN;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_ALBUM_PEAK;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_ALBUM_SORTNAME;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_ALBUM_VOLUME_COUNT;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_ALBUM_VOLUME_NUMBER;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_APPLICATION_DATA;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_APPLICATION_NAME;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_ARTIST;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_ARTIST_SORTNAME;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_ATTACHMENT;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_AUDIO_CODEC;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_BEATS_PER_MINUTE;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_BITRATE;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_CODEC;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_COMMENT;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_COMPOSER;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_COMPOSER_SORTNAME;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_CONTACT;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_CONTAINER_FORMAT;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_COPYRIGHT;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_COPYRIGHT_URI;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_DATE;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_DATE_TIME;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_DESCRIPTION;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_DEVICE_MANUFACTURER;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_DEVICE_MODEL;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_DURATION;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_ENCODED_BY;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_ENCODER;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_ENCODER_VERSION;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_EXTENDED_COMMENT;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_GENRE;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_GEO_LOCATION_CAPTURE_DIRECTION;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_GEO_LOCATION_CITY;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_GEO_LOCATION_COUNTRY;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_GEO_LOCATION_ELEVATION;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_GEO_LOCATION_HORIZONTAL_ERROR;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_GEO_LOCATION_LATITUDE;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_GEO_LOCATION_LONGITUDE;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_GEO_LOCATION_MOVEMENT_DIRECTION;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_GEO_LOCATION_MOVEMENT_SPEED;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_GEO_LOCATION_NAME;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_GEO_LOCATION_SUBLOCATION;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_GROUPING;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_HOMEPAGE;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_IMAGE;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_IMAGE_ORIENTATION;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_ISRC;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_KEYWORDS;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_LANGUAGE_CODE;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_LICENSE;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_LICENSE_URI;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_LOCATION;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_LYRICS;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_MAXIMUM_BITRATE;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_MINIMUM_BITRATE;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_NOMINAL_BITRATE;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_ORGANIZATION;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_PERFORMER;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_PREVIEW_IMAGE;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_REFERENCE_LEVEL;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_SERIAL;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_SHOW_EPISODE_NUMBER;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_SHOW_NAME;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_SHOW_SEASON_NUMBER;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_SHOW_SORTNAME;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_SUBTITLE_CODEC;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_TITLE;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_TITLE_SORTNAME;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_TRACK_COUNT;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_TRACK_GAIN;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_TRACK_NUMBER;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_TRACK_PEAK;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_USER_RATING;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_VERSION;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TAG_VIDEO_CODEC;
	[CCode (cheader_filename = "gst/gst.h")]
	public const string TIME_FORMAT;
	[CCode (cheader_filename = "gst/gst.h")]
	public const int USECOND;
	[CCode (cheader_filename = "gst/gst.h")]
	public const int VALUE_EQUAL;
	[CCode (cheader_filename = "gst/gst.h")]
	public const int VALUE_GREATER_THAN;
	[CCode (cheader_filename = "gst/gst.h")]
	public const int VALUE_LESS_THAN;
	[CCode (cheader_filename = "gst/gst.h")]
	public const int VALUE_UNORDERED;
	[CCode (cheader_filename = "gst/gst.h")]
	public const int VERSION_MAJOR;
	[CCode (cheader_filename = "gst/gst.h")]
	public const int VERSION_MICRO;
	[CCode (cheader_filename = "gst/gst.h")]
	public const int VERSION_MINOR;
	[CCode (cheader_filename = "gst/gst.h")]
	public const int VERSION_NANO;
	[CCode (cheader_filename = "gst/gst.h")]
	public static void atomic_int_set (int atomic_int, int value);
	[CCode (cheader_filename = "gst/gst.h")]
	public static GLib.Quark core_error_quark ();
	[CCode (cheader_filename = "gst/gst.h")]
	public static void debug_add_log_function (Gst.LogFunction func, void* data);
	[CCode (cheader_filename = "gst/gst.h", cname = "GST_DEBUG_BIN_TO_DOT_FILE")]
	public static void debug_bin_to_dot_file (Gst.Bin bin, Gst.DebugGraphDetails details, string prefix);
	[CCode (cheader_filename = "gst/gst.h", cname = "GST_DEBUG_BIN_TO_DOT_FILE_WITH_TS")]
	public static void debug_bin_to_dot_file_with_ts (Gst.Bin bin, Gst.DebugGraphDetails details, string prefix);
	[CCode (cheader_filename = "gst/gst.h")]
	public static unowned string debug_construct_term_color (uint colorinfo);
	[CCode (cheader_filename = "gst/gst.h")]
	public static int debug_construct_win_color (uint colorinfo);
	[CCode (cheader_filename = "gst/gst.h")]
	public static GLib.SList<Gst.DebugCategory> debug_get_all_categories ();
	[CCode (cheader_filename = "gst/gst.h")]
	public static Gst.DebugLevel debug_get_default_threshold ();
	[CCode (cheader_filename = "gst/gst.h")]
	public static bool debug_is_active ();
	[CCode (cheader_filename = "gst/gst.h")]
	public static bool debug_is_colored ();
	[CCode (cheader_filename = "gst/gst.h")]
	public static void debug_log (Gst.DebugCategory category, Gst.DebugLevel level, string file, string function, int line, GLib.Object object, string format);
	[CCode (cheader_filename = "gst/gst.h")]
	public static void debug_log_default (Gst.DebugCategory category, Gst.DebugLevel level, string file, string function, int line, GLib.Object object, Gst.DebugMessage message, void* unused);
	[CCode (cheader_filename = "gst/gst.h")]
	public static void debug_log_valist (Gst.DebugCategory category, Gst.DebugLevel level, string file, string function, int line, GLib.Object object, string format, void* args);
	[CCode (cheader_filename = "gst/gst.h")]
	public static void debug_print_stack_trace ();
	[CCode (cheader_filename = "gst/gst.h")]
	public static uint debug_remove_log_function (Gst.LogFunction func);
	[CCode (cheader_filename = "gst/gst.h")]
	public static uint debug_remove_log_function_by_data (void* data);
	[CCode (cheader_filename = "gst/gst.h")]
	public static void debug_set_active (bool active);
	[CCode (cheader_filename = "gst/gst.h")]
	public static void debug_set_colored (bool colored);
	[CCode (cheader_filename = "gst/gst.h")]
	public static void debug_set_default_threshold (Gst.DebugLevel level);
	[CCode (cheader_filename = "gst/gst.h")]
	public static void debug_set_threshold_for_name (string name, Gst.DebugLevel level);
	[CCode (cheader_filename = "gst/gst.h")]
	public static void debug_unset_threshold_for_name (string name);
	[CCode (cheader_filename = "gst/gst.h")]
	public static bool default_registry_check_feature_version (string feature_name, uint min_major, uint min_minor, uint min_micro);
	[CCode (cheader_filename = "gst/gst.h")]
	public static void deinit ();
	[CCode (cheader_filename = "gst/gst.h")]
	public static GLib.Type double_range_get_type ();
	[CCode (cheader_filename = "gst/gst.h")]
	public static string error_get_message (GLib.Quark domain, int code);
	[CCode (cheader_filename = "gst/gst.h")]
	public static unowned string filename_to_uri (string filename) throws GLib.Error;
	[CCode (cheader_filename = "gst/gst.h")]
	public static GLib.List filter_run (GLib.List list, Gst.FilterFunc func, bool first);
	[CCode (cheader_filename = "gst/gst.h")]
	public static GLib.Quark flow_to_quark (Gst.FlowReturn ret);
	[CCode (cheader_filename = "gst/gst.h")]
	public static Gst.Format format_get_by_nick (string nick);
	[CCode (cheader_filename = "gst/gst.h")]
	public static Gst.FormatDefinition format_get_details (Gst.Format format);
	[CCode (cheader_filename = "gst/gst.h")]
	public static Gst.Iterator<Gst.FormatDefinition> format_iterate_definitions ();
	[CCode (cheader_filename = "gst/gst.h")]
	public static Gst.Format format_register (string nick, string description);
	[CCode (cheader_filename = "gst/gst.h")]
	public static GLib.Quark format_to_quark (Gst.Format format);
	[CCode (cheader_filename = "gst/gst.h")]
	public static bool formats_contains (Gst.Format formats, Gst.Format format);
	[CCode (cheader_filename = "gst/gst.h")]
	public static GLib.Type fourcc_get_type ();
	[CCode (cheader_filename = "gst/gst.h")]
	public static GLib.Type fraction_get_type ();
	[CCode (cheader_filename = "gst/gst.h")]
	public static GLib.Type fraction_range_get_type ();
	[CCode (cheader_filename = "gst/gst.h")]
	public static void init ([CCode (array_length_pos = 0.9)] ref unowned string[] argv);
	[CCode (cheader_filename = "gst/gst.h")]
	public static bool init_check ([CCode (array_length_pos = 0.9)] ref unowned string[] argv) throws GLib.Error;
	[CCode (cheader_filename = "gst/gst.h")]
	public static GLib.OptionGroup init_get_option_group ();
	[CCode (cheader_filename = "gst/gst.h")]
	public static GLib.Type int64_range_get_type ();
	[CCode (cheader_filename = "gst/gst.h")]
	public static GLib.Type int_range_get_type ();
	[CCode (cheader_filename = "gst/gst.h")]
	public static bool is_initialized ();
	[CCode (cheader_filename = "gst/gst.h")]
	public static bool is_tag_list (void* p);
	[CCode (cheader_filename = "gst/gst.h")]
	public static GLib.Quark library_error_quark ();
	[CCode (cheader_filename = "gst/gst.h")]
	public static void marshal_BOOLEAN__POINTER (GLib.Closure closure, GLib.Value return_value, uint n_param_values, GLib.Value param_values, void* invocation_hint, void* marshal_data);
	[CCode (cheader_filename = "gst/gst.h")]
	public static void marshal_BOOLEAN__VOID (GLib.Closure closure, GLib.Value return_value, uint n_param_values, GLib.Value param_values, void* invocation_hint, void* marshal_data);
	[CCode (cheader_filename = "gst/gst.h")]
	public static void marshal_BOXED__BOXED (GLib.Closure closure, GLib.Value return_value, uint n_param_values, GLib.Value param_values, void* invocation_hint, void* marshal_data);
	[CCode (cheader_filename = "gst/gst.h")]
	public static void marshal_POINTER__POINTER (GLib.Closure closure, GLib.Value return_value, uint n_param_values, GLib.Value param_values, void* invocation_hint, void* marshal_data);
	[CCode (cheader_filename = "gst/gst.h")]
	public static void marshal_VOID__BOXED_OBJECT (GLib.Closure closure, GLib.Value return_value, uint n_param_values, GLib.Value param_values, void* invocation_hint, void* marshal_data);
	[CCode (cheader_filename = "gst/gst.h")]
	public static void marshal_VOID__INT64 (GLib.Closure closure, GLib.Value return_value, uint n_param_values, GLib.Value param_values, void* invocation_hint, void* marshal_data);
	[CCode (cheader_filename = "gst/gst.h")]
	public static void marshal_VOID__INT_INT (GLib.Closure closure, GLib.Value return_value, uint n_param_values, GLib.Value param_values, void* invocation_hint, void* marshal_data);
	[CCode (cheader_filename = "gst/gst.h")]
	public static void marshal_VOID__OBJECT_BOXED (GLib.Closure closure, GLib.Value return_value, uint n_param_values, GLib.Value param_values, void* invocation_hint, void* marshal_data);
	[CCode (cheader_filename = "gst/gst.h")]
	public static void marshal_VOID__OBJECT_BOXED_STRING (GLib.Closure closure, GLib.Value return_value, uint n_param_values, GLib.Value param_values, void* invocation_hint, void* marshal_data);
	[CCode (cheader_filename = "gst/gst.h")]
	public static void marshal_VOID__OBJECT_OBJECT (GLib.Closure closure, GLib.Value return_value, uint n_param_values, GLib.Value param_values, void* invocation_hint, void* marshal_data);
	[CCode (cheader_filename = "gst/gst.h")]
	public static void marshal_VOID__OBJECT_OBJECT_STRING (GLib.Closure closure, GLib.Value return_value, uint n_param_values, GLib.Value param_values, void* invocation_hint, void* marshal_data);
	[CCode (cheader_filename = "gst/gst.h")]
	public static void marshal_VOID__OBJECT_PARAM (GLib.Closure closure, GLib.Value return_value, uint n_param_values, GLib.Value param_values, void* invocation_hint, void* marshal_data);
	[CCode (cheader_filename = "gst/gst.h")]
	public static void marshal_VOID__OBJECT_POINTER (GLib.Closure closure, GLib.Value return_value, uint n_param_values, GLib.Value param_values, void* invocation_hint, void* marshal_data);
	[CCode (cheader_filename = "gst/gst.h")]
	public static void marshal_VOID__OBJECT_STRING (GLib.Closure closure, GLib.Value return_value, uint n_param_values, GLib.Value param_values, void* invocation_hint, void* marshal_data);
	[CCode (cheader_filename = "gst/gst.h")]
	public static void marshal_VOID__POINTER_OBJECT (GLib.Closure closure, GLib.Value return_value, uint n_param_values, GLib.Value param_values, void* invocation_hint, void* marshal_data);
	[CCode (cheader_filename = "gst/gst.h")]
	public static void marshal_VOID__UINT_BOXED (GLib.Closure closure, GLib.Value return_value, uint n_param_values, GLib.Value param_values, void* invocation_hint, void* marshal_data);
	[CCode (cheader_filename = "gst/gst.h")]
	public static unowned GLib.ParamSpec param_spec_fraction (string name, string nick, string blurb, int min_num, int min_denom, int max_num, int max_denom, int default_num, int default_denom, GLib.ParamFlags flags);
	[CCode (cheader_filename = "gst/gst.h")]
	public static unowned GLib.ParamSpec param_spec_mini_object (string name, string nick, string blurb, GLib.Type object_type, GLib.ParamFlags flags);
	[CCode (cheader_filename = "gst/gst.h", returns_floating_reference = true)]
	public static Gst.Element? parse_bin_from_description (string bin_description, bool ghost_unlinked_pads) throws GLib.Error;
	[CCode (cheader_filename = "gst/gst.h", returns_floating_reference = true)]
	public static Gst.Element? parse_bin_from_description_full (string bin_description, bool ghost_unlinked_pads, Gst.ParseContext? context, Gst.ParseFlags flags) throws GLib.Error;
	[CCode (cheader_filename = "gst/gst.h")]
	public static GLib.Quark parse_error_quark ();
	[CCode (cheader_filename = "gst/gst.h")]
	public static Gst.Element? parse_launch (string pipeline_description) throws GLib.Error;
	[CCode (cheader_filename = "gst/gst.h")]
	public static Gst.Element? parse_launch_full (string pipeline_description, Gst.ParseContext? context, Gst.ParseFlags flags) throws GLib.Error;
	[CCode (cheader_filename = "gst/gst.h")]
	public static Gst.Element? parse_launchv ([CCode (array_length = false, array_null_terminated = true)] string[] argv) throws GLib.Error;
	[CCode (cheader_filename = "gst/gst.h")]
	public static Gst.Element? parse_launchv_full ([CCode (array_length = false, array_null_terminated = true)] string[] argv, Gst.ParseContext? context, Gst.ParseFlags flags) throws GLib.Error;
	[CCode (cheader_filename = "gst/gst.h")]
	public static void print_element_args (GLib.StringBuilder buf, int indent, Gst.Element element);
	[CCode (cheader_filename = "gst/gst.h")]
	public static void print_pad_caps (GLib.StringBuilder buf, int indent, Gst.Pad pad);
	[CCode (cheader_filename = "gst/gst.h")]
	public static GLib.Quark resource_error_quark ();
	[CCode (cheader_filename = "gst/gst.h")]
	public static bool segtrap_is_enabled ();
	[CCode (cheader_filename = "gst/gst.h")]
	public static void segtrap_set_enabled (bool enabled);
	[CCode (cheader_filename = "gst/gst.h")]
	public static GLib.Quark stream_error_quark ();
	[CCode (cheader_filename = "gst/gst.h")]
	public static bool tag_exists (string tag);
	[CCode (cheader_filename = "gst/gst.h")]
	public static unowned string tag_get_description (string tag);
	[CCode (cheader_filename = "gst/gst.h")]
	public static Gst.TagFlag tag_get_flag (string tag);
	[CCode (cheader_filename = "gst/gst.h")]
	public static unowned string tag_get_nick (string tag);
	[CCode (cheader_filename = "gst/gst.h")]
	public static GLib.Type tag_get_type (string tag);
	[CCode (cheader_filename = "gst/gst.h")]
	public static bool tag_is_fixed (string tag);
	[CCode (cheader_filename = "gst/gst.h")]
	public static void tag_merge_strings_with_comma (GLib.Value dest, GLib.Value src);
	[CCode (cheader_filename = "gst/gst.h")]
	public static void tag_merge_use_first (GLib.Value dest, GLib.Value src);
	[CCode (cheader_filename = "gst/gst.h")]
	public static void tag_register (string name, Gst.TagFlag flag, GLib.Type type, string nick, string blurb, Gst.TagMergeFunc func);
	[CCode (cheader_filename = "gst/gst.h")]
	public static bool update_registry ();
	[CCode (cheader_filename = "gst/gst.h")]
	public static unowned string uri_construct (string protocol, string location);
	[CCode (cheader_filename = "gst/gst.h")]
	public static unowned string uri_get_location (string uri);
	[CCode (cheader_filename = "gst/gst.h")]
	public static unowned string uri_get_protocol (string uri);
	[CCode (cheader_filename = "gst/gst.h")]
	public static bool uri_has_protocol (string uri, string protocol);
	[CCode (cheader_filename = "gst/gst.h")]
	public static bool uri_is_valid (string uri);
	[CCode (cheader_filename = "gst/gst.h")]
	public static bool uri_protocol_is_supported (Gst.URIType type, string protocol);
	[CCode (cheader_filename = "gst/gst.h")]
	public static bool uri_protocol_is_valid (string protocol);
	[CCode (cheader_filename = "gst/gst.h")]
	public static void* util_array_binary_search (void* array, uint num_elements, size_t element_size, GLib.CompareDataFunc search_func, Gst.SearchMode mode, void* search_data);
	[CCode (cheader_filename = "gst/gst.h")]
	public static void util_double_to_fraction (double src, int dest_n, int dest_d);
	[CCode (cheader_filename = "gst/gst.h")]
	public static void util_dump_mem (uchar[] mem, uint size);
	[CCode (cheader_filename = "gst/gst.h")]
	public static bool util_fraction_add (int a_n, int a_d, int b_n, int b_d, int res_n, int res_d);
	[CCode (cheader_filename = "gst/gst.h")]
	public static int util_fraction_compare (int a_n, int a_d, int b_n, int b_d);
	[CCode (cheader_filename = "gst/gst.h")]
	public static bool util_fraction_multiply (int a_n, int a_d, int b_n, int b_d, int res_n, int res_d);
	[CCode (cheader_filename = "gst/gst.h")]
	public static void util_fraction_to_double (int src_n, int src_d, double dest);
	[CCode (cheader_filename = "gst/gst.h")]
	public static uint64 util_gdouble_to_guint64 (double value);
	[CCode (cheader_filename = "gst/gst.h")]
	public static Gst.ClockTime util_get_timestamp ();
	[CCode (cheader_filename = "gst/gst.h")]
	public static int util_greatest_common_divisor (int a, int b);
	[CCode (cheader_filename = "gst/gst.h")]
	public static double util_guint64_to_gdouble (uint64 value);
	[CCode (cheader_filename = "gst/gst.h")]
	public static int32 util_seqnum_compare (uint32 s1, uint32 s2);
	[CCode (cheader_filename = "gst/gst.h")]
	public static uint32 util_seqnum_next ();
	[CCode (cheader_filename = "gst/gst.h")]
	public static void util_set_object_arg (GLib.Object object, string name, string value);
	[CCode (cheader_filename = "gst/gst.h")]
	public static void util_set_value_from_string (GLib.Value value, string value_str);
	[CCode (cheader_filename = "gst/gst.h")]
	public static uint64 util_uint64_scale (uint64 val, uint64 num, uint64 denom);
	[CCode (cheader_filename = "gst/gst.h")]
	public static uint64 util_uint64_scale_ceil (uint64 val, uint64 num, uint64 denom);
	[CCode (cheader_filename = "gst/gst.h")]
	public static uint64 util_uint64_scale_int (uint64 val, int num, int denom);
	[CCode (cheader_filename = "gst/gst.h")]
	public static uint64 util_uint64_scale_int_ceil (uint64 val, int num, int denom);
	[CCode (cheader_filename = "gst/gst.h")]
	public static uint64 util_uint64_scale_int_round (uint64 val, int num, int denom);
	[CCode (cheader_filename = "gst/gst.h")]
	public static uint64 util_uint64_scale_round (uint64 val, uint64 num, uint64 denom);
	[CCode (cheader_filename = "gst/gst.h")]
	public static unowned Gst.MiniObject value_dup_mini_object (GLib.Value value);
	[CCode (cheader_filename = "gst/gst.h")]
	public static int64 value_get_int64_range_max (GLib.Value value);
	[CCode (cheader_filename = "gst/gst.h")]
	public static int64 value_get_int64_range_min (GLib.Value value);
	[CCode (cheader_filename = "gst/gst.h")]
	public static void value_list_merge (GLib.Value dest, GLib.Value value1, GLib.Value value2);
	[CCode (cheader_filename = "gst/gst.h")]
	public static void value_set_int64_range (GLib.Value value, int64 start, int64 end);
	[CCode (cheader_filename = "gst/gst.h")]
	public static void version (out uint major, out uint minor, out uint micro, out uint nano);
	[CCode (cheader_filename = "gst/gst.h")]
	public static string version_string ();
}