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 62 63 64
<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>
<!-- ##### SECTION See_Also ##### -->
<para>
#GstElementFactory, #GstPad
65 66
</para>

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

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

</para>


Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
75
<!-- ##### MACRO gst_element_destroy ##### -->
76
<para>
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
77 78 79
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.
80 81
</para>

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


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

88 89
</para>

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


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

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

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


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


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

109 110
</para>

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


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

118 119
</para>

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


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

127 128
</para>

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


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

136 137
</para>

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


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

147 148
</para>

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


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


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

159 160
</para>

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


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

169 170
</para>

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

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

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

179 180
</para>

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


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

189 190
</para>

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


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

198 199
</para>

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



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


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

211 212
</para>

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


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

222 223
</para>

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


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

232 233
</para>

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


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

243 244
</para>

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


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

254 255
</para>

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


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

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

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


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

</para>

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

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

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

291 292
</para>

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


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

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

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


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


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

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

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


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

</para>

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


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

336 337
</para>

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


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

</para>

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


Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
354
<!-- ##### FUNCTION gst_element_wait_state_change ##### -->
355 356 357 358 359 360 361
<para>

</para>

@element: 


Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
362
<!-- ##### FUNCTION gst_element_statename ##### -->
363 364 365 366
<para>

</para>

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
367
@state: 
368 369 370
@Returns: 


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

</para>

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


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

</para>

@element: 


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

</para>

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


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

</para>

@element: 


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

</para>

@element: 
@Returns: 


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

</para>

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


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

</para>

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


Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
435
<!-- ##### USER_FUNCTION GstElementGetClockFunction ##### -->
436
<para>
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
437 438 439 440 441 442
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

443

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

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


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

</para>

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


Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
462
<!-- ##### USER_FUNCTION GstElementLoopFunction ##### -->
463
<para>
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
464 465 466
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.
467 468
</para>

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


Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
472
<!-- ##### FUNCTION gst_element_get_sched ##### -->
473 474 475 476 477 478 479 480
<para>

</para>

@element: 
@Returns: 


Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
481
<!-- ##### FUNCTION gst_element_set_sched ##### -->
482 483 484 485 486
<para>

</para>

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


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

</para>

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


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

</para>

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


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

</para>

@element: 
@Returns: 

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

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

<!-- ##### ENUM GstElementState ##### -->
Wim Taymans's avatar
Wim Taymans committed
520
<para>
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
521 522
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
523 524 525

</para>

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
526 527 528 529 530 531
@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
532

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

</para>

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
540 541 542
@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
543

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

549 550


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

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


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

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


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

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


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



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



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



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



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



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



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

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
622 623 624 625 626 627 628 629 630 631 632 633 634 635
@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.
636 637
</para>

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


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

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


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

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


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

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


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

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


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

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


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

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


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

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


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

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


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

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


<!-- ##### 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
728
@arg2: 
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

<!-- ##### 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: