tiovxdof - TexasInstruments/edgeai-gst-plugins GitHub Wiki
TIOVX DOF
tiovxdof
generates a Dense Optical Flow using the TIOVX Modules API
Hierarchy
GObject
+----GInitiallyUnowned
+----GstObject
+----GstElement
+----GstAggregator
+----GstTIOVXMiso
+----GstTIOVXDOF
Pad templates
sink
application/x-pyramid-tiovx
format: { (string)GRAY8, (string)GRAY16_LE }
width: [ 1, 2048 ]
height: [ 1, 1024 ]
levels: [ 1, 6 ]
scale: 0.5
application/x-pyramid-tiovx(memory:batched)
format: { (string)GRAY8, (string)GRAY16_LE }
width: [ 1, 2048 ]
height: [ 1, 1024 ]
levels: [ 1, 6 ]
scale: 0.5
num-channels: [ 1, 16 ]
Availability – on request
Direction – sink
Object type – GstTIOVXMisoPad
Pad properties:
- emit-signals: Send signals to signal data consumption
flags: readable, writable
Boolean.
Default: false
- pool-size: Pool size of the internal buffer pool
flags: readable, writable, controllable
Integer.
Range: 2 - 16
Default: 2
- repeat-after-eos: Flag to indicate if the pad will repeat the last buffer after an EOS is received. Only valid for sink pads
flags: readable, writable, controllable
Boolean.
Default: true
src
application/x-dof-tiovx
width: [ 1, 2048 ]
height: [ 1, 1024 ]
application/x-dof-tiovx(memory:batched)
width: [ 1, 2048 ]
height: [ 1, 1024 ]
num-channels: [ 1, 16 ]
Availability – always
Direction – src
Object type – GstTIOVXMisoPad
Pad properties:
- emit-signals: Send signals to signal data consumption
flags: readable, writable
Boolean.
Default: false
- pool-size: Pool size of the internal buffer pool
flags: readable, writable, controllable
Integer.
Range: 2 - 16
Default: 2
- repeat-after-eos: Flag to indicate if the pad will repeat the last buffer after an EOS is received. Only valid for sink pads
flags: readable, writable, controllable
Boolean.
Default: true
Properties
downward-search-range
Max downward range of search
Flags : Read / Write
Integer. Range: 0 - 62 Default value : 48
horizontal-search-range
Sideways search range of motion
Flags : Read / Write
Integer. Range: 0 - 191 Default value : 191
latency
Additional latency in live mode to allow upstream to take longer to produce buffers for the current position (in nanoseconds)
Flags : Read / Write
Unsigned Integer64. Range: 2 - 18446744073709551615 Default value : 0
median-filter-enable
Enable post-processing median filter
Flags : Read / Write
Boolean Default value : true
min-upstream-latency
When sources with a higher latency are expected to be plugged in dynamically after the aggregator has started playing, this allows overriding the minimum latency reported by the initial source(s). This is only taken into account when larger than the actually reported minimum latency. (nanoseconds)
Flags : Read / Write
Unsigned Integer64. Range: 2 - 18446744073709551615 Default value : 0
motion-direction
Expected direction of motion
Flags : Read / Write
**Enum ** Default value : 0 ("motion_neutral_5x5")
Enum "GstTIOVXDOFMotionDirection"
(0): motion_neutral_5x5 - Motion neutral, 5x5 census transform
(1): forward_motion - Forward motion
(2): reverse_motion - Reverse motion
(3): motion_neutral_7x7 - Motion neutral, 7x7 census transform
motion-smoothness-factor
Motion smoothness factor
Flags : Read / Write
Integer. Range: 0 - 31 Default value : 24
name
The name of the object
Flags : Read / Write
String Default value : "tiovxdof0"
parent
The parent of the object
Flags : Read / Write
GstObject Default value : N/A
start-time
Start time to use if start-time-selection=set
Flags : Read / Write
Unsigned Integer64. Range: 2 - 18446744073709551615 Default value : 18446744073709551615
start-time-selection
Decides which start time is output
Flags : Read / Write
**Enum ** Default value : 0 ("zero")
Enum "GstAggregatorStartTimeSelection
(0): zero - Start at 0 running time (default)
(1): first - Start at first observed input running time
(2): set - Set start time with start-time property
target
TIOVX target to use by this element
Flags : Read / Write / Controllable
Enum Default : 0, ("DMPAC_DOF")
Enum "GstTIOVXDOFTarget"
(0): DMPAC_DOF - DMPAC DOF
upward-search-range
Max upward range of search
Flags : Read / Write
Integer. Range: 0 - 62 Default value : 48
Pipeline examples
Single tiovxdof
gst-launch-1.0 videotestsrc is-live=true num-buffers=10 pattern=ball ! "video/x-raw, height=1024, width=1024" ! tiovxpyramid ! "application/x-pyramid-tiovx, format=GRAY8, scale=0.5, levels=2" ! tee name=tee tee. ! queue ! tiovxdelay delay-size=1 ! dof.delayed_sink tee. ! queue ! dof.sink tiovxdof name=dof ! fakesink
Batched processing
gst-launch-1.0 videotestsrc is-live=true num-buffers=10 pattern=ball ! "video/x-raw, height=1024, width=1024" ! tiovxpyramid ! "application/x-pyramid-tiovx, format=GRAY8, scale=0.5, levels=2" ! tee name=tee tee. ! queue ! tiovxdelay delay-size=1 ! mux_a. tee. ! queue ! mux_b. videotestsrc is-live=true num-buffers=10 pattern=ball ! "video/x-raw, height=1024, width=1024" ! tiovxpyramid ! "application/x-pyramid-tiovx, format=GRAY8, scale=0.5, levels=2" ! tee name=tee2 tee2. ! queue ! tiovxdelay delay-size=1 ! mux_a. tiovxmux name=mux_a ! dof.delayed_sink tee2. ! queue ! mux_b. tiovxmux name=mux_b ! dof.sink tiovxdof name=dof ! tiovxdemux name=demux demux. ! queue ! fakesink demux. ! queue ! fakesink