This file is indexed.

/usr/share/gtk-doc/html/gst-plugins-base-plugins-1.0/gst-plugins-base-plugins-playbin.html is in gstreamer1.0-plugins-base-doc 1.8.0-1ubuntu1.

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
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>playbin: GStreamer Base Plugins 1.0 Plugins Reference Manual</title>
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
<link rel="home" href="index.html" title="GStreamer Base Plugins 1.0 Plugins Reference Manual">
<link rel="up" href="ch01.html" title="gst-plugins-base Elements">
<link rel="prev" href="gst-plugins-base-plugins-opusenc.html" title="opusenc">
<link rel="next" href="gst-plugins-base-plugins-playsink.html" title="playsink">
<meta name="generator" content="GTK-Doc V1.24 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
<td width="100%" align="left" class="shortcuts">
<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
                  <a href="#gst-plugins-base-plugins-playbin.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
                  <a href="#gst-plugins-base-plugins-playbin.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_interfaces">  <span class="dim">|</span> 
                  <a href="#gst-plugins-base-plugins-playbin.implemented-interfaces" class="shortcut">Implemented Interfaces</a></span><span id="nav_properties">  <span class="dim">|</span> 
                  <a href="#gst-plugins-base-plugins-playbin.properties" class="shortcut">Properties</a></span><span id="nav_signals">  <span class="dim">|</span> 
                  <a href="#gst-plugins-base-plugins-playbin.signals" class="shortcut">Signals</a></span>
