gstcontroller

package
v0.0.0-...-ccbbe8a Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 7, 2023 License: MPL-2.0 Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	GTypeInterpolationMode          = coreglib.Type(C.gst_interpolation_mode_get_type())
	GTypeInterpolationControlSource = coreglib.Type(C.gst_interpolation_control_source_get_type())
)

GType values.

View Source
var (
	GTypeLFOWaveform      = coreglib.Type(C.gst_lfo_waveform_get_type())
	GTypeLFOControlSource = coreglib.Type(C.gst_lfo_control_source_get_type())
)

GType values.

View Source
var (
	GTypeTimedValueControlSource = coreglib.Type(C.gst_timed_value_control_source_get_type())
	GTypeControlPoint            = coreglib.Type(C.gst_control_point_get_type())
)

GType values.

View Source
var (
	GTypeARGBControlBinding = coreglib.Type(C.gst_argb_control_binding_get_type())
)

GType values.

View Source
var (
	GTypeDirectControlBinding = coreglib.Type(C.gst_direct_control_binding_get_type())
)

GType values.

View Source
var (
	GTypeProxyControlBinding = coreglib.Type(C.gst_proxy_control_binding_get_type())
)

GType values.

View Source
var (
	GTypeTriggerControlSource = coreglib.Type(C.gst_trigger_control_source_get_type())
)

GType values.

Functions

func TimedValueControlInvalidateCache

func TimedValueControlInvalidateCache(self TimedValueControlSourcer)

TimedValueControlInvalidateCache: reset the controlled value cache.

The function takes the following parameters:

  • self: TimedValueControlSource.

Types

type ARGBControlBinding

type ARGBControlBinding struct {
	gst.ControlBinding
	// contains filtered or unexported fields
}

ARGBControlBinding: value mapping object that attaches multiple control sources to a guint gobject properties representing a color. A control value of 0.0 will turn the color component off and a value of 1.0 will be the color level.

func NewARGBControlBinding

func NewARGBControlBinding(object gst.GstObjector, propertyName string, csA, csR, csG, csB gst.ControlSourcer) *ARGBControlBinding

NewARGBControlBinding: create a new control-binding that attaches the given ControlSource to the #GObject property.

The function takes the following parameters:

  • object of the property.
  • propertyName: property-name to attach the control source.
  • csA: control source for the alpha channel.
  • csR: control source for the red channel.
  • csG: control source for the green channel.
  • csB: control source for the blue channel.

The function returns the following values:

  • argbControlBinding: new ARGBControlBinding.

type ARGBControlBindingClass

type ARGBControlBindingClass struct {
	// contains filtered or unexported fields
}

ARGBControlBindingClass class structure of ARGBControlBinding.

An instance of this type is always passed by reference.

func (*ARGBControlBindingClass) ParentClass

ParentClass: parent class.

type ARGBControlBindingOverrides

type ARGBControlBindingOverrides struct {
}

ARGBControlBindingOverrides contains methods that are overridable.

type ControlPoint

type ControlPoint struct {
	// contains filtered or unexported fields
}

ControlPoint: internal structure for value+time and various temporary values used for interpolation. This "inherits" from GstTimedValue.

An instance of this type is always passed by reference.

func (*ControlPoint) Copy

func (cp *ControlPoint) Copy() *ControlPoint

Copy copies a ControlPoint.

The function returns the following values:

  • controlPoint: copy of cp.

func (*ControlPoint) SetValue

func (c *ControlPoint) SetValue(value float64)

Value: new value.

func (*ControlPoint) Timestamp

func (c *ControlPoint) Timestamp() gst.ClockTime

Timestamp: timestamp of the value change.

func (*ControlPoint) Value

func (c *ControlPoint) Value() float64

Value: new value.

type DirectControlBinding

type DirectControlBinding struct {
	gst.ControlBinding
	// contains filtered or unexported fields
}

DirectControlBinding: value mapping object that attaches control sources to gobject properties. It will map the control values directly to the target property range. If a non-absolute direct control binding is used, the value range [0.0 ... 1.0] is mapped to full target property range, and all values outside the range will be clipped. An absolute control binding will not do any value transformations.

func NewDirectControlBinding

func NewDirectControlBinding(object gst.GstObjector, propertyName string, cs gst.ControlSourcer) *DirectControlBinding

NewDirectControlBinding: create a new control-binding that attaches the ControlSource to the #GObject property. It will map the control source range [0.0 ... 1.0] to the full target property range, and clip all values outside this range.

The function takes the following parameters:

  • object of the property.
  • propertyName: property-name to attach the control source.
  • cs: control source.

The function returns the following values:

  • directControlBinding: new DirectControlBinding.

func NewDirectControlBindingAbsolute

func NewDirectControlBindingAbsolute(object gst.GstObjector, propertyName string, cs gst.ControlSourcer) *DirectControlBinding

