# qtismartvencbin

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

The qtismartvencbin plugin uses machine learning and computer vision to reduce the
        video bandwidth. It can be used for surveillance, where only the small image areas are in
        motion. The bitrate reduction can be configured according to the quality
        requirements.

The qtismartvencbin plugin implements the following:

- A GStreamer bin that has a video encoder and integrates computer vision APIs.
- The post-processed person-detection results from the machine learning pipeline.

Figure : qtismartvencbin architecture
            
            <!--?xml version="1.0" encoding="UTF-8"?-->
<svg id="Layer_1" data-name="Layer 1" xmlns="http://www.w3.org/2000/svg" width="919.999877929680224" height="576" viewbox="0 0 919.999877929680224 576">
  <g>
    <rect x=".500244140619543" y=".5" width="919" height="575" rx="7.5" ry="7.5" style="fill: #fafafa;"></rect>
    <path d="M911.999877929680224,1c3.859741210939319,0,7,3.1402587890625,7,7v560c0,3.859764099121094-3.140258789060681,7-7,7H7.999877929680224c-3.859741210930224,0-6.999877929680224-3.140235900878906-6.999877929680224-7V8C1,4.1402587890625,4.14013671875,1,7.999877929680224,1h904M911.999877929680224,0H7.999877929680224C3.581665039058862,0,0,3.581787109375,0,8v560c0,4.418235778808594,3.581665039058862,8,7.999877929680224,8h904c4.418334960939319,0,8-3.581764221191406,8-8V8c0-4.418212890625-3.581665039060681-8-8-8h0Z" style="fill: #d2d7e1;"></path>
  </g>
  <g>
    <g>
      <rect x="19.265705551259089" y="295.562747341786235" width="140" height="60" rx="4" ry="4" style="fill: #2a2aea;"></rect>
      <text transform="translate(47.797119140619543 330.2388916015625)" style="fill: #fff; font-family: Roboto-Regular, Roboto; font-size: 16px;"><tspan x="0" y="0">qtiqmmfsrc</tspan></text>
    </g>
    <g>
      <rect x="189.946044247890313" y="295.562747341786235" width="140" height="60" rx="4" ry="4" style="fill: #007884;"></rect>
      <text transform="translate(248.856323242182043 330.2388916015625)" style="fill: #fff; font-family: Roboto-Regular, Roboto; font-size: 16px;"><tspan x="0" y="0">tee</tspan></text>
    </g>
    <g>
      <rect x="760.734131688319394" y="280.41861979166606" width="140" height="60" rx="4" ry="4" style="fill: #007884;"></rect>
      <text transform="translate(778.652099609369543 315.094757080078125)" style="fill: #fff; font-family: Roboto-Regular, Roboto; font-size: 16px;"><tspan x="0" y="0">Encoded video</tspan></text>
    </g>
    <rect x="379.946044247890313" y="19.58333333333394" width="140" height="60" rx="4" ry="4" style="fill: #007884;"></rect>
    <text transform="translate(409.797851562494543 54.259479522705078)" style="fill: #fff; font-family: Roboto-Regular, Roboto; font-size: 16px;"><tspan x="0" y="0">Application</tspan></text>
    <text transform="translate(353.981323242182043 116.769401550292969)" style="font-family: Roboto-Regular, Roboto; font-size: 16px;"><tspan x="0" y="0">Configurable</tspan><tspan x="17.640625" y="19.2001953125">parameter</tspan></text>
    <text transform="translate(107.648559570307043 234.658676147460938)" style="font-family: Roboto-Regular, Roboto; font-size: 16px;"><tspan x="0" y="0">YUV full resolution</tspan><tspan x="0" y="24">(1080p or higher)</tspan></text>
    <text transform="translate(336.501586914057043 319.74261474609375)" style="font-family: Roboto-Regular, Roboto; font-size: 16px;"><tspan x="0" y="0">YUV low resolution</tspan><tspan x="0" y="24">(1080p or lower)</tspan></text>
    <g>
      <rect x="189.946044247890313" y="450.41666666666606" width="140" height="50" rx="4" ry="4" style="fill: #007884;"></rect>
      <text transform="translate(219.520507812494543 480.092803955078125)" style="fill: #fff; font-family: Roboto-Regular, Roboto; font-size: 16px;"><tspan x="0" y="0">Preprocess</tspan></text>
    </g>
    <g>
      <rect x="379.946044247890313" y="450.41666666666606" width="140" height="50" rx="4" ry="4" style="fill: #007884;"></rect>
      <text transform="translate(416.555664062494543 480.092803955078125)" style="fill: #fff; font-family: Roboto-Regular, Roboto; font-size: 16px;"><tspan x="0" y="0">Inference</tspan></text>
    </g>
    <g>
      <rect x="569.946044247890313" y="450.41666666666606" width="140" height="50" rx="4" ry="4" style="fill: #007884;"></rect>
      <text transform="translate(595.164672851557043 480.092803955078125)" style="fill: #fff; font-family: Roboto-Regular, Roboto; font-size: 16px;"><tspan x="0" y="0">Postprocess</tspan></text>
    </g>
    <rect x="169.946044247890313" y="410.41666666666606" width="560" height="110" rx="8" ry="8" style="fill: none; stroke: #231f20; stroke-miterlimit: 10; stroke-width: 2px;"></rect>
    <text transform="translate(412.254638671869543 436.092559814453125)" style="font-family: Roboto-Medium, Roboto; font-size: 16px; font-weight: 500;"><tspan x="0" y="0">AI pipeline</tspan></text>
    <g>
      <g>
        <rect x="559.946044247890313" y="280.562747341786235" width="160" height="60" rx="4" ry="4" style="fill: #007884;"></rect>
        <text transform="translate(592.633544921869543 305.63824462890625)" style="fill: #fff; font-family: Roboto-Regular, Roboto; font-size: 16px;"><tspan x="0" y="0">Video control</tspan><tspan x="17.51171875" y="19.2001953125">(Library)</tspan></text>
      </g>
      <g>
        <rect x="559.946044247890313" y="196.260370890298873" width="160" height="60" rx="4" ry="4" style="fill: #007884;"></rect>
        <text transform="translate(591.469482421869543 221.33587646484375)" style="fill: #fff; font-family: Roboto-Regular, Roboto; font-size: 16px;"><tspan x="0" y="0">Video encode</tspan><tspan x="-15.19921875" y="19.2001953125">plugin (qtic2venc)</tspan></text>
      </g>
      <rect x="539.946044247890313" y="118.58333333333394" width="200" height="241.996166467399235" rx="8" ry="8" style="fill: none; stroke: #2a2aea; stroke-miterlimit: 10; stroke-width: 2px;"></rect>
      <text transform="translate(581.953735351557043 145.876022338867188)" style="font-family: Roboto-Medium, Roboto; font-size: 16px; font-weight: 500;"><tspan x="0" y="0">qtismartvencbin</tspan></text>
      <text transform="translate(575.703735351557043 189.139175415039062)" style="font-family: Roboto-Regular, Roboto; font-size: 16px;"><tspan x="0" y="0">Smart parameters</tspan></text>
      <g>
        <line x1="639.946044921869543" y1="280.562744140625" x2="639.946044921869543" y2="262.010162353515625" style="fill: none; stroke: #000; stroke-miterlimit: 10;"></line>
        <polygon points="643.93505859375 263.177337646484375 639.946044921869543 256.269165039061591 635.95703125 263.177337646484375 643.93505859375 263.177337646484375"></polygon>
      </g>
    </g>
    <g>
      <line x1="330.446044921869543" y1="475.416671752929688" x2="373.705078125" y2="475.416671752929688" style="fill: none; stroke: #000; stroke-miterlimit: 10;"></line>
      <polygon points="372.537841796869543 479.405731201171875 379.446044921869543 475.416671752929688 372.537841796869543 471.427597045898438 372.537841796869543 479.405731201171875"></polygon>
    </g>
    <g>
      <line x1="520.946044921869543" y1="475.416671752929688" x2="564.205078125" y2="475.416671752929688" style="fill: none; stroke: #000; stroke-miterlimit: 10;"></line>
      <polygon points="563.037841796869543 479.405731201171875 569.946044921869543 475.416671752929688 563.037841796869543 471.427597045898438 563.037841796869543 479.405731201171875"></polygon>
    </g>
    <g>
      <line x1="719.946044247890313" y1="310.41861979166606" x2="759.946044247890313" y2="310.41861979166606" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 3px;"></line>
      <g>
        <line x1="719.946044921869543" y1="310.418609619140625" x2="754.205078125" y2="310.418609619140625" style="fill: none; stroke: #000; stroke-miterlimit: 10;"></line>
        <polygon points="753.037841796869543 314.407684326171875 759.946044921869543 310.418609619140625 753.037841796869543 306.4295654296875 753.037841796869543 314.407684326171875"></polygon>
      </g>
    </g>
    <g>
      <line x1="639.946044247890313" y1="448.923619120623698" x2="639.946044247890313" y2="363.269130743694404" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 4px;"></line>
      <g>
        <line x1="639.946044921869543" y1="448.923614501953125" x2="639.946044921869543" y2="369.010101318359375" style="fill: none; stroke: #000; stroke-miterlimit: 10;"></line>
        <polygon points="643.93505859375 370.17730712890625 639.946044921869543 363.269134521484375 635.95703125 370.17730712890625 643.93505859375 370.17730712890625"></polygon>
      </g>
    </g>
    <g>
      <line x1="259.946044247890313" y1="448.923619120623698" x2="259.946044247890313" y2="355.775123499730398" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 4px;"></line>
      <g>
        <line x1="259.946044921869543" y1="448.923614501953125" x2="259.946044921869543" y2="361.51611328125" style="fill: none; stroke: #000; stroke-miterlimit: 10;"></line>
        <polygon points="263.93505859375 362.68328857421875 259.946044921869543 355.775115966796875 255.95703125 362.68328857421875 263.93505859375 362.68328857421875"></polygon>
      </g>
    </g>
    <g>
      <line x1="159.265747070308862" y1="325.562744140625" x2="183.524780273430224" y2="325.562744140625" style="fill: none; stroke: #000; stroke-miterlimit: 10;"></line>
      <polygon points="182.357543945308862 329.55181884765625 189.265747070308862 325.562744140625 182.357543945308862 321.57366943359375 182.357543945308862 329.55181884765625"></polygon>
    </g>
    <g>
      <line x1="330.260689669210478" y1="325.562747341786235" x2="558.395877687838947" y2="325.562747341786235" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 3px;"></line>
      <g>
        <line x1="330.2607421875" y1="325.562744140625" x2="552.654907226558862" y2="325.562744140625" style="fill: none; stroke: #000; stroke-miterlimit: 10;"></line>
        <polygon points="551.487670898430224 329.55181884765625 558.395874023430224 325.562744140625 551.487670898430224 321.57366943359375 551.487670898430224 329.55181884765625"></polygon>
      </g>
    </g>
    <g>
      <polyline points="89.265705551259089 295.562747341786235 89.265705551259089 241.260370890298873 558.946044247890313 241.260370890298873" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 3px;"></polyline>
      <g>
        <polyline points="89.265747070308862 295.562744140625 89.265747070308862 241.260375976561591 553.205078125 241.260375976561591" style="fill: none; stroke: #000; stroke-miterlimit: 10;"></polyline>
        <polygon points="552.037841796869543 245.249420166015625 558.946044921869543 241.260375976561591 552.037841796869543 237.27130126953125 552.037841796869543 245.249420166015625"></polygon>
      </g>
    </g>
    <g>
      <polyline points="450.446044247890313 79.58333333333394 450.446044247890313 211.260370890298873 558.946044247890313 211.260370890298873" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 3px;"></polyline>
      <g>
        <polyline points="450.446044921869543 79.58331298828125 450.446044921869543 211.260375976561591 553.205078125 211.260375976561591" style="fill: none; stroke: #000; stroke-miterlimit: 10;"></polyline>
        <polygon points="552.037841796869543 215.249420166015625 558.946044921869543 211.260375976561591 552.037841796869543 207.27130126953125 552.037841796869543 215.249420166015625"></polygon>
      </g>
    </g>
    <g>
      <polyline points="450.446044247890313 211.260370890298873 450.446044247890313 295.562747341786235 558.395877687838947 295.562747341786235" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 3px;"></polyline>
      <g>
        <polyline points="450.446044921869543 211.260375976561591 450.446044921869543 295.562744140625 552.654907226558862 295.562744140625" style="fill: none; stroke: #000; stroke-miterlimit: 10;"></polyline>
        <polygon points="551.487670898430224 299.55181884765625 558.395874023430224 295.562744140625 551.487670898430224 291.57366943359375 551.487670898430224 299.55181884765625"></polygon>
      </g>
    </g>
  </g>
  <g>
    <g>
      <text transform="translate(720.252929687494543 552.091476440429688)" style="font-family: Roboto-Regular, Roboto; font-size: 14px;"><tspan x="0" y="0">Qualcomm </tspan></text>
      <rect x="700.001919519783769" y="540" width="16" height="16" rx="2" ry="2" style="fill: #2a2aea;"></rect>
      <rect x="677.846435546869543" y="540" width="16" height="16" rx="2" ry="2" style="fill: none; stroke: #2a2aea; stroke-miterlimit: 10; stroke-width: 1.5px;"></rect>
    </g>
    <g>
      <text transform="translate(818.834716796869543 552.091476440429688)" style="font-family: Roboto-Regular, Roboto; font-size: 14px;"><tspan x="0" y="0">Open source</tspan></text>
      <rect x="798.583700932642387" y="540" width="16" height="16" rx="2" ry="2" style="fill: #007884;"></rect>
    </g>
  </g>