</td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
<td><a accesskey="u" href="ch01.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
<td><a accesskey="p" href="gst-plugins-base-plugins-opusenc.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
<td><a accesskey="n" href="gst-plugins-base-plugins-playsink.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
</tr></table>
<div class="refentry">
<a name="gst-plugins-base-plugins-playbin"></a><div class="titlepage"></div>
<div class="refnamediv"><table width="100%"><tr>
<td valign="top">
<h2><span class="refentrytitle"><a name="gst-plugins-base-plugins-playbin.top_of_page"></a>playbin</span></h2>
<p>playbin</p>
</td>
<td class="gallery_image" valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
<a name="gst-plugins-base-plugins-playbin.properties"></a><h2>Properties</h2>
<div class="informaltable"><table class="informaltable" border="0">
<colgroup>
<col width="150px" class="properties_type">
<col width="300px" class="properties_name">
<col width="200px" class="properties_flags">
</colgroup>
<tbody>
<tr>
<td class="property_type">
<a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html"><span class="type">GstElement</span></a> *</td>
<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--audio-sink" title="The “audio-sink” property">audio-sink</a></td>
<td class="property_flags">Read / Write</td>
</tr>
<tr>
<td class="property_type">
<a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html"><span class="type">GstElement</span></a> *</td>
<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--audio-stream-combiner" title="The “audio-stream-combiner” property">audio-stream-combiner</a></td>
<td class="property_flags">Read / Write</td>
</tr>
<tr>
<td class="property_type"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a></td>
<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--av-offset" title="The “av-offset” property">av-offset</a></td>
<td class="property_flags">Read / Write</td>
</tr>
<tr>
<td class="property_type"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a></td>
<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--buffer-duration" title="The “buffer-duration” property">buffer-duration</a></td>
<td class="property_flags">Read / Write</td>
</tr>
<tr>
<td class="property_type"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a></td>
<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--buffer-size" title="The “buffer-size” property">buffer-size</a></td>
<td class="property_flags">Read / Write</td>
</tr>
<tr>
<td class="property_type"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint64"><span class="type">guint64</span></a></td>
<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--connection-speed" title="The “connection-speed” property">connection-speed</a></td>
<td class="property_flags">Read / Write</td>
</tr>
<tr>
<td class="property_type"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a></td>
<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--current-audio" title="The “current-audio” property">current-audio</a></td>
<td class="property_flags">Read / Write</td>
</tr>
<tr>
<td class="property_type">
<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</td>
<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--current-suburi" title="The “current-suburi” property">current-suburi</a></td>
<td class="property_flags">Read</td>
</tr>
<tr>
<td class="property_type"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a></td>
<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--current-text" title="The “current-text” property">current-text</a></td>
<td class="property_flags">Read / Write</td>
</tr>
<tr>
<td class="property_type">
<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</td>
<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--current-uri" title="The “current-uri” property">current-uri</a></td>
<td class="property_flags">Read</td>
</tr>
<tr>
<td class="property_type"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a></td>
<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--current-video" title="The “current-video” property">current-video</a></td>
<td class="property_flags">Read / Write</td>
</tr>
<tr>
<td class="property_type"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayFlags" title="enum GstPlayFlags"><span class="type">GstPlayFlags</span></a></td>
<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--flags" title="The “flags” property">flags</a></td>
<td class="property_flags">Read / Write</td>
</tr>
<tr>
<td class="property_type"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--force-aspect-ratio" title="The “force-aspect-ratio” property">force-aspect-ratio</a></td>
<td class="property_flags">Read / Write</td>
</tr>
<tr>
<td class="property_type"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--mute" title="The “mute” property">mute</a></td>
<td class="property_flags">Read / Write</td>
</tr>
<tr>
<td class="property_type"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a></td>
<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--n-audio" title="The “n-audio” property">n-audio</a></td>
<td class="property_flags">Read</td>
</tr>
<tr>
<td class="property_type"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a></td>
<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--n-text" title="The “n-text” property">n-text</a></td>
<td class="property_flags">Read</td>
</tr>
<tr>
<td class="property_type"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a></td>
<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--n-video" title="The “n-video” property">n-video</a></td>
<td class="property_flags">Read</td>
</tr>
<tr>
<td class="property_type"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint64"><span class="type">guint64</span></a></td>
<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--ring-buffer-max-size" title="The “ring-buffer-max-size” property">ring-buffer-max-size</a></td>
<td class="property_flags">Read / Write</td>
</tr>
<tr>
<td class="property_type">
<a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstSample.html"><span class="type">GstSample</span></a> *</td>
<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--sample" title="The “sample” property">sample</a></td>
<td class="property_flags">Read</td>
</tr>
<tr>
<td class="property_type">
<a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html"><span class="type">GstElement</span></a> *</td>
<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--source" title="The “source” property">source</a></td>
<td class="property_flags">Read</td>
</tr>
<tr>
<td class="property_type">
<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</td>
<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--subtitle-encoding" title="The “subtitle-encoding” property">subtitle-encoding</a></td>
<td class="property_flags">Read / Write</td>
</tr>
<tr>
<td class="property_type">
<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</td>
<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--subtitle-font-desc" title="The “subtitle-font-desc” property">subtitle-font-desc</a></td>
<td class="property_flags">Write</td>
</tr>
<tr>
<td class="property_type">
<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</td>
<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--suburi" title="The “suburi” property">suburi</a></td>
<td class="property_flags">Read / Write</td>
</tr>
<tr>
<td class="property_type">
<a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html"><span class="type">GstElement</span></a> *</td>
<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--text-sink" title="The “text-sink” property">text-sink</a></td>
<td class="property_flags">Read / Write</td>
</tr>
<tr>
<td class="property_type">
<a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html"><span class="type">GstElement</span></a> *</td>
<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--text-stream-combiner" title="The “text-stream-combiner” property">text-stream-combiner</a></td>
<td class="property_flags">Read / Write</td>
</tr>
<tr>
<td class="property_type">
<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</td>
<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--uri" title="The “uri” property">uri</a></td>
<td class="property_flags">Read / Write</td>
</tr>
<tr>
<td class="property_type">
<a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html"><span class="type">GstElement</span></a> *</td>
<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--video-sink" title="The “video-sink” property">video-sink</a></td>
<td class="property_flags">Read / Write</td>
</tr>
<tr>
<td class="property_type">
<a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html"><span class="type">GstElement</span></a> *</td>
<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--video-stream-combiner" title="The “video-stream-combiner” property">video-stream-combiner</a></td>
<td class="property_flags">Read / Write</td>
</tr>
<tr>
<td class="property_type">
<a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html"><span class="type">GstElement</span></a> *</td>
<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--vis-plugin" title="The “vis-plugin” property">vis-plugin</a></td>
<td class="property_flags">Read / Write</td>
</tr>
<tr>
<td class="property_type"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a></td>
<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--volume" title="The “volume” property">volume</a></td>
<td class="property_flags">Read / Write</td>
</tr>
<tr>
<td class="property_type">
<a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html"><span class="type">GstElement</span></a> *</td>
<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--audio-filter" title="The “audio-filter” property">audio-filter</a></td>
<td class="property_flags">Read / Write</td>
</tr>
<tr>
<td class="property_type">
<a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html"><span class="type">GstElement</span></a> *</td>
<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--video-filter" title="The “video-filter” property">video-filter</a></td>
<td class="property_flags">Read / Write</td>
</tr>
<tr>
<td class="property_type"><a href="../gst-plugins-base-libs-1.0/gst-plugins-base-libs-gstvideo.html#GstVideoMultiviewFlags"><span class="type">GstVideoMultiviewFlags</span></a></td>
<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--video-multiview-flags" title="The “video-multiview-flags” property">video-multiview-flags</a></td>
<td class="property_flags">Read / Write</td>
</tr>
<tr>
<td class="property_type"><a href="../gst-plugins-base-libs-1.0/gst-plugins-base-libs-gstvideo.html#GstVideoMultiviewFramePacking"><span class="type">GstVideoMultiviewFramePacking</span></a></td>
<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--video-multiview-mode" title="The “video-multiview-mode” property">video-multiview-mode</a></td>
<td class="property_flags">Read / Write</td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect1">
<a name="gst-plugins-base-plugins-playbin.signals"></a><h2>Signals</h2>
<div class="informaltable"><table class="informaltable" border="0">
<colgroup>
<col width="150px" class="signals_return">
<col width="300px" class="signals_name">
<col width="200px" class="signals_flags">
</colgroup>
<tbody>
<tr>
<td class="signal_type"><span class="returnvalue">void</span></td>
<td class="signal_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin-about-to-finish" title="The “about-to-finish” signal">about-to-finish</a></td>
<td class="signal_flags"><a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS">Run Last</a></td>
</tr>
<tr>
<td class="signal_type"><span class="returnvalue">void</span></td>
<td class="signal_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin-audio-changed" title="The “audio-changed” signal">audio-changed</a></td>
<td class="signal_flags"><a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS">Run Last</a></td>
</tr>
<tr>
<td class="signal_type"><span class="returnvalue">void</span></td>
<td class="signal_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin-audio-tags-changed" title="The “audio-tags-changed” signal">audio-tags-changed</a></td>
<td class="signal_flags"><a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS">Run Last</a></td>
</tr>
<tr>
<td class="signal_type">
<a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstSample.html"><span class="returnvalue">GstSample</span></a>*</td>
<td class="signal_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin-convert-sample" title="The “convert-sample” signal">convert-sample</a></td>
<td class="signal_flags"><a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-ACTION:CAPS">Action</a></td>
</tr>
<tr>
<td class="signal_type">
<a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstPad.html"><span class="returnvalue">GstPad</span></a>*</td>
<td class="signal_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin-get-audio-pad" title="The “get-audio-pad” signal">get-audio-pad</a></td>
<td class="signal_flags"><a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-ACTION:CAPS">Action</a></td>
</tr>
<tr>
<td class="signal_type">
<a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstTagList.html"><span class="returnvalue">GstTagList</span></a>*</td>
<td class="signal_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin-get-audio-tags" title="The “get-audio-tags” signal">get-audio-tags</a></td>
<td class="signal_flags"><a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-ACTION:CAPS">Action</a></td>
</tr>
<tr>
<td class="signal_type">
<a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstPad.html"><span class="returnvalue">GstPad</span></a>*</td>
<td class="signal_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin-get-text-pad" title="The “get-text-pad” signal">get-text-pad</a></td>
<td class="signal_flags"><a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-ACTION:CAPS">Action</a></td>
</tr>
<tr>
<td class="signal_type">
<a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstTagList.html"><span class="returnvalue">GstTagList</span></a>*</td>
<td class="signal_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin-get-text-tags" title="The “get-text-tags” signal">get-text-tags</a></td>
<td class="signal_flags"><a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-ACTION:CAPS">Action</a></td>
</tr>
<tr>
<td class="signal_type">
<a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstPad.html"><span class="returnvalue">GstPad</span></a>*</td>
<td class="signal_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin-get-video-pad" title="The “get-video-pad” signal">get-video-pad</a></td>
<td class="signal_flags"><a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-ACTION:CAPS">Action</a></td>
</tr>
<tr>
<td class="signal_type">
<a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstTagList.html"><span class="returnvalue">GstTagList</span></a>*</td>
<td class="signal_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin-get-video-tags" title="The “get-video-tags” signal">get-video-tags</a></td>
<td class="signal_flags"><a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-ACTION:CAPS">Action</a></td>
</tr>
<tr>
<td class="signal_type"><span class="returnvalue">void</span></td>
<td class="signal_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin-source-setup" title="The “source-setup” signal">source-setup</a></td>
<td class="signal_flags"><a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS">Run Last</a></td>
</tr>
<tr>
<td class="signal_type"><span class="returnvalue">void</span></td>
<td class="signal_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin-text-changed" title="The “text-changed” signal">text-changed</a></td>
<td class="signal_flags"><a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS">Run Last</a></td>
</tr>
<tr>
<td class="signal_type"><span class="returnvalue">void</span></td>
<td class="signal_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin-text-tags-changed" title="The “text-tags-changed” signal">text-tags-changed</a></td>
<td class="signal_flags"><a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS">Run Last</a></td>
</tr>
<tr>
<td class="signal_type"><span class="returnvalue">void</span></td>
<td class="signal_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin-video-changed" title="The “video-changed” signal">video-changed</a></td>
<td class="signal_flags"><a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS">Run Last</a></td>
</tr>
<tr>
<td class="signal_type"><span class="returnvalue">void</span></td>
<td class="signal_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin-video-tags-changed" title="The “video-tags-changed” signal">video-tags-changed</a></td>
<td class="signal_flags"><a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS">Run Last</a></td>
</tr>
</tbody>
</table></div>
</div>
<a name="GstPlayBin"></a><div class="refsect1">
<a name="gst-plugins-base-plugins-playbin.other"></a><h2>Types and Values</h2>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="name">
<col class="description">
</colgroup>
<tbody>
<tr>
<td class="datatype_keyword">struct</td>
<td class="function_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin-struct" title="struct GstPlayBin">GstPlayBin</a></td>
</tr>
<tr>
<td class="datatype_keyword">enum</td>
<td class="function_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayFlags" title="enum GstPlayFlags">GstPlayFlags</a></td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect1">
<a name="gst-plugins-base-plugins-playbin.object-hierarchy"></a><h2>Object Hierarchy</h2>
<pre class="screen">    <a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GObject">GObject</a>
    <span class="lineart">╰──</span> <a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
        <span class="lineart">╰──</span> <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstObject.html">GstObject</a>
            <span class="lineart">╰──</span> <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html">GstElement</a>
                <span class="lineart">╰──</span> <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstBin.html">GstBin</a>
                    <span class="lineart">╰──</span> <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstPipeline.html">GstPipeline</a>
                        <span class="lineart">╰──</span> GstPlayBin
