Top | ![]() |
![]() |
![]() |
![]() |
GstInterpolationControlSource is a GstControlSource, that interpolates values between user-given control points. It supports several interpolation modes and property types.
To use GstInterpolationControlSource get a new instance by calling
gst_interpolation_control_source_new()
, bind it to a GParamSpec, select a interpolation mode with
gst_interpolation_control_source_set_interpolation_mode()
and set some control points by calling
gst_interpolation_control_source_set()
.
All functions are MT-safe.
GstInterpolationControlSource *
gst_interpolation_control_source_new (void
);
This returns a new, unbound GstInterpolationControlSource.
gboolean gst_interpolation_control_source_set (GstInterpolationControlSource *self
,GstClockTime timestamp
,const GValue *value
);
Set the value of given controller-handled property at a certain time.
self |
the GstInterpolationControlSource object |
|
timestamp |
the time the control-change is scheduled for |
|
value |
the control-value |
gboolean gst_interpolation_control_source_set_from_list (GstInterpolationControlSource *self
,const GSList *timedvalues
);
Sets multiple timed values at once.
self |
the GstInterpolationControlSource object |
|
timedvalues |
a list with GstTimedValue items |
gboolean gst_interpolation_control_source_set_interpolation_mode (GstInterpolationControlSource *self
,GstInterpolateMode mode
);
Sets the given interpolation mode.
User interpolation is not yet available and quadratic interpolation is deprecated and maps to cubic interpolation.
GList *
gst_interpolation_control_source_get_all
(GstInterpolationControlSource *self
);
Returns a read-only copy of the list of GstTimedValue for the given property. Free the list after done with it.
gboolean gst_interpolation_control_source_unset (GstInterpolationControlSource *self
,GstClockTime timestamp
);
Used to remove the value of given controller-handled property at a certain time.
self |
the GstInterpolationControlSource object |
|
timestamp |
the time the control-change should be removed from |
void
gst_interpolation_control_source_unset_all
(GstInterpolationControlSource *self
);
Used to remove all time-stamped values of given controller-handled property
gint
gst_interpolation_control_source_get_count
(GstInterpolationControlSource *self
);
Returns the number of control points that are set.
struct GstInterpolationControlSource;
The instance structure of GstControlSource.
The various interpolation modes available.