# qtibatch
Source: [https://docs.qualcomm.com/doc/80-70022-50/topic/qtibatch.html](https://docs.qualcomm.com/doc/80-70022-50/topic/qtibatch.html)
The qtibatch plugin uses frame aggregation techniques to group several audio/video
frames into one buffer for preprocessing. Batching can be done on a single stream (in which
case the batch size is 1) or in many parallel streams.
- The loaded model in the ML inferencing plugin downstream determines the batch
size.
- [GstCaps](https://gstreamer.freedesktop.org/documentation/gstreamer/gstcaps.html) shared the batch size with
upstream.
- When creating the pipeline, the input sources must be lower or equal to the batch
size. Inputs above the batch size are ignored.
- The plugin places the buffers from each source as separate [GstMemory](https://gstreamer.freedesktop.org/documentation/gstreamer/gstmemory.html#GstMemory) blocks along with their
corresponding batch index.
For example, source 0 at batch index 0 and source 1 at
batch index 1.
Figure : Gstbuffer workflow with qtibatch
## 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) → GstBatch
## Pad configuration
| Pad Name | Capabilities | Capabilities |
| --- | --- | --- |
| SINK template: 'sink\_%u'