</pre>
</div>
<div class="refsect1">
<a name="gst-plugins-base-plugins-playbin.implemented-interfaces"></a><h2>Implemented Interfaces</h2>
<p>
GstPlayBin implements
 <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstChildProxy.html">GstChildProxy</a>,  <a href="../gst-plugins-base-libs-1.0/gst-plugins-base-libs-gststreamvolume.html#GstStreamVolume">GstStreamVolume</a>,  <a href="../gst-plugins-base-libs-1.0/gst-plugins-base-libs-gstvideooverlay.html#GstVideoOverlay">GstVideoOverlay</a>,  <a href="../gst-plugins-base-libs-1.0/gst-plugins-base-libs-gstnavigation.html#GstNavigation">GstNavigation</a> and  <a href="../gst-plugins-base-libs-1.0/gst-plugins-base-libs-gstcolorbalance.html#GstColorBalance">GstColorBalance</a>.</p>
</div>
<div class="refsect1">
<a name="gst-plugins-base-plugins-playbin.description"></a><h2>Description</h2>
<p>Playbin provides a stand-alone everything-in-one abstraction for an
audio and/or video player.</p>
<p>Playbin can handle both audio and video files and features</p>
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
<li class="listitem">
automatic file type recognition and based on that automatic
selection and usage of the right audio/video/subtitle demuxers/decoders
</li>
<li class="listitem">
visualisations for audio files
</li>
<li class="listitem">
subtitle support for video files. Subtitles can be store in external
files.
</li>
<li class="listitem">
stream selection between different video/audio/subtitles streams
</li>
<li class="listitem">
meta info (tag) extraction
</li>
<li class="listitem">
easy access to the last video sample
</li>
<li class="listitem">
buffering when playing streams over a network
</li>
<li class="listitem">
volume control with mute option
</li>
</ul></div>
<div class="refsect2">
<a name="id-1.2.31.9.5"></a><h3>Usage</h3>
<p>
A playbin element can be created just like any other element using
<a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElementFactory.html#gst-element-factory-make"><code class="function">gst_element_factory_make()</code></a>. The file/URI to play should be set via the <a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--uri" title="The “uri” property"><span class="type">“uri”</span></a>
property. This must be an absolute URI, relative file paths are not allowed.
Example URIs are file:///home/joe/movie.avi or http://www.joedoe.com/foo.ogg

Playbin is a <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstPipeline.html"><span class="type">GstPipeline</span></a>. It will notify the application of everything
that's happening (errors, end of stream, tags found, state changes, etc.)
by posting messages on its <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstBus.html"><span class="type">GstBus</span></a>. The application needs to watch the
bus.

Playback can be initiated by setting the element to PLAYING state using
<a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html#gst-element-set-state"><code class="function">gst_element_set_state()</code></a>. Note that the state change will take place in
the background in a separate thread, when the function returns playback
is probably not happening yet and any errors might not have occured yet.
Applications using playbin should ideally be written to deal with things
completely asynchroneous.

When playback has finished (an EOS message has been received on the bus)
or an error has occured (an ERROR message has been received on the bus) or
the user wants to play a different track, playbin should be set back to
READY or NULL state, then the <a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--uri" title="The “uri” property"><span class="type">“uri”</span></a> property should be set to the
new location and then playbin be set to PLAYING state again.

Seeking can be done using <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html#gst-element-seek-simple"><code class="function">gst_element_seek_simple()</code></a> or <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html#gst-element-seek"><code class="function">gst_element_seek()</code></a>
on the playbin element. Again, the seek will not be executed
instantaneously, but will be done in a background thread. When the seek
call returns the seek will most likely still be in process. An application
may wait for the seek to finish (or fail) using <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html#gst-element-get-state"><code class="function">gst_element_get_state()</code></a> with
-1 as the timeout, but this will block the user interface and is not
recommended at all.

Applications may query the current position and duration of the stream
via <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html#gst-element-query-position"><code class="function">gst_element_query_position()</code></a> and <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html#gst-element-query-duration"><code class="function">gst_element_query_duration()</code></a> and
setting the format passed to GST_FORMAT_TIME. If the query was successful,
the duration or position will have been returned in units of nanoseconds.
</p>
</div>
<hr>
<div class="refsect2">
<a name="id-1.2.31.9.6"></a><h3>Advanced Usage: specifying the audio and video sink</h3>
<p>
By default, if no audio sink or video sink has been specified via the
<a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--audio-sink" title="The “audio-sink” property"><span class="type">“audio-sink”</span></a> or <a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--video-sink" title="The “video-sink” property"><span class="type">“video-sink”</span></a> property, playbin will use the autoaudiosink
and autovideosink elements to find the first-best available output method.
This should work in most cases, but is not always desirable. Often either
the user or application might want to specify more explicitly what to use
for audio and video output.

