| GStreamer 0.10 Library Reference Manual |
|---|
GstControllerGstController — |
#include <gst/controller/gstcontroller.h>
GstController;
enum GstInterpolateMode;
gboolean gst_controller_init (int *argc,
char ***argv);
GstController* gst_controller_new (GObject *object,
...);
GstController* gst_controller_new_list (GObject *object,
GList *list);
GstController* gst_controller_new_valist (GObject *object,
va_list var_args);
gboolean gst_controller_remove_properties
(GstController *self,
...);
gboolean gst_controller_remove_properties_list
(GstController *self,
GList *list);
gboolean gst_controller_remove_properties_valist
(GstController *self,
va_list var_args);
gboolean gst_controller_set (GstController *self,
gchar *property_name,
GstClockTime timestamp,
GValue *value);
gboolean gst_controller_set_from_list (GstController *self,
gchar *property_name,
GSList *timedvalues);
gboolean gst_controller_unset (GstController *self,
gchar *property_name,
GstClockTime timestamp);
gboolean gst_controller_unset_all (GstController *self,
gchar *property_name);
GValue* gst_controller_get (GstController *self,
gchar *property_name,
GstClockTime timestamp);
const GList* gst_controller_get_all (GstController *self,
gchar *property_name);
gboolean gst_controller_sync_values (GstController *self,
GstClockTime timestamp);
gboolean gst_controller_get_value_arrays (GstController *self,
GstClockTime timestamp,
GSList *value_arrays);
gboolean gst_controller_get_value_array (GstController *self,
GstClockTime timestamp,
GstValueArray *value_array);
gboolean gst_controller_set_interpolation_mode
(GstController *self,
gchar *property_name,
GstInterpolateMode mode);
#define GST_PARAM_CONTROLLABLE
typedef enum
{
GST_INTERPOLATE_NONE,
GST_INTERPOLATE_TRIGGER,
GST_INTERPOLATE_LINEAR,
GST_INTERPOLATE_QUADRATIC,
GST_INTERPOLATE_CUBIC,
GST_INTERPOLATE_USER
} GstInterpolateMode;
The various interpolation modes available.
GST_INTERPOLATE_NONE | steps-like interpolation, default |
GST_INTERPOLATE_TRIGGER | returns the default value of the property, except for times with specific values |
GST_INTERPOLATE_LINEAR | linear interpolation |
GST_INTERPOLATE_QUADRATIC | square interpolation |
GST_INTERPOLATE_CUBIC | cubic interpolation |
GST_INTERPOLATE_USER | user-provided interpolation |
gboolean gst_controller_init (int *argc,
char ***argv);
Initializes the use of the controller library. Suggested to be called right
after gst_init().
argc : | pointer to the commandline argument count |
argv : | pointer to the commandline argument values |
| Returns : | the TRUE for success.
|
GstController* gst_controller_new (GObject *object, ...);
Creates a new GstController for the given object's properties
object : | the object of which some properties should be controlled |
... : | NULL terminated list of property names that should be controlled
|
| Returns : | the new controller. |
Since 0.9
GstController* gst_controller_new_list (GObject *object, GList *list);
Creates a new GstController for the given object's properties
object : | the object of which some properties should be controlled |
list : | list of property names that should be controlled |
| Returns : | the new controller. |
Since 0.9
GstController* gst_controller_new_valist (GObject *object, va_list var_args);
Creates a new GstController for the given object's properties
object : | the object of which some properties should be controlled |
var_args : | NULL terminated list of property names that should be controlled
|
| Returns : | the new controller. |
Since 0.9
gboolean gst_controller_remove_properties
(GstController *self,
...);Removes the given object properties from the controller
self : | the controller object from which some properties should be removed |
... : | NULL terminated list of property names that should be removed
|
| Returns : | FALSE if one of the given property isn't handled by the controller, TRUE otherwise
|
Since 0.9
gboolean gst_controller_remove_properties_list
(GstController *self,
GList *list);Removes the given object properties from the controller
self : | the controller object from which some properties should be removed |
list : | GList of property names that should be removed |
| Returns : | FALSE if one of the given property isn't handled by the controller, TRUE otherwise
|
Since 0.9
gboolean gst_controller_remove_properties_valist
(GstController *self,
va_list var_args);Removes the given object properties from the controller
self : | the controller object from which some properties should be removed |
var_args : | NULL terminated list of property names that should be removed
|
| Returns : | FALSE if one of the given property isn't handled by the controller, TRUE otherwise
|
Since 0.9
gboolean gst_controller_set (GstController *self, gchar *property_name, GstClockTime timestamp, GValue *value);
Set the value of given controller-handled property at a certain time.
self : | the controller object which handles the properties |
property_name : | the name of the property to set |
timestamp : | the time the control-change is schedules for |
value : | the control-value |
| Returns : | FALSE if the values couldn't be set (ex : properties not handled by controller), TRUE otherwise |
Since 0.9
gboolean gst_controller_set_from_list (GstController *self, gchar *property_name, GSList *timedvalues);
Sets multiple timed values at once.
self : | the controller object which handles the properties |
property_name : | the name of the property to set |
timedvalues : | a list with GstTimedValue items |
| Returns : | FALSE if the values couldn't be set (ex : properties not handled by controller), TRUE otherwise
|
Since 0.9
gboolean gst_controller_unset (GstController *self, gchar *property_name, GstClockTime timestamp);
Used to remove the value of given controller-handled property at a certain time.
self : | the controller object which handles the properties |
property_name : | the name of the property to unset |
timestamp : | the time the control-change should be removed from |
| Returns : | FALSE if the values couldn't be unset (ex : properties not handled by controller), TRUE otherwise
|
Since 0.9
gboolean gst_controller_unset_all (GstController *self, gchar *property_name);
Used to remove all time-stamped values of given controller-handled property
self : | the controller object which handles the properties |
property_name : | the name of the property to unset |
| Returns : | FALSE if the values couldn't be unset (ex : properties not handled
by controller), TRUE otherwise
|
Since 0.10.5
GValue* gst_controller_get (GstController *self, gchar *property_name, GstClockTime timestamp);
Gets the value for the given controller-handled property at the requested time.
self : | the controller object which handles the properties |
property_name : | the name of the property to get |
timestamp : | the time the control-change should be read from |
| Returns : | the GValue of the property at the given time, or NULL if the property isn't handled by the controller
|
Since 0.9
const GList* gst_controller_get_all (GstController *self, gchar *property_name);
Returns a read-only copy of the list of GstTimedValue for the given property. Free the list after done with it.
self : | the controller to get the list from |
property_name : | the name of the property to get the list for |
| Returns : | a copy of the list, or NULL if the property isn't handled by the controller
|
Since 0.9
gboolean gst_controller_sync_values (GstController *self, GstClockTime timestamp);
Sets the properties of the element, according to the controller that (maybe) handles them and for the given timestamp.
self : | the controller that handles the values |
timestamp : | the time that should be processed |
| Returns : | TRUE if the controller values could be applied to the object
properties, FALSE otherwise
|
Since 0.9
gboolean gst_controller_get_value_arrays (GstController *self, GstClockTime timestamp, GSList *value_arrays);
Function to be able to get an array of values for one or more given element properties.
If the GstValueArray->values array in list nodes is NULL, it will be created by the function. The type of the values in the array are the same as the property's type.
self : | the controller that handles the values |
timestamp : | the time that should be processed |
value_arrays : | list to return the control-values in |
| Returns : | TRUE if the given array(s) could be filled, FALSE otherwise
|
Since 0.9
gboolean gst_controller_get_value_array (GstController *self, GstClockTime timestamp, GstValueArray *value_array);
Function to be able to get an array of values for one element properties
If the GstValueArray->values array is NULL, it will be created by the function. The type of the values in the array are the same as the property's type.
self : | the controller that handles the values |
timestamp : | the time that should be processed |
value_array : | array to put control-values in |
| Returns : | TRUE if the given array(s) could be filled, FALSE otherwise
|
Since 0.9
gboolean gst_controller_set_interpolation_mode
(GstController *self,
gchar *property_name,
GstInterpolateMode mode);Sets the given interpolation mode on the given property.
self : | the controller object |
property_name : | the name of the property for which to change the interpolation |
mode : | interpolation mode |
| Returns : | TRUE if the property is handled by the controller, FALSE otherwise
|
Since 0.9
| << gstcontrol | GstControllerGObject >> |