# 自动切换 Linear 与 SHDR 模式

Note

本节仅适用于 QCS6490。

此功能支持在无需停止和启动摄像头会话的情况下，进行 Linear 和 SHDR v2 模式 pipeline 之间的动态切换。

此功能有助于防止在需要基于 Lux 值切换 SHDR 与 Linear 模式时中断视频会话。其还有助于减少 pipeline 切换延迟，因为 Pipeline（Linear 和 SHDR）在会话创建期间已预先初始化。在模式切换期间，将释放 pipeline 的硬件资源（传感器、IFE、IPE），然后获取并重新配置新 pipeline。

Note

此功能仅适用于 SHDR v2 和 Linear 模式的 Pipeline。未来的版本将可用于 SHDR v3 和 Linear 模式。

Note

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

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

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

在 GST 命令中使用 `vhdr=3` 可启用此功能。要启用该功能并在 Linear 和 SHDR 模式之间切换，请执行以下操作：

1. 运行 gst-camera-metadata-example 应用程序，该应用程序可以支持设置供应商标记以在 runtime 切换用例。例如：

gst-camera-metadata-example -p "qtiqmmfsrc name=camsrc camera=0 vhdr=3 ! \
        video/x-raw,format=NV12,width=3840,height=2160,framerate=30/1,\
        interlace-mode=progressive,colorimetry=bt601 ! queue ! v4l2h264enc capture-io-mode=4 \
        output-io-mode=5 ! queue ! h264parse ! mp4mux ! queue ! filesink location=/opt/mux4k.mp4"
        Copy to clipboard
2. 在应用程序中，选择 **(1) READY**。
3. 选择 **(3) PLAYING**。摄像头以 Linear 模式启动。
4. 选择 **(4) META**。显示以下菜单：

---------MENU---------
        (1)        video-metadata
        (2)        image-metadata
        (3)        static-metadata
        (4)        session-metadata
        Copy to clipboard
5. 选择 **(1) video-metadata**。显示以下菜单：

---------video-metadata---------
        (1)        List all available tags
        (2)        Dump all tags values in a file
        (3)        Dump custom tags values in a file
        (4)        Get a tag
        (5)        Set a tag
        Copy to clipboard
6. 选择 **(5) Set a tag**。
7. 此时将显示一个提示，提示用户输入以空格分隔的节名和标签名，不带引号。输入 `org.quic.camera.videoHDRmode modeType`。
8. 此时将显示设置该值的提示。输入 1 切换到 SHDR 模式。

    要在 Linear 和 SHDR 模式之间切换，则重复此过程并根据需要输入 1（SHDR 模式）和 0（Linear 模式）。

    要关闭摄像头，请选择 **(q) QUIT** 或按 **CTRL + C**。

    使用以下日志验证此功能：

    - Linear 模式

cam-server[1693]: CamX: [REQMAP]1693 2652 [CORE   ] camxsession.cpp:4811
        ProcessRequest() chiFrameNum: 0 <==> requestId: 1 <==> sequenceId: 0
        <==> CSLSyncId: 1 -- RealTimeFeatureZSLPreviewRawYUV_0
        Copy to clipboard

    - SHDR 模式：

cam-server[1693]: CamX: [REQMAP]1693 2652 [CORE   ] camxsession.cpp:4811
        ProcessRequest() chiFrameNum: 296 <==> requestId: 297 <==> sequenceId:
        296 <==> CSLSyncId: 297 -- RealTimeSHDR_0
        Copy to clipboard

Last Published: Jul 24, 2025

[Previous Topic
启用多个 ROI 流](https://docs.qualcomm.com/bundle/publicresource/80-70020-17SC/topics/enable-multiple-roi-streams.md) [Next Topic
摄像头故障排查](https://docs.qualcomm.com/bundle/publicresource/80-70020-17SC/topics/troubleshooting.md)