NewDirectControlBindingAbsolute: create a new control-binding that attaches the ControlSource to the #GObject property. It will directly map the control source values to the target property range without any transformations.

The function takes the following parameters:

  • object of the property.
  • propertyName: property-name to attach the control source.
  • cs: control source.

The function returns the following values:

  • directControlBinding: new DirectControlBinding.

type DirectControlBindingClass

type DirectControlBindingClass struct {
	// contains filtered or unexported fields
}

DirectControlBindingClass class structure of DirectControlBinding.

An instance of this type is always passed by reference.

func (*DirectControlBindingClass) ParentClass

ParentClass: parent class.

type DirectControlBindingOverrides

type DirectControlBindingOverrides struct {
}

DirectControlBindingOverrides contains methods that are overridable.

type InterpolationControlSource

type InterpolationControlSource struct {
	TimedValueControlSource
	// contains filtered or unexported fields
}

InterpolationControlSource is a ControlSource, that interpolates values between user-given control points. It supports several interpolation modes and property types.

To use InterpolationControlSource get a new instance by calling gst_interpolation_control_source_new(), bind it to a Spec and set some control points by calling gst_timed_value_control_source_set().

All functions are MT-safe.

func NewInterpolationControlSource

func NewInterpolationControlSource() *InterpolationControlSource

NewInterpolationControlSource: this returns a new, unbound InterpolationControlSource.

The function returns the following values:

  • interpolationControlSource: new, unbound InterpolationControlSource.

type InterpolationControlSourceClass

type InterpolationControlSourceClass struct {
	// contains filtered or unexported fields
}

InterpolationControlSourceClass: instance of this type is always passed by reference.

func (*InterpolationControlSourceClass) ParentClass

type InterpolationControlSourceOverrides

type InterpolationControlSourceOverrides struct {
}

InterpolationControlSourceOverrides contains methods that are overridable.

type InterpolationMode

type InterpolationMode C.gint

InterpolationMode various interpolation modes available.

const (
	// InterpolationModeNone: steps-like interpolation, default.
	InterpolationModeNone InterpolationMode = iota
	// InterpolationModeLinear: linear interpolation.
	InterpolationModeLinear
	// InterpolationModeCubic: cubic interpolation (natural), may overshoot the
	// min or max values set by the control point, but is more 'curvy'.
	InterpolationModeCubic
	// InterpolationModeCubicMonotonic: monotonic cubic interpolation, will not
	// produce any values outside of the min-max range set by the control points
	// (Since: 1.8).
	InterpolationModeCubicMonotonic
)

func (InterpolationMode) String

func (i InterpolationMode) String() string

String returns the name in string for InterpolationMode.

type LFOControlSource

type LFOControlSource struct {
	gst.ControlSource
	// contains filtered or unexported fields
}

LFOControlSource is a ControlSource, that provides several periodic waveforms as control values.

To use LFOControlSource get a new instance by calling gst_lfo_control_source_new(), bind it to a Spec and set the relevant properties.

All functions are MT-safe.

func NewLFOControlSource

func NewLFOControlSource() *LFOControlSource

NewLFOControlSource: this returns a new, unbound LFOControlSource.

The function returns the following values:

  • lfoControlSource: new, unbound LFOControlSource.

type LFOControlSourceClass

type LFOControlSourceClass struct {
	// contains filtered or unexported fields
}

LFOControlSourceClass: instance of this type is always passed by reference.

func (*LFOControlSourceClass) ParentClass

func (l *LFOControlSourceClass) ParentClass() *gst.ControlSourceClass

type LFOControlSourceOverrides

type LFOControlSourceOverrides struct {
}

LFOControlSourceOverrides contains methods that are overridable.

type LFOWaveform

type LFOWaveform C.gint

LFOWaveform various waveform modes available.

const (
	// LfoWaveformSine: sine waveform.
	LfoWaveformSine LFOWaveform = iota
	// LfoWaveformSquare: square waveform.
	LfoWaveformSquare
	// LfoWaveformSaw: saw waveform.
	LfoWaveformSaw
	// LfoWaveformReverseSaw: reverse saw waveform.
	LfoWaveformReverseSaw
	// LfoWaveformTriangle: triangle waveform.
	LfoWaveformTriangle
)

func (LFOWaveform) String

func (l LFOWaveform) String() string

String returns the name in string for LFOWaveform.

type ProxyControlBinding

type ProxyControlBinding struct {
	gst.ControlBinding
	// contains filtered or unexported fields
}

ProxyControlBinding that forwards requests to another ControlBinding.

func NewProxyControlBinding

func NewProxyControlBinding(object gst.GstObjector, propertyName string, refObject gst.GstObjector, refPropertyName string) *ProxyControlBinding

NewProxyControlBinding forwards all access to data or sync_values() requests from property_name on object to the control binding at ref_property_name on ref_object.