</svg>

The following tables provide information on pad templates and element properties of
            qtismartvencbin. For use cases, see  [Smart codec](https://docs.qualcomm.com/doc/80-70022-50/topic/smart-codec.html).

## Pad configuration

| Pad Name | Capabilities | Capabilities | Capabilities |
| --- | --- | --- | --- |
| SINK template: 'sink'<br><ul class="ul" id="qtismartvencbin__ul_xgy_pmm_qdc"><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 | {NV12} |
| SINK template: 'sink'<br><ul class="ul" id="qtismartvencbin__ul_xgy_pmm_qdc"><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 | width | [ 1, 2147483647] |
| SINK template: 'sink'<br><ul class="ul" id="qtismartvencbin__ul_xgy_pmm_qdc"><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 | height | [ 1, 2147483647] |
| SINK template: 'sink'<br><ul class="ul" id="qtismartvencbin__ul_xgy_pmm_qdc"><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 | height | [ 0/1, 2147483647/1] |
| SINK template: 'sink'<br><ul class="ul" id="qtismartvencbin__ul_xgy_pmm_qdc"><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(memory:GBM) | format | {NV12} |
| SINK template: 'sink'<br><ul class="ul" id="qtismartvencbin__ul_xgy_pmm_qdc"><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(memory:GBM) | width | [ 1, 2147483647] |
| SINK template: 'sink'<br><ul class="ul" id="qtismartvencbin__ul_xgy_pmm_qdc"><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(memory:GBM) | height | [ 1, 2147483647] |
| SINK template: 'sink'<br><ul class="ul" id="qtismartvencbin__ul_xgy_pmm_qdc"><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(memory:GBM) | height | [ 0/1, 2147483647/1] |
| SINK template: 'sink\_ctrl'<br><ul class="ul" id="qtismartvencbin__ul_ygy_pmm_qdc"><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 | {NV12} |
| SINK template: 'sink\_ctrl'<br><ul class="ul" id="qtismartvencbin__ul_ygy_pmm_qdc"><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 | width | [ 1, 2147483647] |
| SINK template: 'sink\_ctrl'<br><ul class="ul" id="qtismartvencbin__ul_ygy_pmm_qdc"><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 | height | [ 1, 2147483647] |
| SINK template: 'sink\_ctrl'<br><ul class="ul" id="qtismartvencbin__ul_ygy_pmm_qdc"><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 | framerate | [ 0/1, 2147483647/1 ] |
| SINK template: 'sink\_ctrl'<br><ul class="ul" id="qtismartvencbin__ul_ygy_pmm_qdc"><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(memory:GBM) | format | {NV12} |
| SINK template: 'sink\_ctrl'<br><ul class="ul" id="qtismartvencbin__ul_ygy_pmm_qdc"><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(memory:GBM) | width | [ 1, 2147483647] |
| SINK template: 'sink\_ctrl'<br><ul class="ul" id="qtismartvencbin__ul_ygy_pmm_qdc"><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(memory:GBM) | height | [ 1, 2147483647] |
| SINK template: 'sink\_ctrl'<br><ul class="ul" id="qtismartvencbin__ul_ygy_pmm_qdc"><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(memory:GBM) | framerate | [ 0/1, 2147483647/1 ] |
| SINK template: 'sink\_ml'<br><ul class="ul" id="qtismartvencbin__ul_zgy_pmm_qdc"><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> | text/x-raw | format | {utf-8} |
| SRC template: 'src'<br><ul class="ul" id="qtismartvencbin__ul_ahy_pmm_qdc"><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-h264<br><br><br>                                <br>video/x-h265 | – | – |
|  |  |  |  |
|  |  |  |  |
|  |  |  |  |
|  |  |  |  |
|  |  |  |  |
|  |  |  |  |
|  |  |  |  |

## Element configuration

Table : Element properties of qtismartvencbin

| Property | Description |
| --- | --- |
| async-handling | The bin handles the asynchronous state changes.<br><ul class="ul" id="qtismartvencbin__ul_azn_tmm_qdc"><br>                                    <li class="li">flags: readable, writable</li><br><br>                                    <li class="li">Boolean. Default: false</li><br><br>                                </ul> |
| default-gop | The default GOP length.<br><ul class="ul" id="qtismartvencbin__ul_bzn_tmm_qdc"><br>                                    <li class="li">flags: readable, writable, changeable only in NULL or READY<br>                                        state</li><br><br>                                    <li class="li">Unsigned Integer. Range: 0 - 4294967295 Default: 30 </li><br><br>                                </ul> |
| encoder | The encoder to use (callable only in NULL state).<br><ul class="ul" id="qtismartvencbin__ul_czn_tmm_qdc"><br>                                    <li class="li">flags: readable, writable, changeable only in NULL or READY<br>                                        state</li><br><br>                                    <li class="li"><br>                                        <p class="p">Enum "GstBinEncoderType" Default: 0, "c2enc"</p><br><br>                                        <p class="p"> (0): c2enc - Codec2 encoder.</p><br><br>                                        <p class="p"> (1): omxenc - OMX encoder.</p><br><br>                                        <p class="p"> (2): v4l2h264enc - V4L2 H264 encoder</p><br><br>                                        <p class="p"> (3): v4l2h265enc - V4L2 H265 encoder</p><br><br>                                    </li><br><br>                                </ul> |
| levels-override | The override framerate levels. For example:`<br>                                        "LevelsOverride,fr_static=16,fr_low=4,fr_medium=2,fr_high=1;`"<br><ul class="ul" id="qtismartvencbin__ul_dzn_tmm_qdc"><br>                                    <li class="li">flags: readable, writable</li><br><br>                                    <li class="li">string. Default: null</li><br><br>                                </ul> |
| max-bitrate | The maximum bitrate in bits per second.<br><ul class="ul" id="qtismartvencbin__ul_ezn_tmm_qdc"><br>                                    <li class="li">flags: readable, writable, changeable only in NULL or READY<br>                                        state</li><br><br>                                    <li class="li">Unsigned Integer. Range: 0 - 4294967295 Default: 6000000<br>                                    </li><br><br>                                </ul> |
| max-gop | The maximum GOP length.<br><ul class="ul" id="qtismartvencbin__ul_fzn_tmm_qdc"><br>                                    <li class="li">flags: readable, writable, changeable only in NULL or READY<br>                                        state</li><br><br>                                    <li class="li">Unsigned Integer. Range: 0 - 4294967295 Default: 600</li><br><br>                                </ul> |
| message-forward | Forwards all children messages.<br><ul class="ul" id="qtismartvencbin__ul_gzn_tmm_qdc"><br>                                    <li class="li">flags: readable, writable</li><br><br>                                    <li class="li">Boolean. Default: false</li><br><br>                                </ul> |
| name | The name of the object.<br><ul class="ul" id="qtismartvencbin__ul_hzn_tmm_qdc"><br>                                    <li class="li">flags: readable, writable, 0x2000</li><br><br>                                    <li class="li">String. Default: "videoencbin0"</li><br><br>                                </ul> |
| parent | The parent of the object.<br><ul class="ul" id="qtismartvencbin__ul_izn_tmm_qdc"><br>                                    <li class="li">flags: readable, writable, 0x2000</li><br><br>                                    <li class="li">Object of type "GstObject"</li><br><br>                                </ul> |
| roi-quality-cfg | The ROI quality configuration. For example:<br>                                        `"ROIQPs,car=2,person=1,tree=-2;"`<br><ul class="ul" id="qtismartvencbin__ul_jzn_tmm_qdc"><br>                                    <li class="li">flags: readable, writable</li><br><br>                                    <li class="li">String. Default: null</li><br><br>                                </ul> |
| smart-framerate | Enable/disable the smart framerate functionality.<br><ul class="ul" id="qtismartvencbin__ul_kzn_tmm_qdc"><br>                                    <li class="li">flags: readable, writable, changeable only in NULL or READY<br>                                        state</li><br><br>                                    <li class="li">Boolean. Default: true</li><br><br>                                </ul> |
| smart-gop | Enable/disable the smart GOP functionality.<br><ul class="ul" id="qtismartvencbin__ul_lzn_tmm_qdc"><br>                                    <li class="li">flags: readable, writable, changeable only in NULL or READY<br>                                        state</li><br><br>                                    <li class="li">Boolean. Default: true</li><br><br>                                </ul> |

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

Last Published: Feb 20, 2026

[Previous Topic
qtirtspbin](https://docs.qualcomm.com/bundle/publicresource/80-70022-50/topics/qtirtspbin.md) [Next Topic
Develop plugins using Qualcomm IM SDK](https://docs.qualcomm.com/bundle/publicresource/80-70022-50/topics/develop-plugins-for-sdk.md)