# Advanced feature concurrences

Note

This section is only applicable for QCS6490.

This section describes the possible concurrency use cases for running SHDR, EIS, and LDC.

The following are the combinations available to run SHDR, EIS, and LDC in concurrency:

| GST command option | Description |
| --- | --- |
| `vhdr=2 eis=1` | SHDR v3 applied on all streams. EIS applied on first stream |
| `vhdr=2 eis=2` | SHDR v3 and EIS applied on two streams |
| `vhdr=2 ldc=1` | SHDR v3+ LDC applied on all (1 or 2) streams |
| `vhdr=1 ldc=1` | SHDR v2+ LDC applied on all (1 or 2) streams |
| `eis=1 vhdr=2 ldc=1` | SHDRV3 applied on two streams. EIS+LDC applied on first stream |
| `eis=2 vhdr=2 ldc=1` | SHDRV3+EIS+LDC applied on two streams |

Note

The current release has a stability issue with SHDR v3 and EIS concurrency use cases. The GST command isn’t terminating after pressing Ctrl+C. A device reboot is required to run the camera the next time.

Note

Connect to the device console using SSH. See [How To SSH?](https://docs.qualcomm.com/bundle/publicresource/topics/80-70020-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

## SHDR v3 and EIS concurrency use case

SHDR and EIS concurrency is enabled for SHDR v3 only. This feature uses SHDR v3 sensor mode and does SHDR v3 processing first followed by EIS processing.

Use the following GStreamer command to enable the SHDR v3+EIS single stream use case:

gst-launch-1.0 -e qtiqmmfsrc name=camsrc eis=1 vhdr=2 ! video/x-raw,format=NV12,\
    width=1920,height=1080,framerate=30/1 ! v4l2h264enc capture-io-mode=4 output-io-mode=5 \
    extra-controls="controls,video_bitrate=6000000,video_bitrate_mode=0;" ! h264parse ! \
    mp4mux ! filesink location=/opt/cam_1080p.mp4
    Copy to clipboard

Verify the SHDR v3 + EIS single stream use case using the following logs:

cam-server[882]: [INFO]: RecorderCameraContext : OpenCamera: EIS on single stream is ON..
    cam-server[882]: CamX: [ INFO]882 975 [CHI   ] camxchinodeeisdgv26.cpp:1346 Initialize() m_nodeCaps 131072
    cam-server[882]: CamX: [CORE_CFG]882 1877 [CORE      ] camxpipeline.h:3024 SetPipelineStatus() RealTimeYUVSHDREISIOT_0 status is now PipelineStatus::STREAM_ON
    Copy to clipboard

Use the following GStreamer command to enable the SHDR v3 + EIS on two streams use case:

gst-launch-1.0 -e qtiqmmfsrc name=camsrc eis=2 vhdr=2 video_0::type=preview ! \
    video/x-raw,format= NV12,width=1920,height=1080,framerate=30/1 ! \
    v4l2h264enc capture-io-mode=4 output-io-mode=5 extra-controls="controls,video_bitrate=6000000,\
    video_bitrate_mode=0;" ! h264parse ! mp4mux ! filesink location=/opt/cam_prev.mp4 \
    camsrc. ! video/x-raw,format=NV12,width=1280,height=720,\
    framerate=30/1,interlace-mode=progressive,colorimetry=bt601 ! v4l2h264enc capture-io-mode=4 \
    output-io-mode=5 extra-controls="controls,video_bitrate=6000000,video_bitrate_mode=0;" ! \
    h264parse ! mp4mux ! filesink location=/opt/cam_vid.mp4
    Copy to clipboard

Verify SHDR v3 + EIS on two streams use case using the following logs:

cam-server[882]: [INFO]: RecorderCameraContext : OpenCamera: EIS on dual stream is ON..
    cam-server[882]: CamX: [ INFO]882 952 [CHI   ] camxchinodeeisdgv26.cpp:1346 Initialize() m_nodeCaps 131072
    cam-server[882]: CamX: [CORE_CFG]882 2058 [CORE      ] camxpipeline.h:3024 SetPipelineStatus() RealTimeYUVSHDREISIOT_0 status is now PipelineStatus::STREAM_ON
    Copy to clipboard

## SHDR v3 and LDC concurrency use case

This feature uses SHDR v3 sensor mode and does SHDR v3 processing followed by LDC processing.

Use the following GStreamer command to enable this use case:

gst-launch-1.0 -e qtiqmmfsrc name=camsrc vhdr=2 ldc=1 ! video/x-raw,\
    format=NV12,width=1920,height=1080,framerate=30/1 ! v4l2h264enc capture-io-mode=4 output-io-mode=5 \
    extra-controls="controls,video_bitrate=6000000,video_bitrate_mode=0;" ! h264parse ! mp4mux ! \
    filesink location=/opt/cam_1080p.mp4
    Copy to clipboard

Verify this use case is selected using the following logs:

cam-server[2089]: [INFO]: RecorderCameraContext : OpenCamera: EIS is disabled cam-server[2089]: CamX: [ INFO]2089 2090 [CHI  ]
    camxchinodeeisdgv26.cpp:1346 Initialize() m_nodeCaps 524288
    cam-server[2089]: CamX: [CORE_CFG]2089 2324 [CORE    ] camxpipeline.h:3024 SetPipelineStatus() RealTimeYUVSHDREISIOT_0 status is now PipelineStatus::STREAM_ON
    Copy to clipboard

## SHDR v2 and LDC concurrency use case

This feature uses SHDR v2 sensor mode and does SHDR v2 processing followed by LDC processing.

Use the following GStreamer command to enable this use case:

gst-launch-1.0 -e qtiqmmfsrc name=camsrc vhdr=1 ldc=1 ! video/x-raw,\
    format=NV12,width=1920,height=1080,framerate=30/1 ! v4l2h264enc capture-io-mode=4 output-io-mode=5 \
    extra-controls="controls,video_bitrate=6000000,video_bitrate_mode=0;" ! h264parse ! mp4mux ! \
    filesink location=/opt/cam_1080p.mp4
    Copy to clipboard

Verify this use case is selected using the following logs:

cam-server[2358]: [INFO]: RecorderCameraContext : OpenCamera: EIS is disabled cam-server[2358]: CamX: [ INFO]2358 2366 [CHI  ]
    camxchinodeeisdgv26.cpp:1346 Initialize() m_nodeCaps 524288
    cam-server[2358]: CamX: [CORE_CFG]2358 2527 [CORE    ] camxpipeline.h:3024 SetPipelineStatus() RealTimeSHDRIOTLDC_0 status is now PipelineStatus::STREAM_ON
    Copy to clipboard

## SHDR v3, EIS, and LDC concurrency use case

SHDR, EIS, and LDC concurrency is enabled with SHDR v3. This feature uses SHDR v3 sensor mode and does SHDR v3 processing followed by EIS and LDC processing.

Use the following GStreamer command to enable the SHDR v3, EIS, and LDC concurrency use case on a single stream:

gst-launch-1.0 -e qtiqmmfsrc name=camsrc eis=1 vhdr=2 ldc=1 ! video/x-raw,\
    format=NV12,width=1920,height=1080,framerate=30/1 ! v4l2h264enc capture-io-mode=4 output-io-mode=5 \
    extra-controls="controls,video_bitrate=6000000,video_bitrate_mode=0;" ! h264parse ! mp4mux ! \
    filesink location=/opt/cam_1080p.mp4
    Copy to clipboard

Verify the SHDR v3, EIS, and LDC concurrency on a single stream use case using the following logs:

cam-server[2555]: [INFO]: RecorderCameraContext : OpenCamera: EIS on single stream is ON..
    cam-server[2555]: CamX: [ INFO]2555 2560 [CHI        ]
    camxchinodeeisdgv26.cpp:1346 Initialize() m_nodeCaps 262144
    cam-server[2555]: CamX: [CORE_CFG]2555 2764 [CORE    ] camxpipeline.h:3024
    SetPipelineStatus() RealTimeYUVSHDREISIOT_0 status is now PipelineStatus::STREAM_ON
    Copy to clipboard

Use the following GStreamer command to enable the SHDR v3, EIS, and LDC concurrency use case on two streams:

gst-launch-1.0 -e qtiqmmfsrc name=camsrc eis=2 vhdr=2 ldc=1 video_0::type=preview ! \
    video/x-raw,format=NV12,width=1920,height=1080,framerate=30/1 ! \
    v4l2h264enc capture-io-mode=4 output-io-mode=5 extra-controls="controls,video_bitrate=6000000,\
    video_bitrate_mode=0;" ! h264parse ! mp4mux ! filesink location=/opt/cam_prev.mp4 \
    camsrc. ! video/x-raw,format=NV12,width=1280,height=720,\
    framerate=30/1,interlace-mode=progressive,colorimetry=bt601 ! v4l2h264enc capture-io-mode=4 \
    output-io-mode=5 extra-controls="controls,video_bitrate=6000000,video_bitrate_mode=0;" ! \
    h264parse ! mp4mux ! filesink location=/opt/cam_vid.mp4
    Copy to clipboard

Verify the SHDR v3, EIS, and LDC concurrency on two streams use case using the following logs:

cam-server[907]: [INFO]: RecorderCameraContext : OpenCamera: EIS on dual stream is ON..
    cam-server[907]: CamX: [ INFO]907 984 [CHI   ] camxchinodeeisdgv26.cpp:1346 Initialize() m_nodeCaps 262144
    cam-server[907]: CamX: [CORE_CFG]907 1586 [CORE      ] camxpipeline.h:3024 SetPipelineStatus() RealTimeYUVSHDREISIOT_0 status is now PipelineStatus::STREAM_ON
    Copy to clipboard

Last Published: Jul 02, 2025

[Previous Topic
Enable EIS and LDC](https://docs.qualcomm.com/bundle/publicresource/80-70020-17/topics/enable-eis-and-ldc.md) [Next Topic
Enable multiple ROI streams](https://docs.qualcomm.com/bundle/publicresource/80-70020-17/topics/enable-multiple-roi-streams.md)