The function takes the following parameters:

  • object: Object.
  • propertyName: property name in object to control.
  • refObject to forward all ControlBinding requests to.
  • refPropertyName: property_name in ref_object to control.

The function returns the following values:

  • proxyControlBinding: new ControlBinding that proxies the control interface between properties on different Object's.

type ProxyControlBindingClass

type ProxyControlBindingClass struct {
	// contains filtered or unexported fields
}

ProxyControlBindingClass: opaque ProxyControlBindingClass struct

An instance of this type is always passed by reference.

type ProxyControlBindingOverrides

type ProxyControlBindingOverrides struct {
}

ProxyControlBindingOverrides contains methods that are overridable.

type TimedValueControlSource

type TimedValueControlSource struct {
	gst.ControlSource
	// contains filtered or unexported fields
}

TimedValueControlSource: base class for ControlSource 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.

func BaseTimedValueControlSource

func BaseTimedValueControlSource(obj TimedValueControlSourcer) *TimedValueControlSource

BaseTimedValueControlSource returns the underlying base object.

func (*TimedValueControlSource) All

func (self *TimedValueControlSource) All() []*gst.TimedValue

All returns a read-only copy of the list of TimedValue for the given property. Free the list after done with it.

The function returns the following values:

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

func (*TimedValueControlSource) ConnectValueAdded

func (self *TimedValueControlSource) ConnectValueAdded(f func(timedValue *ControlPoint)) coreglib.SignalHandle

ConnectValueAdded is emitted right after the new value has been added to self.

func (*TimedValueControlSource) ConnectValueChanged

func (self *TimedValueControlSource) ConnectValueChanged(f func(timedValue *ControlPoint)) coreglib.SignalHandle

ConnectValueChanged is emitted right after the new value has been set on timed_signals.

func (*TimedValueControlSource) ConnectValueRemoved

func (self *TimedValueControlSource) ConnectValueRemoved(f func(timedValue *ControlPoint)) coreglib.SignalHandle

ConnectValueRemoved is emitted when timed_value is removed from self.

func (*TimedValueControlSource) Count

func (self *TimedValueControlSource) Count() int

Count: get the number of control points that are set.

The function returns the following values:

  • gint: number of control points that are set.

func (*TimedValueControlSource) Set

func (self *TimedValueControlSource) Set(timestamp gst.ClockTime, value float64) bool

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

The function takes the following parameters:

  • timestamp: time the control-change is scheduled for.
  • value: control-value.

The function returns the following values:

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

func (*TimedValueControlSource) SetFromList

func (self *TimedValueControlSource) SetFromList(timedvalues []*gst.TimedValue) bool

SetFromList sets multiple timed values at once.

The function takes the following parameters:

  • timedvalues: list with TimedValue items.

The function returns the following values:

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

func (*TimedValueControlSource) Unset

func (self *TimedValueControlSource) Unset(timestamp gst.ClockTime) bool

Unset: used to remove the value of given controller-handled property at a certain time.

The function takes the following parameters:

  • timestamp: time the control-change should be removed from.

The function returns the following values:

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

func (*TimedValueControlSource) UnsetAll

func (self *TimedValueControlSource) UnsetAll()

UnsetAll: used to remove all time-stamped values of given controller-handled property.

type TimedValueControlSourceClass

type TimedValueControlSourceClass struct {
	// contains filtered or unexported fields
}

TimedValueControlSourceClass: instance of this type is always passed by reference.

func (*TimedValueControlSourceClass) ParentClass

type TimedValueControlSourceOverrides

type TimedValueControlSourceOverrides struct {
}

TimedValueControlSourceOverrides contains methods that are overridable.

type TimedValueControlSourcer

type TimedValueControlSourcer interface {
	coreglib.Objector
	// contains filtered or unexported methods
}

TimedValueControlSourcer describes types inherited from class TimedValueControlSource.

To get the original type, the caller must assert this to an interface or another type.

type TriggerControlSource

type TriggerControlSource struct {
	TimedValueControlSource
	// contains filtered or unexported fields
}

TriggerControlSource is a ControlSource, that returns values from user-given control points. It allows for a tolerance on the time-stamps.

To use TriggerControlSource get a new instance by calling gst_trigger_control_source_new(), bind it to a Spec and set some control points by calling gst_timed_value_control_source_set().

All functions are MT-safe.

func NewTriggerControlSource

func NewTriggerControlSource() *TriggerControlSource

NewTriggerControlSource: this returns a new, unbound TriggerControlSource.

The function returns the following values:

  • triggerControlSource: new, unbound TriggerControlSource.

type TriggerControlSourceClass

type TriggerControlSourceClass struct {
	// contains filtered or unexported fields
}

TriggerControlSourceClass: instance of this type is always passed by reference.

func (*TriggerControlSourceClass) ParentClass

type TriggerControlSourceOverrides

type TriggerControlSourceOverrides struct {
}

TriggerControlSourceOverrides contains methods that are overridable.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL