GstElement Base class for all pipeline elements GstElement is the base class needed to construct an element that can be used in a GST pipeline. As such, it is not a functional entity, and cannot do anything when placed in a pipeline. All GstElements have a list containing the #GstPad structure for all their inputs and outputs. These can be added with gst_element_add_pad() or gst_element_add_ghost_pad(), and retrieved by name with gst_element_get_pad(), or in a list form by gst_element_get_pad_list(). gst_element_connect() is a convenience function provided to make it simpler to connect pads of two elements together. #GstElementFactory 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. @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. This enum defines the standard return values that an element can return after a state change. @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 The maximun number of states. This macro returns the current state of the element. @obj: Element to return state for. This macro returns the currently pending state of the element. @obj: Element to return the pending state for. Returns the state transition this object is going through. @obj: the Element to return the state transition for The Element is going from the NULL state to the READY state. The Element is going from the READY state to the PAUSED state. The Element is going from the PAUSED state to the READY state. The Element is going from the PLAYING state to the PAUSED state. The Element is going from the PAUSED state to the PLAYING state. The Element is going from the READY state to the NULL state. This enum defines the standard flags that an element may have. @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: Queries whether the Element should be placed in a thread. @obj: The element to query Queries if the Element is decoupled. @obj: The element to query Query wether this element is in the End Of Stream state. @obj: The element to query Query wether this element can handle events. @obj: The element to query Get the parent object of this element. @obj: The element to query Get the name of this element. @obj: The element to query Get the pads of this elements. @obj: The element to query Get the scheduler of this element. @obj: The element to query Get the manager of this element. @obj: The element to query Get the clock of this element @obj: the Element to query 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. @element: The element in question. The function to get the clock from a clock providing element @element: The element to get the clock of @Returns: The clock provided by the element The function to set the clock on a clock receiving element. @element: The element to set the clock on @clock: The clock to set on the element @klass: @templ: @element: Destroy the element. This is potentially dangerous, use gst_object_unref instead. @element: the element to destroy @element: @loop: @element: @name: @element: @Returns: @element: @Returns: @element: @sched: @element: @parent: @element: @Returns: @element: @Returns: @element: @pad: @element: @pad: @element: @name: @Returns: GList of pads @element: @name: @Returns: @element: @name: @Returns: @element: @Returns: @element: @Returns: @element: @name: @Returns: @element: @pad: @name: @Returns: @element: @pad: @element: @pad: @Returns: @element: @templ: @Returns: @element: @templ: @Returns: @element: @pad: @filtercaps: @Returns: @src: @dest: @Returns: @srcpadname: @destpadname: @element_1: @element_2: @Varargs: @Returns: @src: @dest: @filtercaps: @Returns: @srcpadname: @destpadname: @src: @srcpadname: @dest: @destpadname: @Returns: @src: @srcpadname: @dest: @destpadname: @filtercaps: @Returns: @src: @dest: @srcpadname: @destpadname: @element_1: @element_2: @Varargs: @src: @srcpadname: @dest: @destpadname: @element: @state: @Returns: @element: @Returns: @elem: @element: @state: @Returns: @element: @error: @Varargs: @element: @Returns: @element: @element: @Returns: @element: @element: @clock: @time: @Returns: @element: @Returns: @element: @clock: @gstelement: the object which received the signal. Is trigered whenever an error occured @gstelement: the object which received the signal. @arg1: the error message @arg2: Is trigered whenever a new pad is added to an element @gstelement: the object which received the signal. @arg1: the new pad that was added @gstelement: the object which received the signal. @arg1: The pad that was removed. Is trigered whenever the state of an element changes @gstelement: the object which received the signal. @arg1: the new state of the object @arg2: