mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-18 22:36:33 +00:00
docs: add the start of a design document for controller
This commit is contained in:
parent
15f675ccc1
commit
3d71df23b0
1 changed files with 23 additions and 0 deletions
23
docs/design/part-controller.txt
Normal file
23
docs/design/part-controller.txt
Normal file
|
@ -0,0 +1,23 @@
|
|||
Controller
|
||||
----------
|
||||
|
||||
The controller subsystem allows to automate element property changes. It works
|
||||
so that all parameter changes are time based and elements request property
|
||||
updates at processing time.
|
||||
|
||||
Element view
|
||||
~~~~~~~~~~~~
|
||||
Elements don't need to do much. They need to:
|
||||
- mark object properties that can be changed while processing with
|
||||
GST_PARAM_CONTROLLABLE
|
||||
- call gst_object_sync_values (self, timestamp) in the processing function
|
||||
before accessing the parameters.
|
||||
|
||||
Application view
|
||||
~~~~~~~~~~~~~~~~
|
||||
Application need to setup the property automation. For that they need to create
|
||||
a GstControlSource and attach it to a property using GstControlBinding. Various
|
||||
control-sources and control-bindings exists. All control sources produce control
|
||||
value sequences in the form of gdouble values. The control bindings map them to
|
||||
the value range and type of the bound property.
|
||||
|
Loading…
Reference in a new issue