# Enable multiple ROI streams

Note

This section is only applicable for QCS6490.

This is an advanced camera control feature that allows the user to get multiple ROI streams from a single camera with each stream showing a different ROI from the full FOV.
It supports up to three cropped ROI streams and one full ROI stream.

In case of three ROIs, the app sends five streams to configure, with one full FOV output stream, one input stream, and three ROI output streams.
The real-time pipeline produces the full FOV image. The application receives the full FOV image and submits the full FOV buffer back to the camera reprocess pipeline as an input image.
The reprocess pipeline generates up to three ROI images from the full FOV image.

Note

Connect to the device console using SSH. See [How To SSH?](https://docs.qualcomm.com/bundle/publicresource/topics/80-80022-254/how_to.html#use-ssh) for instructions.

To collect the log, run the following command on the device:

# journalctl -f > /opt/log.txt
    Copy to clipboard

To verify the multiple ROI feature:

1. Connect an HDMI monitor to the device.
2. Run the following GStreamer command:

gst-pipeline-app qtivcomposer name=mixer sink_0::position="<0, 0>" sink_0::dimensions="<960, 540>" \
        sink_1::position="<960, 0>" sink_1::dimensions="<960, 540>" \
        sink_2::position="<0, 540>" sink_2::dimensions="<960, 540>" \
        sink_3::position="<960, 540>" sink_3::dimensions="<960, 540>" mixer. ! queue ! \
        waylandsink qos=false sync=false fullscreen=true \
        qtiqmmfsrc input-roi-enable=true video_0::type=preview video_1::type=preview \
        video_2::type=preview video_3::type=preview video_0::reprocess-enable=true \
        name=camsrc ! video/x-raw,format=NV12,width=1920,height=1080,framerate=30/1 ! queue ! mixer. \
        camsrc. ! video/x-raw,format=NV12,width=1920,height=1080,framerate=30/1 ! queue ! mixer. \
        camsrc. ! video/x-raw,format=NV12,width=1920,height=1080,framerate=30/1 ! queue ! mixer. \
        camsrc. ! video/x-raw,format=NV12,width=1920,height=1080,framerate=30/1 ! queue ! mixer.
        Copy to clipboard
3. Select **(1) READY**.
4. Select **(3) PLAYING**. Press **Enter**.
5. Select **(p) Plugin Mode**.
6. Select (**12) camsrc**. You should see four preview streams with Full FOV.
7. Select **(32) input-roi-info**.
8. Enter the following input:

<1920, 0, 1920, 1080, 0, 1080, 1920, 1080, 0, 0, 1920, 1080>
        Copy to clipboard

You should see one full FOV and three ROI streams on HDMI.

To close the camera, select **(b) BACK** and then **(q) QUIT**.

Check the following UMD logs to verify multiple ROI pipeline is selected:

cam-server[2218]: CamX: [CORE_CFG]2218 2368 [CORE   ] camxpipeline.h:3024 SetPipelineStatus() ZSLReprocessYuvToYuvMultiRoIStreams_0 status is now PipelineStatus::STREAM_ON
    Copy to clipboard

Note

The total bandwidth for the Full FOV stream + ROI streams needs to be less than 4K, which is the max capability of the QCS6490 chipset.

Last Published: May 26, 2026

[Previous Topic
Advanced feature concurrences](https://docs.qualcomm.com/bundle/publicresource/80-80022-17/topics/advanced-feature-concurrences.md) [Next Topic
Switch linear vs. SHDR mode automatically](https://docs.qualcomm.com/bundle/publicresource/80-80022-17/topics/auto-linear-vs-shdr-mode-switch.md)