GstTimedValueControlSource

GstTimedValueControlSource — timed value control source base class

Types and Values

Object Hierarchy

    GObject
    ╰── GInitiallyUnowned
        ╰── GstObject
            ╰── GstControlSource
                ╰── GstTimedValueControlSource
                    ├── GstInterpolationControlSource
                    ╰── GstTriggerControlSource

Includes

#include <libs/controller/gsttimedvaluecontrolsource.h>

Description

Base class for GstContrlSources that use time-stamped values.

When overriding bind, chain up first to give this bind implementation a chance to setup things.

All functions are MT-safe.

Functions

gst_timed_value_control_source_find_control_point_iter ()

GSequenceIter *
gst_timed_value_control_source_find_control_point_iter
                               (GstTimedValueControlSource *self,
                                GstClockTime timestamp);

Find last value before given timestamp in control point list. If all values in the control point list come after the given timestamp or no values exist, NULL is returned.

For use in control source implementations.

Parameters

self

the control source to search in

 

timestamp

the search key

 

Returns

the found GSequenceIter or NULL


gst_timed_value_control_source_set ()

gboolean
gst_timed_value_control_source_set (GstTimedValueControlSource *self,
                                    GstClockTime timestamp,
                                    const gdouble value);

Set the value of given controller-handled property at a certain time.

Parameters

self

the GstTimedValueControlSource object

 

timestamp

the time the control-change is scheduled for

 

value

the control-value

 

Returns

FALSE if the values couldn't be set, TRUE otherwise.


gst_timed_value_control_source_set_from_list ()

gboolean
gst_timed_value_control_source_set_from_list
                               (GstTimedValueControlSource *self,
                                const GSList *timedvalues);

Sets multiple timed values at once.

Parameters

self

the GstTimedValueControlSource object

 

timedvalues

a list with GstTimedValue items.

[transfer none][element-type GstTimedValue]

Returns

FALSE if the values couldn't be set, TRUE otherwise.


gst_timed_value_control_source_get_all ()

GList *
gst_timed_value_control_source_get_all
                               (GstTimedValueControlSource *self);

Returns a read-only copy of the list of GstTimedValue for the given property. Free the list after done with it.

Parameters

self

the GstTimedValueControlSource to get the list from

 

Returns

a copy of the list, or NULL if the property isn't handled by the controller.

[transfer container][element-type GstTimedValue]


gst_timed_value_control_source_unset ()

gboolean
gst_timed_value_control_source_unset (GstTimedValueControlSource *self,
                                      GstClockTime timestamp);

Used to remove the value of given controller-handled property at a certain time.

Parameters

self

the GstTimedValueControlSource object

 

timestamp

the time the control-change should be removed from

 

Returns

FALSE if the value couldn't be unset (i.e. not found, TRUE otherwise.


gst_timed_value_control_source_unset_all ()

void
gst_timed_value_control_source_unset_all
                               (GstTimedValueControlSource *self);

Used to remove all time-stamped values of given controller-handled property

Parameters

self

the GstTimedValueControlSource object

 

gst_timed_value_control_source_get_count ()

gint
gst_timed_value_control_source_get_count
                               (GstTimedValueControlSource *self);

Get the number of control points that are set.

Parameters

self

the GstTimedValueControlSource to get the number of values from

 

Returns

the number of control points that are set.


gst_timed_value_control_invalidate_cache ()

void
gst_timed_value_control_invalidate_cache
                               (GstTimedValueControlSource *self);

Reset the controlled value cache.

Parameters

Types and Values

struct GstTimedValueControlSource

struct GstTimedValueControlSource;

The instance structure of GstControlSource.