# qtismartvencbin 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. qtiqmmfsrc tee Encoded video Application Configurableparameter YUV full resolution(1080p or higher) YUV low resolution(1080p or lower) Preprocess Inference Postprocess AI pipeline Video control(Library) Video encodeplugin (qtic2venc) qtismartvencbin Smart parameters Qualcomm Open source **Figure : qtismartvencbin architecture** 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-80021-50/topic/smart-codec.html). ## Pad configuration | **Pad Name** | **Capabilities** | **Capabilities** | **Capabilities** | | --- | --- | --- | --- | |
SINK template: 'sink'
| video/x-raw | format | {NV12} | |
SINK template: 'sink'
| video/x-raw | width | [ 1, 2147483647] | |
SINK template: 'sink'
| video/x-raw | height | [ 1, 2147483647] | |
SINK template: 'sink'
| video/x-raw | height | [ 0/1, 2147483647/1] | |
SINK template: 'sink'
| video/x-raw(memory:GBM) | format | {NV12} | |
SINK template: 'sink'
| video/x-raw(memory:GBM) | width | [ 1, 2147483647] | |
SINK template: 'sink'
| video/x-raw(memory:GBM) | height | [ 1, 2147483647] | |
SINK template: 'sink'
| video/x-raw(memory:GBM) | height | [ 0/1, 2147483647/1] | |
SINK template: 'sink\_ctrl'
| video/x-raw | format | {NV12} | |
SINK template: 'sink\_ctrl'
| video/x-raw | width | [ 1, 2147483647] | |
SINK template: 'sink\_ctrl'
| video/x-raw | height | [ 1, 2147483647] | |
SINK template: 'sink\_ctrl'
| video/x-raw | framerate | [ 0/1, 2147483647/1 ] | |
SINK template: 'sink\_ctrl'
| video/x-raw(memory:GBM) | format | {NV12} | |
SINK template: 'sink\_ctrl'
| video/x-raw(memory:GBM) | width | [ 1, 2147483647] | |
SINK template: 'sink\_ctrl'
| video/x-raw(memory:GBM) | height | [ 1, 2147483647] | |
SINK template: 'sink\_ctrl'
| video/x-raw(memory:GBM) | framerate | [ 0/1, 2147483647/1 ] | | SINK template: 'sink\_ml'
| text/x-raw | format | {utf-8} | | SRC template: 'src'
| video/x-h264 video/x-h265 | – | – | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ## Element configuration Table : Element properties of qtismartvencbin | Property | Description | | --- | --- | | async-handling | The bin handles the asynchronous state changes.
| | default-gop | The default GOP length.
| | encoder | The encoder to use (callable only in NULL state).
| | levels-override | The override framerate levels. For example:"LevelsOverride,fr\_static=16,fr\_low=4,fr\_medium=2,fr\_high=1;"
| | max-bitrate | The maximum bitrate in bits per second.
| | max-gop | The maximum GOP length.
| | message-forward | Forwards all children messages.
| | name | The name of the object.
| | parent | The parent of the object.
| | roi-quality-cfg | The ROI quality configuration. For example: "ROIQPs,car=2,person=1,tree=-2;"
| | smart-framerate | Enable/disable the smart framerate functionality.
| | smart-gop | Enable/disable the smart GOP functionality.
| Last Published: Mar 26, 2026 [Previous Topic qtirtspbin](https://docs.qualcomm.com/bundle/publicresource/80-80021-50/topics/qtirtspbin.md) [Next Topic Develop plugins using Qualcomm IM SDK](https://docs.qualcomm.com/bundle/publicresource/80-80021-50/topics/develop-plugins-for-sdk.md) Source: [https://docs.qualcomm.com/doc/80-80021-50/topic/qtismartvencbin.html](https://docs.qualcomm.com/doc/80-80021-50/topic/qtismartvencbin.html)