gstelement.sgml 12.7 KB
Newer Older
1 2 3 4 5 6 7 8 9
<!-- ##### SECTION Title ##### -->
GstElement

<!-- ##### SECTION Short_Description ##### -->
Base class for all pipeline elements

<!-- ##### SECTION Long_Description ##### -->
<para>
GstElement is the base class needed to construct an element that can be
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
10
used in a GStreamer pipeline.  As such, it is not a functional entity, and
11 12 13 14
cannot do anything when placed in a pipeline.
</para>

<para>
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
15 16 17 18 19
The name of a GstElement can be get with gst_element_get_name() and set with
gst_element_set_name().  For speed, GST_ELEMENT_NAME() can be used in the 
core.
Do not use this in plug-ins or applications in order to retain ABI 
compatibility.
20 21 22
</para>

<para>
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
23 24 25 26 27 28 29 30 31 32
All elements have pads (of the type #GstPad).  These pads connect to pads on
other elements.  Buffers flow between these connected pads.
A GstElement has a GList of #GstPad structures for all their input (or sink)
and output (or source) pads.  
Core and plug-in writers can add and remove pads with gst_element_add_pad()
and gst_element_remove_pad().
Application writers can manipulate ghost pads (copies of real pads inside a bin)
with gst_element_add_ghost_pad() and gst_element_remove_ghost_pad().
A pad of an element can be retrieved by name with gst_element_get_pad().
A GList of all pads can be retrieved with gst_element_get_pad_list().
33 34 35
</para>

<para>
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
36 37 38 39 40 41 42 43 44
Elements can be connected through their pads.
If the connection is straightforward, use the gst_element_connect() 
convenience function to connect two elements, or gst_element_connect_many() 
for more elements in a row.
Use gst_element_connect_filtered() to connect two elements constrained by
a specified set of #GstCaps.
For finer control, use gst_element_connect_pads() and 
gst_element_connect_pads_filtered() to specify the pads to connect on 
each element by name.
45 46 47
</para>

<para>
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
48 49 50 51 52 53 54 55
Each element has a state (see #GstElementState).  You can get and set the state
of an element with gst_element_get_state() and gst_element_set_state().  
You can wait for an element to change it's state with gst_element_wait_state_change().
To get a string representation of a #GstElementState, use 
gst_element_statename(), which is a really bad name for what it does 
and should probably be renamed
to gst_element_state_get_name if we can be bothered to do that.
</para>
56

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
57 58 59 60 61
<para>
You can get and set a #GstClock on an element using gst_element_get_clock()
and gst_element_set_clock().  You can wait for the clock to reach a given
#GstClockTime using gst_element_clock_wait().
</para>
62

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
63 64 65
<!-- ##### SECTION See_Also ##### -->
<para>
#GstElementFactory, #GstPad
66 67
</para>

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
68
<!-- basic object functions -->
69

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
70
<!-- ##### STRUCT GstElement ##### -->
71 72 73 74 75
<para>

</para>


Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
76
<!-- ##### MACRO gst_element_destroy ##### -->
77
<para>
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
78 79 80
Destroys the element (without taking the refcount into account).
An application programmer should use #gst_object_unref instead to dispose
of an element he doesn't need anymore.
81 82
</para>

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
83
@element: a #GstElement to destroy
84 85


Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
86
<!-- ##### FUNCTION gst_element_get_name ##### -->
87
<para>
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
88

89 90
</para>

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
91 92
@element: 
@Returns: 
93 94


Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
95
<!-- ##### FUNCTION gst_element_set_name ##### -->
96 97
<para>

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
98
</para>
99

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
100 101
@element: 
@name: 
102 103


Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
104
<!-- connection -->
105 106


Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
107
<!-- ##### FUNCTION gst_element_get_factory ##### -->
108
<para>
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
109

110 111
</para>

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
112 113
@element: 
@Returns: 
114 115


Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
116
<!-- ##### FUNCTION gst_element_add_pad ##### -->
117
<para>
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
118

119 120
</para>

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
121 122
@element: 
@pad: 
123 124


Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
125
<!-- ##### FUNCTION gst_element_remove_pad ##### -->
126
<para>
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
127

128 129
</para>

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
130 131
@element: 
@pad: 
132 133


Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
134
<!-- ##### FUNCTION gst_element_add_ghost_pad ##### -->
135
<para>
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
136

137 138
</para>

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
139 140 141 142
@element: 
@pad: 
@name: 
@Returns: 
143 144


Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
145
<!-- ##### FUNCTION gst_element_remove_ghost_pad ##### -->
146
<para>
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
147

148 149
</para>

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
150 151
@element: 
@pad: 
152 153


Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
154 155 156 157
<!-- pad template manipulation -->


<!-- ##### FUNCTION gst_element_get_pad ##### -->
158
<para>
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
159

160 161
</para>

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
162 163 164
@element: 
@name: 
@Returns: GList of #GstPads
165 166


Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
167
<!-- ##### FUNCTION gst_element_get_static_pad ##### -->
168
<para>
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
169

170 171
</para>

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
172 173 174
@element: 
@name: 
@Returns: 
175

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
176 177

<!-- ##### FUNCTION gst_element_get_request_pad ##### -->
178
<para>
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
179

180 181
</para>

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
182 183 184
@element: 
@name: 
@Returns: 
185 186


Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
187
<!-- ##### FUNCTION gst_element_get_pad_list ##### -->
188
<para>
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
189

190 191
</para>

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
192 193
@element: 
@Returns: 
194 195


Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
196
<!-- ##### FUNCTION gst_element_get_pad_template_list ##### -->
197
<para>
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
198

199 200
</para>

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
201 202
@element: 
@Returns: 
203 204 205



Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
206
<!-- scheduling -->
207 208


Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
209
<!-- ##### FUNCTION gst_element_class_add_pad_template ##### -->
210
<para>
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
211

212 213
</para>

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
214 215 216 217
@klass: 
@templ: 
<!-- # Unused Parameters # -->
@element: 
218 219


Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
220
<!-- ##### FUNCTION gst_element_connect ##### -->
221
<para>
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
222

223 224
</para>

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
225 226 227
@src: 
@dest: 
@Returns: 
228 229


Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
230
<!-- ##### FUNCTION gst_element_connect_many ##### -->
231
<para>
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
232

233 234
</para>

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
235 236 237 238
@element_1: 
@element_2: 
@Varargs: 
@Returns: 
239 240


Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
241
<!-- ##### FUNCTION gst_element_connect_filtered ##### -->
242
<para>
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
243

244 245
</para>

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
246 247 248 249
@src: 
@dest: 
@filtercaps: 
@Returns: 
250 251


Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
252
<!-- ##### FUNCTION gst_element_connect_pads ##### -->
253
<para>
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
254

255 256
</para>

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
257 258 259 260 261
@src: 
@srcpadname: 
@dest: 
@destpadname: 
@Returns: 
262 263


Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
264
<!-- ##### FUNCTION gst_element_connect_pads_filtered ##### -->
Wim Taymans's avatar
Wim Taymans committed
265
<para>
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
266

Wim Taymans's avatar
Wim Taymans committed
267 268
</para>

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
269 270 271 272 273 274
@src: 
@srcpadname: 
@dest: 
@destpadname: 
@filtercaps: 
@Returns: 
Wim Taymans's avatar
Wim Taymans committed
275 276


Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
277
<!-- ##### FUNCTION gst_element_disconnect ##### -->
278 279 280 281
<para>

</para>

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
282 283 284 285 286
@src: 
@dest: 
<!-- # Unused Parameters # -->
@srcpadname: 
@destpadname: 
287

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
288 289

<!-- ##### FUNCTION gst_element_disconnect_many ##### -->
290
<para>
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
291

292 293
</para>

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
294 295 296
@element_1: 
@element_2: 
@Varargs: 
297 298


Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
299
<!-- ##### FUNCTION gst_element_disconnect_pads ##### -->
Wim Taymans's avatar
Wim Taymans committed
300
<para>
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
301

Wim Taymans's avatar
Wim Taymans committed
302 303
</para>

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
304 305 306 307
@src: 
@srcpadname: 
@dest: 
@destpadname: 
Wim Taymans's avatar
Wim Taymans committed
308 309


Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
310 311 312 313
<!-- pad manipulation -->


<!-- ##### FUNCTION gst_element_get_compatible_pad ##### -->
Wim Taymans's avatar
Wim Taymans committed
314
<para>
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
315

Wim Taymans's avatar
Wim Taymans committed
316 317
</para>

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
318 319 320
@element: 
@pad: 
@Returns: 
Wim Taymans's avatar
Wim Taymans committed
321 322


Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
323
<!-- ##### FUNCTION gst_element_get_compatible_pad_filtered ##### -->
324 325 326 327 328
<para>

</para>

@element: 
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
329 330 331
@pad: 
@filtercaps: 
@Returns: 
332 333


Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
334
<!-- ##### FUNCTION gst_element_set_state ##### -->
335
<para>
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
336

337 338
</para>

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
339 340 341
@element: 
@state: 
@Returns: 
342 343


Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
344
<!-- ##### FUNCTION gst_element_get_state ##### -->
345 346 347 348 349
<para>

</para>

@element: 
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
350 351 352
@Returns: 
<!-- # Unused Parameters # -->
@elem: 
353 354


355
<!-- ##### FUNCTION gst_element_state_get_name ##### -->
356 357 358 359
<para>

</para>

360 361
@state: 
@Returns: 
362 363


364
<!-- ##### FUNCTION gst_element_wait_state_change ##### -->
365 366 367 368
<para>

</para>

369
@element: 
370 371


Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
372
<!-- ##### FUNCTION gst_element_error ##### -->
373 374 375 376 377
<para>

</para>

@element: 
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
378 379
@error: 
@Varargs: 
380 381


Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
382
<!-- ##### FUNCTION gst_element_set_eos ##### -->
383 384 385 386 387 388 389
<para>

</para>

@element: 


Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
390
<!-- ##### FUNCTION gst_element_interrupt ##### -->
391 392 393 394 395
<para>

</para>

@element: 
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
396
@Returns: 
397 398


Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
399
<!-- ##### FUNCTION gst_element_yield ##### -->
400 401 402 403 404 405 406
<para>

</para>

@element: 


Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
407
<!-- ##### FUNCTION gst_element_get_clock ##### -->
Wim Taymans's avatar
Wim Taymans committed
408 409 410 411 412 413 414 415
<para>

</para>

@element: 
@Returns: 


Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
416
<!-- ##### FUNCTION gst_element_set_clock ##### -->
417 418 419 420 421
<para>

</para>

@element: 
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
422
@clock: 
423 424


Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
425
<!-- ##### FUNCTION gst_element_clock_wait ##### -->
426 427 428 429 430
<para>

</para>

@element: 
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
431 432 433
@clock: 
@time: 
@Returns: 
434 435


Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
436
<!-- ##### USER_FUNCTION GstElementGetClockFunction ##### -->
437
<para>
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
438 439 440 441 442 443
The function to get the clock from a clock providing element
</para>

@element: The element to get the clock of
@Returns: The clock provided by the element

444

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
445 446 447
<!-- ##### USER_FUNCTION GstElementSetClockFunction ##### -->
<para>
The function to set the clock on a clock receiving element.
448 449
</para>

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
450 451
@element: The element to set the clock on
@clock: The clock to set on the element
452 453


Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
454
<!-- ##### FUNCTION gst_element_set_loop_function ##### -->
455 456 457 458 459
<para>

</para>

@element: 
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
460
@loop: 
461 462


Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
463
<!-- ##### USER_FUNCTION GstElementLoopFunction ##### -->
464
<para>
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
465 466 467
This function type is used to specify a loop function for the element.  It
is passed the element in question, and is expect to return only in error
circumstances.
468 469
</para>

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
470
@element: The element in question.
471 472


473
<!-- ##### FUNCTION gst_element_get_scheduler ##### -->
474 475 476 477 478 479 480 481
<para>

</para>

@element: 
@Returns: 


482
<!-- ##### FUNCTION gst_element_set_scheduler ##### -->
483 484 485 486 487
<para>

</para>

@element: 
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
488
@sched: 
489 490


Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
491
<!-- ##### FUNCTION gst_element_get_parent ##### -->
492 493 494 495 496
<para>

</para>

@element: 
Wim Taymans's avatar
Wim Taymans committed
497
@Returns: 
498 499


Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
500
<!-- ##### FUNCTION gst_element_set_parent ##### -->
501 502 503 504 505
<para>

</para>

@element: 
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
506
@parent: 
507 508


Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
509
<!-- ##### FUNCTION gst_element_get_managing_bin ##### -->
510 511 512 513 514 515 516
<para>

</para>

@element: 
@Returns: 

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
517
<!-- clocking -->
518

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
519 520

<!-- ##### ENUM GstElementState ##### -->
Wim Taymans's avatar
Wim Taymans committed
521
<para>
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
522 523
This enum defines the standard states an element may be in.  You will normally
use gst_element_set_state() to change the state of an element.
Wim Taymans's avatar
Wim Taymans committed
524 525 526

</para>

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
527 528 529 530 531 532
@GST_STATE_VOID_PENDING: 
@GST_STATE_NULL: Reset the state of an element.
@GST_STATE_READY: will make the element ready to start processing data. some
elements might have a non trivial way to initialize themselves.
@GST_STATE_PAUSED: means there really is data flowing temporary stops the data flow.
@GST_STATE_PLAYING: means there really is data flowing through the graph.
Wim Taymans's avatar
Wim Taymans committed
533

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
534
<!-- ##### ENUM GstElementStateReturn ##### -->
535
<para>
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
536 537
This enum defines the standard return values that an element
can return after a state change.
538 539 540

</para>

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
541 542 543
@GST_STATE_FAILURE: the element could not perform the state change
@GST_STATE_SUCCESS: the element successfully changed its state
@GST_STATE_ASYNC: the element will asynchronously change its state as soon as possible
544

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
545
<!-- ##### MACRO GST_NUM_STATES ##### -->
546
<para>
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
547
The maximun number of states.
548 549
</para>

550 551


Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
552
<!-- ##### MACRO GST_STATE ##### -->
553
<para>
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
554
This macro returns the current state of the element.
555 556
</para>

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
557
@obj: Element to return state for.
558 559


Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
560
<!-- ##### MACRO GST_STATE_PENDING ##### -->
Wim Taymans's avatar
Wim Taymans committed
561
<para>
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
562
This macro returns the currently pending state of the element.
Wim Taymans's avatar
Wim Taymans committed
563 564
</para>

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
565
@obj: Element to return the pending state for.
Wim Taymans's avatar
Wim Taymans committed
566 567


Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
568
<!-- ##### MACRO GST_STATE_TRANSITION ##### -->
Wim Taymans's avatar
Wim Taymans committed
569
<para>
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
570
Returns the state transition this object is going through.
Wim Taymans's avatar
Wim Taymans committed
571 572
</para>

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
573
@obj: the Element to return the state transition for
Wim Taymans's avatar
Wim Taymans committed
574 575


Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
576
<!-- ##### MACRO GST_STATE_NULL_TO_READY ##### -->
Wim Taymans's avatar
Wim Taymans committed
577
<para>
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
578
The Element is going from the NULL state to the READY state.
Wim Taymans's avatar
Wim Taymans committed
579 580 581 582
</para>



Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
583
<!-- ##### MACRO GST_STATE_READY_TO_PAUSED ##### -->
584
<para>
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
585
The Element is going from the READY state to the PAUSED state.
586 587 588 589
</para>



Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
590
<!-- ##### MACRO GST_STATE_PAUSED_TO_READY ##### -->
Wim Taymans's avatar
Wim Taymans committed
591
<para>
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
592
The Element is going from the PAUSED state to the READY state.
Wim Taymans's avatar
Wim Taymans committed
593 594 595 596
</para>



Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
597
<!-- ##### MACRO GST_STATE_PLAYING_TO_PAUSED ##### -->
598
<para>
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
599
The Element is going from the PLAYING state to the PAUSED state.
600 601 602 603
</para>



Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
604
<!-- ##### MACRO GST_STATE_PAUSED_TO_PLAYING ##### -->
605
<para>
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
606
The Element is going from the PAUSED state to the PLAYING state.
607 608 609 610
</para>



Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
611
<!-- ##### MACRO GST_STATE_READY_TO_NULL ##### -->
612
<para>
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
613
The Element is going from the READY state to the NULL state.
614 615 616 617
</para>



Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
618
<!-- ##### ENUM GstElementFlags ##### -->
619
<para>
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
620 621
This enum defines the standard flags that an element may have.
</para>
622

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
623 624 625 626 627 628 629 630 631 632 633 634 635 636
@GST_ELEMENT_COMPLEX: 
@GST_ELEMENT_DECOUPLED: 
@GST_ELEMENT_THREAD_SUGGESTED: 
@GST_ELEMENT_NO_SEEK: 
@GST_ELEMENT_INFINITE_LOOP: 
@GST_ELEMENT_SCHEDULER_PRIVATE1: 
@GST_ELEMENT_SCHEDULER_PRIVATE2: 
@GST_ELEMENT_NEW_LOOPFUNC: 
@GST_ELEMENT_EVENT_AWARE: 
@GST_ELEMENT_FLAG_LAST: 

<!-- ##### MACRO GST_ELEMENT_IS_THREAD_SUGGESTED ##### -->
<para>
Queries whether the Element should be placed in a thread.
637 638
</para>

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
639
@obj: a #GstElement to query
640 641


Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
642
<!-- ##### MACRO GST_ELEMENT_IS_DECOUPLED ##### -->
643
<para>
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
644
Queries if the Element is decoupled.
645 646
</para>

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
647
@obj: a #GstElement to query
648 649


Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
650
<!-- ##### MACRO GST_ELEMENT_IS_EOS ##### -->
651
<para>
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
652
Query wether this element is in the End Of Stream state.
653 654
</para>

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
655
@obj: a #GstElement to query
656 657


Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
658
<!-- ##### MACRO GST_ELEMENT_IS_EVENT_AWARE ##### -->
659
<para>
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
660
Query wether this element can handle events.
661 662
</para>

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
663
@obj: a #GstElement to query
664 665


Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
666
<!-- ##### MACRO GST_ELEMENT_PARENT ##### -->
667
<para>
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
668
Get the parent object of this element.
669 670
</para>

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
671
@obj: a #GstElement to query
672 673


Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
674
<!-- ##### MACRO GST_ELEMENT_NAME ##### -->
675
<para>
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
676
Gets the name of this element.  Used in the core.  Not ABI-compatible.
677 678
</para>

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
679
@obj: A #GstElement to query
680 681


Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
682
<!-- ##### MACRO GST_ELEMENT_PADS ##### -->
683
<para>
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
684
Get the pads of this elements.
685 686
</para>

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
687
@obj: a #GstElement to query
688 689


Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
690
<!-- ##### MACRO GST_ELEMENT_SCHED ##### -->
691
<para>
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
692
Get the scheduler of this element.
693 694
</para>

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
695
@obj: a #GstElement to query
696 697


Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
698
<!-- ##### MACRO GST_ELEMENT_MANAGER ##### -->
699
<para>
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
700 701
Get the manager of this element.
</para>
702

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
703 704 705 706 707 708
@obj: a #GstElement to query


<!-- ##### MACRO GST_ELEMENT_CLOCK ##### -->
<para>
Get the clock of this element
709 710
</para>

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
711
@obj: a #GstElement to query
712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728


<!-- ##### SIGNAL GstElement::eos ##### -->
<para>

</para>

@gstelement: the object which received the signal.

<!-- ##### SIGNAL GstElement::error ##### -->
<para>
Is trigered whenever an error occured

</para>

@gstelement: the object which received the signal.
@arg1: the error message
Wim Taymans's avatar
Wim Taymans committed
729
@arg2: 
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

<!-- ##### SIGNAL GstElement::new-pad ##### -->
<para>
Is trigered whenever a new pad is added to an element
</para>

@gstelement: the object which received the signal.
@arg1: the new pad that was added

<!-- ##### SIGNAL GstElement::pad-removed ##### -->
<para>

</para>

@gstelement: the object which received the signal.
@arg1: The pad that was removed.

<!-- ##### SIGNAL GstElement::state-change ##### -->
<para>
Is trigered whenever the state of an element changes
</para>

@gstelement: the object which received the signal.
@arg1: the new state of the object
@arg2: