# qtioverlay

Source: [https://docs.qualcomm.com/doc/80-70015-50/topic/qtioverlay.html](https://docs.qualcomm.com/doc/80-70015-50/topic/qtioverlay.html)

The qtioverlay plugin is a hardware accelerated in-place image draw and blit plugin
        for drawing overlays on top of the YUV images.

Note: This plugin will be replaced in a future release.

The overlays can be configured through properties and also through 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
                qtioverlay. For use cases, see [Video overlay use cases](https://docs.qualcomm.com/doc/80-70015-50/topic/overlay-use-cases.html).

## Pad configuration

| Pad Name | Capabilities | Capabilities | Capabilities |
| --- | --- | --- | --- |
| SINK template: 'sink'<br><ul class="ul" id="qtioverlay__ul_vxj_wz4_y1c"><br>                                    <li class="li"><em class="ph i">Availability:</em> Always</li><br><br>                                    <li class="li"><em class="ph i">Direction:</em> sink</li><br><br>                                </ul> | video/x-raw | format:<br><br><br>                                <br>width:<br><br><br>                                <br>height:<br><br><br>                                <br>framerate: | { (string)NV12, (string)NV21 }<br><br><br>                                <br>[ 1, 32767 ]<br><br><br>                                <br>[ 1, 32767 ]<br><br><br>                                <br>[ 0/1, 2147483647/1 ] |
| SINK template: 'sink'<br><ul class="ul" id="qtioverlay__ul_vxj_wz4_y1c"><br>                                    <li class="li"><em class="ph i">Availability:</em> Always</li><br><br>                                    <li class="li"><em class="ph i">Direction:</em> sink</li><br><br>                                </ul> | video/x-raw (ANY) | format:<br><br><br>                                <br>width:<br><br><br>                                <br>height:<br><br><br>                                <br>framerate: | { (string)NV12, (string)NV21 }<br><br><br>                                <br>[ 1, 32767 ]<br><br><br>                                <br>[ 1, 32767 ]<br><br><br>                                <br>[ 0/1, 2147483647/1 ] |
| SRC template: 'src'<br><ul class="ul" id="qtioverlay__ul_kfz_wz4_y1c"><br>                                    <li class="li"><em class="ph i">Availability:</em> Always</li><br><br>                                    <li class="li"><em class="ph i">Direction:</em> source</li><br><br>                                </ul> | video/x-raw | format:<br><br><br>                                <br>width:<br><br><br>                                <br>height:<br><br><br>                                <br>framerate: | { (string)NV12, (string)NV21 }<br><br><br>                                <br>[ 1, 32767 ]<br><br><br>                                <br>[ 1, 32767 ]<br><br><br>                                <br>[ 0/1, 2147483647/1 ] |
| SRC template: 'src'<br><ul class="ul" id="qtioverlay__ul_kfz_wz4_y1c"><br>                                    <li class="li"><em class="ph i">Availability:</em> Always</li><br><br>                                    <li class="li"><em class="ph i">Direction:</em> source</li><br><br>                                </ul> | video/x-raw (ANY) | format:<br><br><br>                                <br>width:<br><br><br>                                <br>height:<br><br><br>                                <br>framerate: | { (string)NV12, (string)NV21 }<br><br><br>                                <br>[ 1, 32767 ]<br><br><br>                                <br>[ 1, 32767 ]<br><br><br>                                <br>[ 0/1, 2147483647/1 ] |
|  |  |  |  |

## Element configuration

Table : Element properties for qtioverlay

| Property | Description |
| --- | --- |
| name | The name of the object.<ul class="ul" id="qtioverlay__ul_eyb_1pn_myb"><br>                                        <li class="li">flags: readable, writable</li><br><br>                                        <li class="li">String. Default: "overlay0"</li><br><br>                                    </ul> |
| parent | The parent of the object.<ul class="ul" id="qtioverlay__ul_fyb_1pn_myb"><br>                                        <li class="li">flags: readable, writable</li><br><br>                                        <li class="li">Object of type "GstObject"</li><br><br>                                    </ul> |
| qos | Handles Quality-of-Service (QoS) events.<ul class="ul" id="qtioverlay__ul_gyb_1pn_myb"><br>                                        <li class="li">flags: readable, writable</li><br><br>                                        <li class="li">Boolean. Default: true</li><br><br>                                    </ul> |
| overlay-text | Renders text on top of video stream.<ul class="ul" id="qtioverlay__ul_hyb_1pn_myb"><br>                                        <li class="li">flags: readable, writable, changeable in NULL, READY,<br>                                            PAUSED or PLAYING state</li><br><br>                                        <li class="li">String. Default: ""</li><br><br>                                    </ul> |
| overlay-date | Renders date and time on top of video stream.<ul class="ul" id="qtioverlay__ul_iyb_1pn_myb"><br>                                        <li class="li">flags: readable, writable, changeable in NULL, READY,<br>                                            PAUSED or PLAYING state</li><br><br>                                        <li class="li">String. Default: ""</li><br><br>                                    </ul> |
| overlay-simg | Renders static image on top of video stream.<ul class="ul" id="qtioverlay__ul_jyb_1pn_myb"><br>                                        <li class="li">flags: readable, writable, changeable in NULL, READY,<br>                                            PAUSED or PLAYING state</li><br><br>                                        <li class="li">String. Default: ""</li><br><br>                                    </ul> |
| overlay-bbox | Renders bounding box and label on top of video stream.<ul class="ul" id="qtioverlay__ul_kyb_1pn_myb"><br>                                        <li class="li">flags: readable, writable, changeable in NULL, READY,<br>                                            PAUSED or PLAYING state</li><br><br>                                        <li class="li">String. Default: ""</li><br><br>                                    </ul> |
| overlay-mask | Renders privacy mask on top of video stream.<ul class="ul" id="qtioverlay__ul_lyb_1pn_myb"><br>                                        <li class="li">flags: readable, writable, changeable in NULL, READY,<br>                                            PAUSED or PLAYING state</li><br><br>                                        <li class="li">String. Default: ""</li><br><br>                                    </ul> |
| bbox-color | Bounding box overlay color.<ul class="ul" id="qtioverlay__ul_myb_1pn_myb"><br>                                        <li class="li">flags: readable, writable</li><br><br>                                        <li class="li">Unsigned Integer. Range: 0 - 4294967295 Default:<br>                                            52479</li><br><br>                                    </ul> |
| date-color | Date overlay color.<ul class="ul" id="qtioverlay__ul_nyb_1pn_myb"><br>                                        <li class="li">flags: readable, writable</li><br><br>                                        <li class="li">Unsigned Integer. Range: 0 - 4294967295 Default:<br>                                            4278190335</li><br><br>                                    </ul> |
| text-color | Text overlay color.<ul class="ul" id="qtioverlay__ul_oyb_1pn_myb"><br>                                        <li class="li">flags: readable, writable</li><br><br>                                        <li class="li">Unsigned Integer. Range: 0 - 4294967295 Default:<br>                                            4294902015</li><br><br>                                    </ul> |
| pose-color | Pose overlay color.<ul class="ul" id="qtioverlay__ul_pyb_1pn_myb"><br>                                        <li class="li">flags: readable, writable</li><br><br>                                        <li class="li">Unsigned Integer. Range: 0 - 4294967295 Default:<br>                                            869007615</li><br><br>                                    </ul> |
| arrows-color | Arrows overlay color.<ul class="ul" id="qtioverlay__ul_qyb_1pn_myb"><br>                                        <li class="li">flags: readable, writable</li><br><br>                                        <li class="li">Unsigned Integer. Range: 0 - 4294967295 Default:<br>                                            4278190335</li><br><br>                                    </ul> |
| bbox-font-size | Bounding box overlay font size.<ul class="ul" id="qtioverlay__ul_ryb_1pn_myb"><br>                                        <li class="li">flags: readable, writable</li><br><br>                                        <li class="li">Unsigned Integer. Range: 1 - 4294967295 Default: 25</li><br><br>                                    </ul> |
| date-font-size | Date overlay font size.<ul class="ul" id="qtioverlay__ul_syb_1pn_myb"><br>                                        <li class="li">flags: readable, writable</li><br><br>                                        <li class="li">Unsigned Integer. Range: 1 - 4294967295 Default: 20</li><br><br>                                    </ul> |
| text-font-size | Text overlay font size.<ul class="ul" id="qtioverlay__ul_tyb_1pn_myb"><br>                                        <li class="li">flags: readable, writable</li><br><br>                                        <li class="li">Unsigned Integer. Range: 1 - 4294967295 Default: 40</li><br><br>                                    </ul> |
| dest-rect-ml-text | Destination rectangle parameters for ML detection overlay.<br>                                    The Start-X, Start-Y , Width, and Height of the destination<br>                                    rectangle format is &lt;X, Y, WIDTH, HEIGHT&gt;.<ul class="ul" id="qtioverlay__ul_uyb_1pn_myb"><br>                                        <li class="li">flags: readable, writable</li><br><br>                                        <li class="li">GstValueArray of GValues of type "gint"</li><br><br>                                    </ul> |
| Polygon |  |
| arrows-ft-mv | Arrows MV filter.<ul class="ul" id="qtioverlay__ul_vyb_1pn_myb"><br>                                        <li class="li">flags: readable, writable</li><br><br>                                        <li class="li">Unsigned Integer. Range: 0 - 4294967295 Default: 0</li><br><br>                                    </ul> |
| arrows-ft-sad | Arrows sad filter.<ul class="ul" id="qtioverlay__ul_wyb_1pn_myb"><br>                                        <li class="li">flags: readable, writable</li><br><br>                                        <li class="li">Unsigned Integer. Range: 0 - 4294967295 Default: 0</li><br><br>                                    </ul> |
| arrows-ft-var | Arrows var filter.<ul class="ul" id="qtioverlay__ul_xyb_1pn_myb"><br>                                        <li class="li">flags: readable, writable</li><br><br>                                        <li class="li">Unsigned Integer. Range: 0 - 4294967295 Default: 0</li><br><br>                                    </ul> |

**Parent Topic:** [ML plugins](https://docs.qualcomm.com/doc/80-70015-50/topic/inferencing-plugins.html)

Last Published: Oct 27, 2025

[Previous Topic
qtimlvsuperresolution](https://docs.qualcomm.com/bundle/publicresource/80-70015-50/topics/qtimlvsuperresolution.md) [Next Topic
qtimetamux](https://docs.qualcomm.com/bundle/publicresource/80-70015-50/topics/qtimetamux.md)