If the application wants more control over how audio or video should be
output, it may create the audio/video sink elements itself (for example
using <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElementFactory.html#gst-element-factory-make"><code class="function">gst_element_factory_make()</code></a>) and provide them to playbin using the
<a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--audio-sink" title="The “audio-sink” property"><span class="type">“audio-sink”</span></a> or <a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--video-sink" title="The “video-sink” property"><span class="type">“video-sink”</span></a> property.

GNOME-based applications, for example, will usually want to create
gconfaudiosink and gconfvideosink elements and make playbin use those,
so that output happens to whatever the user has configured in the GNOME
Multimedia System Selector configuration dialog.

The sink elements do not necessarily need to be ready-made sinks. It is
possible to create container elements that look like a sink to playbin,
but in reality contain a number of custom elements linked together. This
can be achieved by creating a <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstBin.html"><span class="type">GstBin</span></a> and putting elements in there and
linking them, and then creating a sink <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstGhostPad.html"><span class="type">GstGhostPad</span></a> for the bin and pointing
it to the sink pad of the first element within the bin. This can be used
for a number of purposes, for example to force output to a particular
format or to modify or observe the data before it is output.

It is also possible to 'suppress' audio and/or video output by using
'fakesink' elements (or capture it from there using the fakesink element's
"handoff" signal, which, nota bene, is fired from the streaming thread!).
</p>
</div>
<hr>
<div class="refsect2">
<a name="id-1.2.31.9.7"></a><h3>Retrieving Tags and Other Meta Data</h3>
<p>
Most of the common meta data (artist, title, etc.) can be retrieved by
watching for TAG messages on the pipeline's bus (see above).

Other more specific meta information like width/height/framerate of video
streams or samplerate/number of channels of audio streams can be obtained
from the negotiated caps on the sink pads of the sinks.
</p>
</div>
<hr>
<div class="refsect2">
<a name="id-1.2.31.9.8"></a><h3>Buffering</h3>
Playbin handles buffering automatically for the most part, but applications
need to handle parts of the buffering process as well. Whenever playbin is
buffering, it will post BUFFERING messages on the bus with a percentage
value that shows the progress of the buffering process. Applications need
to set playbin to PLAYING or PAUSED state in response to these messages.
They may also want to convey the buffering progress to the user in some
way. Here is how to extract the percentage information from the message:
<div class="informalexample"><pre class="programlisting">
switch (GST_MESSAGE_TYPE (msg)) {
  case GST_MESSAGE_BUFFERING: {
    gint percent = 0;
    gst_message_parse_buffering (msg, &amp;percent);
    g_print ("Buffering (%u percent done)", percent);
    break;
  }
  ...
}
</pre></div>
Note that applications should keep/set the pipeline in the PAUSED state when
a BUFFERING message is received with a buffer percent value &lt; 100 and set
the pipeline back to PLAYING state when a BUFFERING message with a value
of 100 percent is received (if PLAYING is the desired state, that is).
</div>
<hr>
<div class="refsect2">
<a name="id-1.2.31.9.9"></a><h3>Embedding the video window in your application</h3>
By default, playbin (or rather the video sinks used) will create their own
window. Applications will usually want to force output to a window of their
own, however. This can be done using the <a href="../gst-plugins-base-libs-1.0/gst-plugins-base-libs-gstvideooverlay.html#GstVideoOverlay"><span class="type">GstVideoOverlay</span></a> interface, which most
video sinks implement. See the documentation there for more details.
</div>
<hr>
<div class="refsect2">
<a name="id-1.2.31.9.10"></a><h3>Specifying which CD/DVD device to use</h3>
The device to use for CDs/DVDs needs to be set on the source element
playbin creates before it is opened. The most generic way of doing this
is to connect to playbin's "source-setup" (or "notify::source") signal,
which will be emitted by playbin when it has created the source element
for a particular URI. In the signal callback you can check if the source
element has a "device" property and set it appropriately. In some cases
the device can also be set as part of the URI, but it depends on the
elements involved if this will work or not. For example, for DVD menu
playback, the following syntax might work (if the resindvd plugin is used):
dvd://[/path/to/device]
</div>
<hr>
<div class="refsect2">
<a name="id-1.2.31.9.11"></a><h3>Handling redirects</h3>
<p>
Some elements may post 'redirect' messages on the bus to tell the
application to open another location. These are element messages containing
a structure named 'redirect' along with a 'new-location' field of string
type. The new location may be a relative or an absolute URI. Examples
for such redirects can be found in many quicktime movie trailers.
</p>
</div>
<hr>
<div class="refsect2">
<a name="id-1.2.31.9.12"></a><h3>Examples</h3>
<div class="informalexample"><pre class="programlisting">
gst-launch-1.0 -v playbin uri=file:///path/to/somefile.mp4
</pre></div> This will play back the given AVI video file, given that the video and
audio decoders required to decode the content are installed. Since no
special audio sink or video sink is supplied (via playbin's audio-sink or
video-sink properties) playbin will try to find a suitable audio and
video sink automatically using the autoaudiosink and autovideosink elements.
<div class="informalexample"><pre class="programlisting">
gst-launch-1.0 -v playbin uri=cdda://4
</pre></div> This will play back track 4 on an audio CD in your disc drive (assuming
the drive is detected automatically by the plugin).
<div class="informalexample"><pre class="programlisting">
gst-launch-1.0 -v playbin uri=dvd://
</pre></div> This will play back the DVD in your disc drive (assuming
the drive is detected automatically by the plugin).
</div>
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
<a name="id-1.2.31.9.13.1"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
<col>
</colgroup>
<tbody>
<tr>
<td><p><span class="term">plugin</span></p></td>
<td>
            <a class="link" href="gst-plugins-base-plugins-plugin-playback.html#plugin-playback">playback</a>
          </td>
</tr>
<tr>
<td><p><span class="term">author</span></p></td>
<td>Wim Taymans &lt;wim.taymans@gmail.com&gt;</td>
</tr>
<tr>
<td><p><span class="term">class</span></p></td>
<td>Generic/Bin/Player</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="id-1.2.31.9.13.2"></a><h3>Element Pads</h3>
</div>
</div>
</div>
<div class="refsect1">
<a name="gst-plugins-base-plugins-playbin.functions_details"></a><h2>Functions</h2>
<p></p>
</div>
<div class="refsect1">
<a name="gst-plugins-base-plugins-playbin.other_details"></a><h2>Types and Values</h2>
<div class="refsect2">
<a name="GstPlayBin-struct"></a><h3>struct GstPlayBin</h3>
<pre class="programlisting">struct GstPlayBin;</pre>
<p>playbin element structure</p>
</div>
<hr>
<div class="refsect2">
<a name="GstPlayFlags"></a><h3>enum GstPlayFlags</h3>
<p>Extra flags to configure the behaviour of the sinks.</p>
<div class="refsect3">
<a name="id-1.2.31.11.3.4"></a><h4>Members</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="300px" class="enum_members_name">
<col class="enum_members_description">
<col width="200px" class="enum_members_annotations">
</colgroup>
<tbody>
<tr>
<td class="enum_member_name"><p><a name="GST-PLAY-FLAG-VIDEO:CAPS"></a>GST_PLAY_FLAG_VIDEO</p></td>
<td class="enum_member_description">
<p>Enable rendering of the video stream</p>
</td>
<td class="enum_member_annotations"> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="GST-PLAY-FLAG-AUDIO:CAPS"></a>GST_PLAY_FLAG_AUDIO</p></td>
<td class="enum_member_description">
<p>Enable rendering of the audio stream</p>
</td>
<td class="enum_member_annotations"> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="GST-PLAY-FLAG-TEXT:CAPS"></a>GST_PLAY_FLAG_TEXT</p></td>
<td class="enum_member_description">
<p>Enable rendering of subtitles</p>
</td>
<td class="enum_member_annotations"> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="GST-PLAY-FLAG-VIS:CAPS"></a>GST_PLAY_FLAG_VIS</p></td>
<td class="enum_member_description">
<p>Enable rendering of visualisations when there is
      no video stream.</p>
</td>
<td class="enum_member_annotations"> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="GST-PLAY-FLAG-SOFT-VOLUME:CAPS"></a>GST_PLAY_FLAG_SOFT_VOLUME</p></td>
<td class="enum_member_description">
<p>Use software volume</p>
</td>
<td class="enum_member_annotations"> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="GST-PLAY-FLAG-NATIVE-AUDIO:CAPS"></a>GST_PLAY_FLAG_NATIVE_AUDIO</p></td>
<td class="enum_member_description">
<p>only allow native audio formats, this omits
  configuration of audioconvert and audioresample.</p>
</td>
<td class="enum_member_annotations"> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="GST-PLAY-FLAG-NATIVE-VIDEO:CAPS"></a>GST_PLAY_FLAG_NATIVE_VIDEO</p></td>
<td class="enum_member_description">
<p>only allow native video formats, this omits
  configuration of videoconvert and videoscale.</p>
</td>
<td class="enum_member_annotations"> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="GST-PLAY-FLAG-DOWNLOAD:CAPS"></a>GST_PLAY_FLAG_DOWNLOAD</p></td>
<td class="enum_member_description">
<p>enable progressice download buffering for selected
  formats.</p>
</td>
<td class="enum_member_annotations"> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="GST-PLAY-FLAG-BUFFERING:CAPS"></a>GST_PLAY_FLAG_BUFFERING</p></td>
<td class="enum_member_description">
<p>enable buffering of the demuxed or parsed data.</p>
</td>
<td class="enum_member_annotations"> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="GST-PLAY-FLAG-DEINTERLACE:CAPS"></a>GST_PLAY_FLAG_DEINTERLACE</p></td>
<td class="enum_member_description">
<p>deinterlace raw video (if native not forced).</p>
</td>
<td class="enum_member_annotations"> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="GST-PLAY-FLAG-SOFT-COLORBALANCE:CAPS"></a>GST_PLAY_FLAG_SOFT_COLORBALANCE</p></td>
<td class="enum_member_description">
<p>Use a software filter for colour balance</p>
</td>
<td class="enum_member_annotations"> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="GST-PLAY-FLAG-FORCE-FILTERS:CAPS"></a>GST_PLAY_FLAG_FORCE_FILTERS</p></td>
<td class="enum_member_description">
<p>force audio/video filters to be applied if
  set.</p>
</td>
<td class="enum_member_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
</div>
</div>
<div class="refsect1">
<a name="gst-plugins-base-plugins-playbin.property-details"></a><h2>Property Details</h2>
<div class="refsect2">
<a name="GstPlayBin--audio-sink"></a><h3>The <code class="literal">“audio-sink”</code> property</h3>
<pre class="programlisting">  “audio-sink”               <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html"><span class="type">GstElement</span></a> *</pre>
<p>the audio output element to use (NULL = default sink).</p>
<p>Flags: Read / Write</p>
</div>
<hr>
<div class="refsect2">
<a name="GstPlayBin--audio-stream-combiner"></a><h3>The <code class="literal">“audio-stream-combiner”</code> property</h3>
<pre class="programlisting">  “audio-stream-combiner”    <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html"><span class="type">GstElement</span></a> *</pre>
<p>Get or set the current audio stream combiner. By default, an input-selector
is created and deleted as-needed.</p>
<p>Flags: Read / Write</p>
</div>
<hr>
<div class="refsect2">
<a name="GstPlayBin--av-offset"></a><h3>The <code class="literal">“av-offset”</code> property</h3>
<pre class="programlisting">  “av-offset”                <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a></pre>
<p>Control the synchronisation offset between the audio and video streams.
Positive values make the audio ahead of the video and negative values make
the audio go behind the video.</p>
<p>Flags: Read / Write</p>
<p>Default value: 0</p>
</div>
<hr>
<div class="refsect2">
<a name="GstPlayBin--buffer-duration"></a><h3>The <code class="literal">“buffer-duration”</code> property</h3>
<pre class="programlisting">  “buffer-duration”          <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a></pre>
<p>Buffer duration when buffering network streams.</p>
<p>Flags: Read / Write</p>
<p>Allowed values: &gt;= G_MAXULONG</p>
<p>Default value: -1</p>
</div>
<hr>
<div class="refsect2">
<a name="GstPlayBin--buffer-size"></a><h3>The <code class="literal">“buffer-size”</code> property</h3>
<pre class="programlisting">  “buffer-size”              <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a></pre>
<p>Buffer size when buffering network streams.</p>
<p>Flags: Read / Write</p>
<p>Allowed values: &gt;= G_MAXULONG</p>
<p>Default value: -1</p>
</div>
<hr>
<div class="refsect2">
<a name="GstPlayBin--connection-speed"></a><h3>The <code class="literal">“connection-speed”</code> property</h3>
<pre class="programlisting">  “connection-speed”         <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint64"><span class="type">guint64</span></a></pre>
<p>Network connection speed in kbps (0 = unknown).</p>
<p>Flags: Read / Write</p>
<p>Allowed values: &lt;= 18446744073709551</p>
<p>Default value: 0</p>
</div>
<hr>
<div class="refsect2">
<a name="GstPlayBin--current-audio"></a><h3>The <code class="literal">“current-audio”</code> property</h3>
<pre class="programlisting">  “current-audio”            <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a></pre>
<p>Get or set the currently playing audio stream. By default the first audio
stream with data is played.</p>
<p>Flags: Read / Write</p>
<p>Allowed values: &gt;= G_MAXULONG</p>
<p>Default value: -1</p>
</div>
<hr>
<div class="refsect2">
<a name="GstPlayBin--current-suburi"></a><h3>The <code class="literal">“current-suburi”</code> property</h3>
<pre class="programlisting">  “current-suburi”           <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</pre>
<p>The currently playing subtitle uri.</p>
<p>Flags: Read</p>
<p>Default value: NULL</p>
</div>
<hr>
<div class="refsect2">
<a name="GstPlayBin--current-text"></a><h3>The <code class="literal">“current-text”</code> property</h3>
<pre class="programlisting">  “current-text”             <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a></pre>
<p>Get or set the currently playing subtitle stream. By default the first
subtitle stream with data is played.</p>
<p>Flags: Read / Write</p>
<p>Allowed values: &gt;= G_MAXULONG</p>
<p>Default value: -1</p>
</div>
<hr>
<div class="refsect2">
<a name="GstPlayBin--current-uri"></a><h3>The <code class="literal">“current-uri”</code> property</h3>
<pre class="programlisting">  “current-uri”              <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</pre>
<p>The currently playing uri.</p>
<p>Flags: Read</p>
<p>Default value: NULL</p>
</div>
<hr>
<div class="refsect2">
<a name="GstPlayBin--current-video"></a><h3>The <code class="literal">“current-video”</code> property</h3>
<pre class="programlisting">  “current-video”            <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a></pre>
<p>Get or set the currently playing video stream. By default the first video
stream with data is played.</p>
<p>Flags: Read / Write</p>
<p>Allowed values: &gt;= G_MAXULONG</p>
<p>Default value: -1</p>
</div>
<hr>
<div class="refsect2">
<a name="GstPlayBin--flags"></a><h3>The <code class="literal">“flags”</code> property</h3>
<pre class="programlisting">  “flags”                    <a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayFlags" title="enum GstPlayFlags"><span class="type">GstPlayFlags</span></a></pre>
<p>Control the behaviour of playbin.</p>
<p>Flags: Read / Write</p>
<p>Default value: Render the video stream|Render the audio stream|Render subtitles|Use software volume|Deinterlace video if necessary|Use software color balance</p>
</div>
<hr>
<div class="refsect2">
<a name="GstPlayBin--force-aspect-ratio"></a><h3>The <code class="literal">“force-aspect-ratio”</code> property</h3>
<pre class="programlisting">  “force-aspect-ratio”       <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
<p>When enabled, scaling will respect original aspect ratio.</p>
<p>Flags: Read / Write</p>
<p>Default value: TRUE</p>
</div>
<hr>
<div class="refsect2">
<a name="GstPlayBin--mute"></a><h3>The <code class="literal">“mute”</code> property</h3>
<pre class="programlisting">  “mute”                     <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
<p>Mute the audio channel without changing the volume.</p>
<p>Flags: Read / Write</p>
<p>Default value: FALSE</p>
</div>
<hr>
<div class="refsect2">
<a name="GstPlayBin--n-audio"></a><h3>The <code class="literal">“n-audio”</code> property</h3>
<pre class="programlisting">  “n-audio”                  <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a></pre>
<p>Get the total number of available audio streams.</p>
<p>Flags: Read</p>
<p>Allowed values: &gt;= 0</p>
<p>Default value: 0</p>
</div>
<hr>
<div class="refsect2">
<a name="GstPlayBin--n-text"></a><h3>The <code class="literal">“n-text”</code> property</h3>
<pre class="programlisting">  “n-text”                   <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a></pre>
<p>Get the total number of available subtitle streams.</p>
<p>Flags: Read</p>
<p>Allowed values: &gt;= 0</p>
<p>Default value: 0</p>
</div>
<hr>
<div class="refsect2">
<a name="GstPlayBin--n-video"></a><h3>The <code class="literal">“n-video”</code> property</h3>
<pre class="programlisting">  “n-video”                  <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a></pre>
<p>Get the total number of available video streams.</p>
<p>Flags: Read</p>
<p>Allowed values: &gt;= 0</p>
<p>Default value: 0</p>
</div>
<hr>
<div class="refsect2">
<a name="GstPlayBin--ring-buffer-max-size"></a><h3>The <code class="literal">“ring-buffer-max-size”</code> property</h3>
<pre class="programlisting">  “ring-buffer-max-size”     <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint64"><span class="type">guint64</span></a></pre>
<p>The maximum size of the ring buffer in bytes. If set to 0, the ring
buffer is disabled. Default 0.</p>
<p>Flags: Read / Write</p>
<p>Allowed values: &lt;= G_MAXUINT</p>
<p>Default value: 0</p>
</div>
<hr>
<div class="refsect2">
<a name="GstPlayBin--sample"></a><h3>The <code class="literal">“sample”</code> property</h3>
<pre class="programlisting">  “sample”                   <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstSample.html"><span class="type">GstSample</span></a> *</pre>
<p>Get the currently rendered or prerolled sample in the video sink.
The <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstCaps.html"><span class="type">GstCaps</span></a> in the sample will describe the format of the buffer.</p>
<p>Flags: Read</p>
</div>
<hr>
<div class="refsect2">
<a name="GstPlayBin--source"></a><h3>The <code class="literal">“source”</code> property</h3>
<pre class="programlisting">  “source”                   <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html"><span class="type">GstElement</span></a> *</pre>
<p>Source element.</p>
<p>Flags: Read</p>
</div>
<hr>
<div class="refsect2">
<a name="GstPlayBin--subtitle-encoding"></a><h3>The <code class="literal">“subtitle-encoding”</code> property</h3>
<pre class="programlisting">  “subtitle-encoding”        <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</pre>
<p>Encoding to assume if input subtitles are not in UTF-8 encoding. If not set, the GST_SUBTITLE_ENCODING environment variable will be checked for an encoding to use. If that is not set either, ISO-8859-15 will be assumed.</p>
<p>Flags: Read / Write</p>
<p>Default value: NULL</p>
</div>
<hr>
<div class="refsect2">
<a name="GstPlayBin--subtitle-font-desc"></a><h3>The <code class="literal">“subtitle-font-desc”</code> property</h3>
<pre class="programlisting">  “subtitle-font-desc”       <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</pre>
<p>Pango font description of font to be used for subtitle rendering.</p>
<p>Flags: Write</p>
<p>Default value: NULL</p>
</div>
<hr>
<div class="refsect2">
<a name="GstPlayBin--suburi"></a><h3>The <code class="literal">“suburi”</code> property</h3>
<pre class="programlisting">  “suburi”                   <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</pre>
<p>Set the next subtitle URI that playbin will play. This property can be
set from the about-to-finish signal to queue the next subtitle media file.</p>
<p>Flags: Read / Write</p>
<p>Default value: NULL</p>
</div>
<hr>
<div class="refsect2">
<a name="GstPlayBin--text-sink"></a><h3>The <code class="literal">“text-sink”</code> property</h3>
<pre class="programlisting">  “text-sink”                <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html"><span class="type">GstElement</span></a> *</pre>
<p>the text output element to use (NULL = default subtitleoverlay).</p>
<p>Flags: Read / Write</p>
</div>
<hr>
<div class="refsect2">
<a name="GstPlayBin--text-stream-combiner"></a><h3>The <code class="literal">“text-stream-combiner”</code> property</h3>
<pre class="programlisting">  “text-stream-combiner”     <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html"><span class="type">GstElement</span></a> *</pre>
<p>Get or set the current text stream combiner. By default, an input-selector
is created and deleted as-needed.</p>
<p>Flags: Read / Write</p>
</div>
<hr>
<div class="refsect2">
<a name="GstPlayBin--uri"></a><h3>The <code class="literal">“uri”</code> property</h3>
<pre class="programlisting">  “uri”                      <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</pre>
<p>Set the next URI that playbin will play. This property can be set from the
about-to-finish signal to queue the next media file.</p>
<p>Flags: Read / Write</p>
<p>Default value: NULL</p>
</div>
<hr>
<div class="refsect2">
<a name="GstPlayBin--video-sink"></a><h3>The <code class="literal">“video-sink”</code> property</h3>
<pre class="programlisting">  “video-sink”               <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html"><span class="type">GstElement</span></a> *</pre>
<p>the video output element to use (NULL = default sink).</p>
<p>Flags: Read / Write</p>
</div>
<hr>
<div class="refsect2">
<a name="GstPlayBin--video-stream-combiner"></a><h3>The <code class="literal">“video-stream-combiner”</code> property</h3>
<pre class="programlisting">  “video-stream-combiner”    <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html"><span class="type">GstElement</span></a> *</pre>
<p>Get or set the current video stream combiner. By default, an input-selector
is created and deleted as-needed.</p>
<p>Flags: Read / Write</p>
</div>
<hr>
<div class="refsect2">
<a name="GstPlayBin--vis-plugin"></a><h3>The <code class="literal">“vis-plugin”</code> property</h3>
<pre class="programlisting">  “vis-plugin”               <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html"><span class="type">GstElement</span></a> *</pre>
<p>the visualization element to use (NULL = default).</p>
<p>Flags: Read / Write</p>
</div>
<hr>
<div class="refsect2">
<a name="GstPlayBin--volume"></a><h3>The <code class="literal">“volume”</code> property</h3>
<pre class="programlisting">  “volume”                   <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a></pre>
<p>Get or set the current audio stream volume. 1.0 means 100%,
0.0 means mute. This uses a linear volume scale.</p>
<p>Flags: Read / Write</p>
<p>Allowed values: [0,10]</p>
<p>Default value: 1</p>
</div>
<hr>
<div class="refsect2">
<a name="GstPlayBin--audio-filter"></a><h3>The <code class="literal">“audio-filter”</code> property</h3>
<pre class="programlisting">  “audio-filter”             <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html"><span class="type">GstElement</span></a> *</pre>
<p>the audio filter(s) to apply, if possible.</p>
<p>Flags: Read / Write</p>
</div>
<hr>
<div class="refsect2">
<a name="GstPlayBin--video-filter"></a><h3>The <code class="literal">“video-filter”</code> property</h3>
<pre class="programlisting">  “video-filter”             <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html"><span class="type">GstElement</span></a> *</pre>
<p>the video filter(s) to apply, if possible.</p>
<p>Flags: Read / Write</p>
</div>
<hr>
<div class="refsect2">
<a name="GstPlayBin--video-multiview-flags"></a><h3>The <code class="literal">“video-multiview-flags”</code> property</h3>
<pre class="programlisting">  “video-multiview-flags”    <a href="../gst-plugins-base-libs-1.0/gst-plugins-base-libs-gstvideo.html#GstVideoMultiviewFlags"><span class="type">GstVideoMultiviewFlags</span></a></pre>
<p>Override details of the multiview frame layout.</p>
<p>Flags: Read / Write</p>
</div>
<hr>
<div class="refsect2">
<a name="GstPlayBin--video-multiview-mode"></a><h3>The <code class="literal">“video-multiview-mode”</code> property</h3>
<pre class="programlisting">  “video-multiview-mode”     <a href="../gst-plugins-base-libs-1.0/gst-plugins-base-libs-gstvideo.html#GstVideoMultiviewFramePacking"><span class="type">GstVideoMultiviewFramePacking</span></a></pre>
<p>Re-interpret a video stream as one of several frame-packed stereoscopic modes.</p>
<p>Flags: Read / Write</p>
<p>Default value: GST_VIDEO_MULTIVIEW_FRAME_PACKING_NONE</p>
</div>
</div>
<div class="refsect1">
<a name="gst-plugins-base-plugins-playbin.signal-details"></a><h2>Signal Details</h2>
<div class="refsect2">
<a name="GstPlayBin-about-to-finish"></a><h3>The <code class="literal">“about-to-finish”</code> signal</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
user_function (<a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin"><span class="type">GstPlayBin</span></a> *playbin,
               <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>    user_data)</pre>
<p>This signal is emitted when the current uri is about to finish. You can
set the uri and suburi to make sure that playback continues.</p>
<p>This signal is emitted from the context of a GStreamer streaming thread.</p>
<div class="refsect3">
<a name="id-1.2.31.13.2.6"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>playbin</p></td>
<td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin"><span class="type">GstPlayBin</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>user_data</p></td>
<td class="parameter_description"><p>user data set when the signal handler was connected.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<p>Flags: <a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS">Run Last</a></p>
</div>
<hr>
<div class="refsect2">
<a name="GstPlayBin-audio-changed"></a><h3>The <code class="literal">“audio-changed”</code> signal</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
user_function (<a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin"><span class="type">GstPlayBin</span></a> *playbin,
               <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>    user_data)</pre>
<p>This signal is emitted whenever the number or order of the audio
streams has changed. The application will most likely want to select
a new audio stream.</p>
<p>This signal may be emitted from the context of a GStreamer streaming thread.
You can use <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstMessage.html#gst-message-new-application"><code class="function">gst_message_new_application()</code></a> and <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html#gst-element-post-message"><code class="function">gst_element_post_message()</code></a>
to notify your application's main thread.</p>
<div class="refsect3">
<a name="id-1.2.31.13.3.6"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>playbin</p></td>
<td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin"><span class="type">GstPlayBin</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>user_data</p></td>
<td class="parameter_description"><p>user data set when the signal handler was connected.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<p>Flags: <a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS">Run Last</a></p>
</div>
<hr>
<div class="refsect2">
<a name="GstPlayBin-audio-tags-changed"></a><h3>The <code class="literal">“audio-tags-changed”</code> signal</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
user_function (<a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin"><span class="type">GstPlayBin</span></a> *playbin,
               <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a>        stream,
               <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>    user_data)</pre>
<p>This signal is emitted whenever the tags of an audio stream have changed.
The application will most likely want to get the new tags.</p>
<p>This signal may be emitted from the context of a GStreamer streaming thread.
You can use <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstMessage.html#gst-message-new-application"><code class="function">gst_message_new_application()</code></a> and <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html#gst-element-post-message"><code class="function">gst_element_post_message()</code></a>
to notify your application's main thread.</p>
<div class="refsect3">
<a name="id-1.2.31.13.4.6"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>playbin</p></td>
<td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin"><span class="type">GstPlayBin</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>stream</p></td>
<td class="parameter_description"><p>stream index with changed tags</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>user_data</p></td>
<td class="parameter_description"><p>user data set when the signal handler was connected.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<p>Flags: <a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS">Run Last</a></p>
</div>
<hr>
<div class="refsect2">
<a name="GstPlayBin-convert-sample"></a><h3>The <code class="literal">“convert-sample”</code> signal</h3>
<pre class="programlisting"><a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstSample.html"><span class="returnvalue">GstSample</span></a>*
user_function (<a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin"><span class="type">GstPlayBin</span></a> *playbin,
               <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstCaps.html"><span class="type">GstCaps</span></a>    *caps,
               <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>    user_data)</pre>
<p>Action signal to retrieve the currently playing video frame in the format
specified by <em class="parameter"><code>caps</code></em>
.
If <em class="parameter"><code>caps</code></em>
 is <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, no conversion will be performed and this function is
equivalent to the <span class="type">“frame”</span> property.</p>
<div class="refsect3">
<a name="id-1.2.31.13.5.5"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>playbin</p></td>
<td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin"><span class="type">GstPlayBin</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>caps</p></td>
<td class="parameter_description"><p>the target format of the frame</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>user_data</p></td>
<td class="parameter_description"><p>user data set when the signal handler was connected.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="id-1.2.31.13.5.6"></a><h4>Returns</h4>
<p> a <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstSample.html"><span class="type">GstSample</span></a> of the current video frame converted to <span class="type">caps</span>.
The caps on the sample will describe the final layout of the buffer data.
<a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> is returned when no current buffer can be retrieved or when the
conversion failed.</p>
</div>
<p>Flags: <a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-ACTION:CAPS">Action</a></p>
</div>
<hr>
<div class="refsect2">
<a name="GstPlayBin-get-audio-pad"></a><h3>The <code class="literal">“get-audio-pad”</code> signal</h3>
<pre class="programlisting"><a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstPad.html"><span class="returnvalue">GstPad</span></a>*
user_function (<a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin"><span class="type">GstPlayBin</span></a> *playbin,
               <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a>        stream,
               <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>    user_data)</pre>
<p>Action signal to retrieve the stream-combiner sinkpad for a specific
audio stream.
This pad can be used for notifications of caps changes, stream-specific
queries, etc.</p>
<div class="refsect3">
<a name="id-1.2.31.13.6.5"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>playbin</p></td>
<td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin"><span class="type">GstPlayBin</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>stream</p></td>
<td class="parameter_description"><p>an audio stream number</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>user_data</p></td>
<td class="parameter_description"><p>user data set when the signal handler was connected.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="id-1.2.31.13.6.6"></a><h4>Returns</h4>
<p> a <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstPad.html"><span class="type">GstPad</span></a>, or NULL when the stream number does not exist.</p>
</div>
<p>Flags: <a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-ACTION:CAPS">Action</a></p>
</div>
<hr>
<div class="refsect2">
<a name="GstPlayBin-get-audio-tags"></a><h3>The <code class="literal">“get-audio-tags”</code> signal</h3>
<pre class="programlisting"><a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstTagList.html"><span class="returnvalue">GstTagList</span></a>*
user_function (<a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin"><span class="type">GstPlayBin</span></a> *playbin,
               <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a>        stream,
               <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>    user_data)</pre>
<p>Action signal to retrieve the tags of a specific audio stream number.
This information can be used to select a stream.</p>
<div class="refsect3">
<a name="id-1.2.31.13.7.5"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>playbin</p></td>
<td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin"><span class="type">GstPlayBin</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>stream</p></td>
<td class="parameter_description"><p>an audio stream number</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>user_data</p></td>
<td class="parameter_description"><p>user data set when the signal handler was connected.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="id-1.2.31.13.7.6"></a><h4>Returns</h4>
<p> a GstTagList with tags or NULL when the stream number does not
exist.</p>
</div>
<p>Flags: <a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-ACTION:CAPS">Action</a></p>
</div>
<hr>
<div class="refsect2">
<a name="GstPlayBin-get-text-pad"></a><h3>The <code class="literal">“get-text-pad”</code> signal</h3>
<pre class="programlisting"><a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstPad.html"><span class="returnvalue">GstPad</span></a>*
user_function (<a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin"><span class="type">GstPlayBin</span></a> *playbin,
               <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a>        stream,
               <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>    user_data)</pre>
<p>Action signal to retrieve the stream-combiner sinkpad for a specific
text stream.
This pad can be used for notifications of caps changes, stream-specific
queries, etc.</p>
<div class="refsect3">
<a name="id-1.2.31.13.8.5"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>playbin</p></td>
<td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin"><span class="type">GstPlayBin</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>stream</p></td>
<td class="parameter_description"><p>a text stream number</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>user_data</p></td>
<td class="parameter_description"><p>user data set when the signal handler was connected.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="id-1.2.31.13.8.6"></a><h4>Returns</h4>
<p> a <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstPad.html"><span class="type">GstPad</span></a>, or NULL when the stream number does not exist.</p>
</div>
<p>Flags: <a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-ACTION:CAPS">Action</a></p>
</div>
<hr>
<div class="refsect2">
<a name="GstPlayBin-get-text-tags"></a><h3>The <code class="literal">“get-text-tags”</code> signal</h3>
<pre class="programlisting"><a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstTagList.html"><span class="returnvalue">GstTagList</span></a>*
user_function (<a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin"><span class="type">GstPlayBin</span></a> *playbin,
               <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a>        stream,
               <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>    user_data)</pre>
<p>Action signal to retrieve the tags of a specific text stream number.
This information can be used to select a stream.</p>
<div class="refsect3">
<a name="id-1.2.31.13.9.5"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>playbin</p></td>
<td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin"><span class="type">GstPlayBin</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>stream</p></td>
<td class="parameter_description"><p>a text stream number</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>user_data</p></td>
<td class="parameter_description"><p>user data set when the signal handler was connected.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="id-1.2.31.13.9.6"></a><h4>Returns</h4>
<p> a GstTagList with tags or NULL when the stream number does not
exist.</p>
</div>
<p>Flags: <a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-ACTION:CAPS">Action</a></p>
</div>
<hr>
<div class="refsect2">
<a name="GstPlayBin-get-video-pad"></a><h3>The <code class="literal">“get-video-pad”</code> signal</h3>
<pre class="programlisting"><a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstPad.html"><span class="returnvalue">GstPad</span></a>*
user_function (<a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin"><span class="type">GstPlayBin</span></a> *playbin,
               <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a>        stream,
               <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>    user_data)</pre>
<p>Action signal to retrieve the stream-combiner sinkpad for a specific
video stream.
This pad can be used for notifications of caps changes, stream-specific
queries, etc.</p>
<div class="refsect3">
<a name="id-1.2.31.13.10.5"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>playbin</p></td>
<td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin"><span class="type">GstPlayBin</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>stream</p></td>
<td class="parameter_description"><p>a video stream number</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>user_data</p></td>
<td class="parameter_description"><p>user data set when the signal handler was connected.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="id-1.2.31.13.10.6"></a><h4>Returns</h4>
<p> a <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstPad.html"><span class="type">GstPad</span></a>, or NULL when the stream number does not exist.</p>
</div>
<p>Flags: <a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-ACTION:CAPS">Action</a></p>
</div>
<hr>
<div class="refsect2">
<a name="GstPlayBin-get-video-tags"></a><h3>The <code class="literal">“get-video-tags”</code> signal</h3>
<pre class="programlisting"><a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstTagList.html"><span class="returnvalue">GstTagList</span></a>*
user_function (<a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin"><span class="type">GstPlayBin</span></a> *playbin,
               <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a>        stream,
               <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>    user_data)</pre>
<p>Action signal to retrieve the tags of a specific video stream number.
This information can be used to select a stream.</p>
<div class="refsect3">
<a name="id-1.2.31.13.11.5"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>playbin</p></td>
<td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin"><span class="type">GstPlayBin</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>stream</p></td>
<td class="parameter_description"><p>a video stream number</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>user_data</p></td>
<td class="parameter_description"><p>user data set when the signal handler was connected.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="id-1.2.31.13.11.6"></a><h4>Returns</h4>
<p> a GstTagList with tags or NULL when the stream number does not
exist.</p>
</div>
<p>Flags: <a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-ACTION:CAPS">Action</a></p>
</div>
<hr>
<div class="refsect2">
<a name="GstPlayBin-source-setup"></a><h3>The <code class="literal">“source-setup”</code> signal</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
user_function (<a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin"><span class="type">GstPlayBin</span></a> *playbin,
               <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html"><span class="type">GstElement</span></a> *source,
               <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>    user_data)</pre>
<p>This signal is emitted after the source element has been created, so
it can be configured by setting additional properties (e.g. set a
proxy server for an http source, or set the device and read speed for
an audio cd source). This is functionally equivalent to connecting to
the notify::source signal, but more convenient.</p>
<p>This signal is usually emitted from the context of a GStreamer streaming
thread.</p>
<div class="refsect3">
<a name="id-1.2.31.13.12.6"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>playbin</p></td>
<td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin"><span class="type">GstPlayBin</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>source</p></td>
<td class="parameter_description"><p>source element</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>user_data</p></td>
<td class="parameter_description"><p>user data set when the signal handler was connected.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<p>Flags: <a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS">Run Last</a></p>
</div>
<hr>
<div class="refsect2">
<a name="GstPlayBin-text-changed"></a><h3>The <code class="literal">“text-changed”</code> signal</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
user_function (<a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin"><span class="type">GstPlayBin</span></a> *playbin,
               <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>    user_data)</pre>
<p>This signal is emitted whenever the number or order of the text
streams has changed. The application will most likely want to select
a new text stream.</p>
<p>This signal may be emitted from the context of a GStreamer streaming thread.
You can use <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstMessage.html#gst-message-new-application"><code class="function">gst_message_new_application()</code></a> and <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html#gst-element-post-message"><code class="function">gst_element_post_message()</code></a>
to notify your application's main thread.</p>
<div class="refsect3">
<a name="id-1.2.31.13.13.6"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>playbin</p></td>
<td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin"><span class="type">GstPlayBin</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>user_data</p></td>
<td class="parameter_description"><p>user data set when the signal handler was connected.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<p>Flags: <a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS">Run Last</a></p>
</div>
<hr>
<div class="refsect2">
<a name="GstPlayBin-text-tags-changed"></a><h3>The <code class="literal">“text-tags-changed”</code> signal</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
user_function (<a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin"><span class="type">GstPlayBin</span></a> *playbin,
               <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a>        stream,
               <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>    user_data)</pre>
<p>This signal is emitted whenever the tags of a text stream have changed.
The application will most likely want to get the new tags.</p>
<p>This signal may be emitted from the context of a GStreamer streaming thread.
You can use <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstMessage.html#gst-message-new-application"><code class="function">gst_message_new_application()</code></a> and <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html#gst-element-post-message"><code class="function">gst_element_post_message()</code></a>
to notify your application's main thread.</p>
<div class="refsect3">
<a name="id-1.2.31.13.14.6"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>playbin</p></td>
<td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin"><span class="type">GstPlayBin</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>stream</p></td>
<td class="parameter_description"><p>stream index with changed tags</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>user_data</p></td>
<td class="parameter_description"><p>user data set when the signal handler was connected.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<p>Flags: <a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS">Run Last</a></p>
</div>
<hr>
<div class="refsect2">
<a name="GstPlayBin-video-changed"></a><h3>The <code class="literal">“video-changed”</code> signal</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
user_function (<a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin"><span class="type">GstPlayBin</span></a> *playbin,
               <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>    user_data)</pre>
<p>This signal is emitted whenever the number or order of the video
streams has changed. The application will most likely want to select
a new video stream.</p>
<p>This signal is usually emitted from the context of a GStreamer streaming
thread. You can use <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstMessage.html#gst-message-new-application"><code class="function">gst_message_new_application()</code></a> and
<a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html#gst-element-post-message"><code class="function">gst_element_post_message()</code></a> to notify your application's main thread.</p>
<div class="refsect3">
<a name="id-1.2.31.13.15.6"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>playbin</p></td>
<td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin"><span class="type">GstPlayBin</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>user_data</p></td>
<td class="parameter_description"><p>user data set when the signal handler was connected.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<p>Flags: <a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS">Run Last</a></p>
</div>
<hr>
<div class="refsect2">
<a name="GstPlayBin-video-tags-changed"></a><h3>The <code class="literal">“video-tags-changed”</code> signal</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
user_function (<a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin"><span class="type">GstPlayBin</span></a> *playbin,
               <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a>        stream,
               <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>    user_data)</pre>
<p>This signal is emitted whenever the tags of a video stream have changed.
The application will most likely want to get the new tags.</p>
<p>This signal may be emitted from the context of a GStreamer streaming thread.
You can use <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstMessage.html#gst-message-new-application"><code class="function">gst_message_new_application()</code></a> and <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html#gst-element-post-message"><code class="function">gst_element_post_message()</code></a>
to notify your application's main thread.</p>
<div class="refsect3">
<a name="id-1.2.31.13.16.6"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>playbin</p></td>
<td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin"><span class="type">GstPlayBin</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>stream</p></td>
<td class="parameter_description"><p>stream index with changed tags</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>user_data</p></td>
<td class="parameter_description"><p>user data set when the signal handler was connected.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<p>Flags: <a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS">Run Last</a></p>
</div>
</div>
</div>
<div class="footer">
<hr>Generated by GTK-Doc V1.24</div>
</body>
</html>