Skip to content

tiovxsde

Marco Herrera edited this page Jul 8, 2022 · 1 revision

TIOVX SDE

tiovxsde is used for calculating stereo disparity between two input sources

Hierarchy

GObject
 ╰──GInitiallyUnowned
     ╰──GstObject
         ╰──GstElement
             ╰──GstBaseTransform
                 ╰──GstTIOVXMiso
                     ╰──GstTIOVXSde

Pad templates

left_sink

      video/x-raw
                 format: { (string)GRAY8, (string)GRAY16_LE, (string)NV12 }
                  width: [ 1, 2048 ]
                 height: [ 1, 1024 ]
      video/x-raw(memory:batched)
                 format: { (string)GRAY8, (string)GRAY16_LE, (string)NV12 }
                  width: [ 1, 2048 ]
                 height: [ 1, 1024 ]
           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

right_sink

      video/x-raw
                 format: { (string)GRAY8, (string)GRAY16_LE, (string)NV12 }
                  width: [ 1, 2048 ]
                 height: [ 1, 1024 ]
      video/x-raw(memory:batched)
                 format: { (string)GRAY8, (string)GRAY16_LE, (string)NV12 }
                  width: [ 1, 2048 ]
                 height: [ 1, 1024 ]
           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-sde-tiovx
                  width: [ 1, 2048 ]
                 height: [ 1, 1024 ]
      application/x-sde-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

aggregation-penalty-p1

SDE aggragation penalty P1. Optimization penalty constant for small disparity change.

Flags : Read / Write

Integer. Range: 0 - 127 Default value : 32

aggregation-penalty-p2

SDE aggragation penalty P2. Optimization penalty constant for small disparity change.

Flags : Read / Write

Integer. Range: 0 - 255 Default value : 192

confidence-score-map-0

index 0 of array that defines custom ranges for mapping 7-bit confidence score to one of 8 levels

Flags : Read / Write

Integer. Range: 0 - 127 Default value : 0

confidence-score-map-1

index 1 of array that defines custom ranges for mapping 7-bit confidence score to one of 8 levels

Flags : Read / Write

Integer. Range: 0 - 127 Default value : 1

confidence-score-map-2

index 2 of array that defines custom ranges for mapping 7-bit confidence score to one of 8 levels

Flags : Read / Write

Integer. Range: 0 - 127 Default value : 2

confidence-score-map-3

index 3 of array that defines custom ranges for mapping 7-bit confidence score to one of 8 levels

Flags : Read / Write

Integer. Range: 0 - 127 Default value : 3

confidence-score-map-4

index 4 of array that defines custom ranges for mapping 7-bit confidence score to one of 8 levels

Flags : Read / Write

Integer. Range: 0 - 127 Default value : 5

confidence-score-map-6

index 6 of array that defines custom ranges for mapping 7-bit confidence score to one of 8 levels

Flags : Read / Write

Integer. Range: 0 - 127 Default value : 14

confidence-score-map-7

index 7 of array that defines custom ranges for mapping 7-bit confidence score to one of 8 levels

Flags : Read / Write

Integer. Range: 0 - 127 Default value : 127

disparity-max

Maximum Disparity

Flags : Read / Write / Controllable

Enum Default : 0, ("disparity_max_63")

Enum "GstTIOVXSdeMaxDisparity"

(0): disparity_max_63 - disparity_min +63

(1): disparity_max_127 - disparity_min +127

(2): disparity_max_191 - disparity_min +191

disparity-min

Minimum Disparity

Flags : Read / Write / Controllable

Enum Default : 0, ("minimum_disparity_0")

Enum "GstTIOVXSdeMinDisparity"

(0): minimum_disparity_0 - minimum disparity == 0

(1): minimum_disparity_minus_3 - minimum disparity == -3

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: 0 - 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: 0 - 18446744073709551615 Default value : 0

name

The name of the object

Flags : Read / Write

String Default value : "tiovxsde0"

parent

The parent of the object

Flags : Read / Write

GstObject Default value : N/A

reduced-range-search-enable

Enable reduced range search on pixels near right margin

Flags : Read / Write

Boolean Default value : true

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_SDE")

Enum "GstTIOVXSdeTarget"

(0): DMPAC_SDE - DMPAC SDE

texture-filter-enable

Enable texture based filtering

Flags : Read / Write

Boolean Default value : false

threshold-left-right

Left-right consistency check threshold in pixels

Flags : Read / Write

Integer. Range: 0 - 255 Default value : 3

threshold-texture

If texture filter enable, Scaled texture threshold

Flags : Read / Write

Integer. Range: 0 - 255 Default value : 100

Pipeline examples

Single SDE

gst-launch-1.0 filesrc location=left.avi ! avidemux ! h264parse ! v4l2h264dec ! video/x-raw, format=NV12 ! queue ! sde.left_sink filesrc location=right.avi ! avidemux ! h264parse ! v4l2h264dec ! video/x-raw, format=NV12 ! queue ! sde.right_sink tiovxsde name=sde ! tiovxsdeviz ! kmssink sync=false

Batched processing

filesrc location=left.avi ! avidemux ! h264parse ! v4l2h264dec ! video/x-raw, format=NV12 ! tee name=tee \
tee. ! queue ! mux_a. \
tee. ! queue !  mux_a. tiovxmux name=mux_a !  sde.left_sink \
filesrc location=right.avi ! avidemux ! h264parse ! v4l2h264dec ! video/x-raw, format=NV12 !  tee name=tee2 \
tee2. ! queue ! mux_b. \
tee2. ! queue ! mux_b. tiovxmux name=mux_b ! sde.right_sink \
tiovxsde name=sde ! tiovxsdeviz ! tiovxdemux name=demux \
demux. ! queue ! kmssink sync=false \
demux. ! queue ! fakesink