# SHDR、EIS 和 LDC 并发用例

Source: [https://docs.qualcomm.com/doc/80-70015-17SC/topic/shdr_eis_and_ldc_concurrency_use_cases_public.html](https://docs.qualcomm.com/doc/80-70015-17SC/topic/shdr_eis_and_ldc_concurrency_use_cases_public.html)

本节介绍运行 SHDR、EIS 和 LDC 的可能并发用例。

以下是可用于并发运行 SHDR、EIS 和 LDC 的组合：

| GST 命令选项 | 说明 |
| --- | --- |
| `vhdr=2 eis=1` | SHDR v3 应用于所有流。EIS 应用于第一个流 |
| `vhdr=2 eis=2` | SHDR v3 和 EIS 应用于两个流 |
| `vhdr=2 ldc=1` | SHDR v3 + LDC 应用于所有流（1 或 2） |
| `vhdr=1 ldc=1` | SHDR v2 + LDC 应用于所有流（1 或 2） |
| `eis=1 vhdr=2 ldc=1` | SHDRV3 应用于两个流。EIS + LDC 应用于第一流 |
| `eis=2 vhdr=2 ldc=1` | SHDRV3 + EIS + LDC 应用于两个流 |

Note: 使用 SSH 连接到设备控制台。相关说明，请参见 [如何使用 SSH？](https://docs.qualcomm.com/bundle/publicresource/topics/80-70015-254/how_to.html#use-ssh)

要收集日志，请在设备中运行以下命令：

    # journalctl -f > /opt/log.txtCopy to clipboard

## SHDR v3 和 EIS 并发用例

SHDR 和 EIS 并发仅在 SHDR v3 中启用。此功能使用 SHDR v3 传感器模式，先进行 SHDR v3 处理，然后进行 EIS 处理。

使用以下 GStreamer 命令启用 SHDR v3+EIS 单流用例：

    gst-launch-1.0 -e qtiqmmfsrc name=camsrc eis=1 vhdr=2 ! video/x-raw\(memory:GBM\),format=NV12,\
    width=1920,height=1080,framerate=30/1 ! v4l2h264enc capture-io-mode=5 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

使用以下日志验证 SHDR v3 + EIS 单流用例：

    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_ONCopy to clipboard

使用以下 GStreamer 命令启用 SHDR v3 + EIS 双流用例：

    gst-launch-1.0 -e qtiqmmfsrc name=camsrc eis=2 vhdr=2 video_0::type=preview ! \
    video/x-raw\(memory:GBM\),format=NV12,width=1920,height=1080,framerate=30/1 ! \
    v4l2h264enc capture-io-mode=5 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\(memory:GBM\),format=NV12,width=1280,height=720,\
    framerate=30/1,interlace-mode=progressive,colorimetry=bt601 ! v4l2h264enc capture-io-mode=5 \
    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

使用以下日志验证 SHDR v3 + EIS 双流用例：

    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 和 LDC 并发用例

此功能使用 SHDR v3 传感器模式，先进行 SHDR v3 处理，然后进行 LDC 处理。

使用以下 GStreamer 命令启用此用例：

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

使用以下日志验证是否选择了此用例：

    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 和 LDC 并发用例

此功能使用 SHDR v2 传感器模式，先进行 SHDR v2 处理，然后进行 LDC 处理。

使用以下 GStreamer 命令启用此用例：

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

使用以下日志验证是否选择了此用例：

    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 和 LDC 并发用例

SHDR、EIS 和 LDC 并发在 SHDR v3 中启用。此功能使用 SHDR v3 传感器模式，先进行 SHDR v3 处理，然后进行 EIS 和 LDC 处理。

使用以下 GStreamer 命令启用 SHDR v3、EIS 和 LDC 并发单流用例：

    gst-launch-1.0 -e qtiqmmfsrc name=camsrc eis=1 vhdr=2 ldc=1 ! video/x-raw\(memory:GBM\),\
    format=NV12,width=1920,height=1080,framerate=30/1 ! v4l2h264enc capture-io-mode=5 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

使用以下日志验证 SHDR v3、EIS 和 LDC 并发单流用例：

    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

使用以下 GStreamer 命令启用 SHDR v3、EIS 和 LDC 并发双流用例：

    gst-launch-1.0 -e qtiqmmfsrc name=camsrc eis=2 vhdr=2 ldc=1 video_0::type=preview ! \
    video/x-raw\(memory:GBM\),format=NV12,width=1920,height=1080,framerate=30/1 ! \
    v4l2h264enc capture-io-mode=5 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\(memory:GBM\),format=NV12,width=1280,height=720,\
    framerate=30/1,interlace-mode=progressive,colorimetry=bt601 ! v4l2h264enc capture-io-mode=5 \
    output-io-mode=5 extra-controls="controls,video_bitrate=6000000,video_bitrate_mode=0;" ! \
    h264parse ! mp4mux ! filesink location=/opt/cam_vid.mp4Copy to clipboard

使用以下日志验证 SHDR v3、EIS 和 LDC 并发双流用例：

    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

**Parent Topic:** [高级摄像头功能](https://docs.qualcomm.com/doc/80-70015-17SC/topic/advanced_camera_features.html)

Last Published: Dec 06, 2024

[Previous Topic
EIS 和 LDC 用例](https://docs.qualcomm.com/bundle/publicresource/80-70015-17SC/topics/eis_and_ldc_use_cases_public.md) [Next Topic
来自单摄像头输入流的多个 ROI 流](https://docs.qualcomm.com/bundle/publicresource/80-70015-17SC/topics/multiple_roi_streams_from_single_camera_input_stream_public.md)