# qtivoverlay
Source: [https://docs.qualcomm.com/doc/80-70018-50/topic/qtioverlay.html](https://docs.qualcomm.com/doc/80-70018-50/topic/qtioverlay.html)
The qtivoverlay plugin is a hardware accelerated in-place image draw and blit plugin
for drawing overlays on top of the YUV images.
You can configure the overlays through properties and through the buffer metadata
attached to the input buffers.
- It supports blitting of static images, bounding boxes, custom user text, data/time
overlays, and privacy mask through properties.
- It supports blitting of detection (bounding box), segmentation (semantic mask/mask
image), classification (label/user text), and pose graph overlay through metadata
attached to the input buffer.
## Inheritance chain
[GObject](https://docs.gtk.org/gobject/) → [GstObject](https://gstreamer.freedesktop.org/documentation/gstreamer/gstobject.html?gi-language=c) → [GstElement](https://gstreamer.freedesktop.org/documentation/gstreamer/gstelement.html?gi-language=c) → [GstBaseTransform](https://gstreamer.freedesktop.org/documentation/base/gstbasetransform.html?gi-language=c) → [GstVideoFliter](https://gstreamer.freedesktop.org/documentation/video/gstvideofilter.html?gi-language=c) → GstVideoOverlay
The following tables provide information on pad templates and element properties of
qtivoverlay. For use cases, see [Video overlay use cases](https://docs.qualcomm.com/doc/80-70018-50/topic/overlay-use-cases.html).
## Pad configuration
| Pad Name | Capabilities | Capabilities | Capabilities |
| --- | --- | --- | --- |
| SINK template: 'sink'
- Availability: Always
- Direction: sink
| video/x-raw | format:
width:
height:
framerate: | { (string)NV12, (string)NV21 }
[ 1, 32767 ]
[ 1, 32767 ]
[ 0/1, 2147483647/1 ] |
| SINK template: 'sink'
- Availability: Always
- Direction: sink
| video/x-raw (ANY) | format:
width:
height:
framerate: | { (string)NV12, (string)NV21 }
[ 1, 32767 ]
[ 1, 32767 ]
[ 0/1, 2147483647/1 ] |
| SRC template: 'src'
- Availability: Always
- Direction: source
| video/x-raw | format:
width:
height:
framerate: | { (string)NV12, (string)NV21 }
[ 1, 32767 ]
[ 1, 32767 ]
[ 0/1, 2147483647/1 ] |
| SRC template: 'src'
- Availability: Always
- Direction: source
| video/x-raw (ANY) | format:
width:
height:
framerate: | { (string)NV12, (string)NV21 }
[ 1, 32767 ]
[ 1, 32767 ]
[ 0/1, 2147483647/1 ] |
| | | | |
## Element configuration
Table : Element properties for qtivoverlay
| Property | Description |
| --- | --- |
| name | The name of the object.
- flags: readable, writable
- String. Default: "overlay0"
|
| parent | The parent of the object.
- flags: readable, writable
- Object of type "GstObject"
|
| qos | Handles the quality-of-service (QoS) events.
- flags: readable, writable
- Boolean. Default: true
|
| overlay-text | Renders text on top of video stream.
- flags: readable, writable, changeable in NULL, READY,
PAUSED or PLAYING state
- String. Default: ""
|
| overlay-date | Renders date and time on top of video stream.
- flags: readable, writable, changeable in NULL, READY,
PAUSED or PLAYING state
- String. Default: ""
|
| overlay-simg | Renders static image on top of video stream.
- flags: readable, writable, changeable in NULL, READY,
PAUSED or PLAYING state
- String. Default: ""
|
| overlay-bbox | Renders bounding box and label on top of video stream.
- flags: readable, writable, changeable in NULL, READY,
PAUSED or PLAYING state
- String. Default: ""
|
| overlay-mask | Renders privacy mask on top of video stream.
- flags: readable, writable, changeable in NULL, READY,
PAUSED or PLAYING state
- String. Default: ""
|
| bbox-color | Bounding box overlay color.
- flags: readable, writable
- Unsigned Integer. Range: 0 - 4294967295 Default:
52479
|
| date-color | Date overlay color.
- flags: readable, writable
- Unsigned Integer. Range: 0 - 4294967295 Default:
4278190335
|
| text-color | Text overlay color.
- flags: readable, writable
- Unsigned Integer. Range: 0 - 4294967295 Default:
4294902015
|
| pose-color | Pose overlay color.
- flags: readable, writable
- Unsigned Integer. Range: 0 - 4294967295 Default:
869007615
|
| arrows-color | Arrows overlay color.
- flags: readable, writable
- Unsigned Integer. Range: 0 - 4294967295 Default:
4278190335
|
| bbox-font-size | Bounding box overlay font size.
- flags: readable, writable
- Unsigned Integer. Range: 1 - 4294967295 Default: 25
|
| date-font-size | Date overlay font size.
- flags: readable, writable
- Unsigned Integer. Range: 1 - 4294967295 Default: 20
|
| text-font-size | Text overlay font size.
- flags: readable, writable
- Unsigned Integer. Range: 1 - 4294967295 Default: 40
|
| dest-rect-ml-text | Destination rectangle parameters for ML detection overlay.
The Start-X, Start-Y , Width, and Height of the destination
rectangle format is <X, Y, WIDTH, HEIGHT>.
- flags: readable, writable
- GstValueArray of GValues of type "gint"
|
| Polygon | |
| arrows-ft-mv | Arrows MV filter.
- flags: readable, writable
- Unsigned Integer. Range: 0 - 4294967295 Default: 0
|
| arrows-ft-sad | Arrows sad filter.
- flags: readable, writable
- Unsigned Integer. Range: 0 - 4294967295 Default: 0
|
| arrows-ft-var | Arrows var filter.
- flags: readable, writable
- Unsigned Integer. Range: 0 - 4294967295 Default: 0
|
**Parent Topic:** [Configure ML plugins](https://docs.qualcomm.com/doc/80-70018-50/topic/inferencing-plugins.html)
Last Published: Jan 30, 2026
[Previous Topic
qtimlvsuperresolution](https://docs.qualcomm.com/bundle/publicresource/80-70018-50/topics/qtimlvsuperresolution.md) [Next Topic
qtimetamux](https://docs.qualcomm.com/bundle/publicresource/80-70018-50/topics/qtimetamux.md)