4. HDR 调试环境搭建:高通 QPST 工具安装、ADB 连接与日志抓取、CHI 架构配置文件路径说明

HDR 多帧融合调试的第一步是搭建稳定、可复现的调试环境。本章将围绕高通平台 Camera 调试的三大基础环节展开:QPST 工具链安装、ADB 连接与日志抓取、CHI 架构配置文件路径说明。掌握这些环境搭建技能,是后续进行参数调优和效果验证的前提。

环境准备清单: 一台 Windows 主机(推荐 Win10 64 位)、一台高通骁龙平台调试机(已解锁 bootloader)、一根可靠的数据线、目标机已开启 USB 调试模式。

4.1 高通 QPST 工具安装与配置

QPST(Qualcomm Product Support Tool)是高通官方提供的底层通信与调试工具集,用于读写手机 EFS 分区、备份 NV 项、抓取 Modem 日志等。在 HDR 调试中,QPST 主要用于确认设备连接状态和备份关键校准数据。

4.1.1 安装步骤

  1. 下载 QPST 安装包:从高通支持门户获取 QPST_2.7.496 或更高版本,确保与目标芯片平台兼容。
  2. 以管理员身份运行安装程序:右键点击 QPST_2.7.496.exe → 选择“以管理员身份运行”。
  3. 选择安装路径:默认路径为 C:\Program Files (x86)\Qualcomm\QPST,建议保持默认。
  4. 安装驱动:安装过程中会自动弹出驱动安装向导,勾选“Qualcomm USB Serial Driver”并完成安装。
  5. 重启主机:安装完成后重启 Windows,确保驱动加载生效。

4.1.2 连接验证

将调试机通过 USB 连接至主机,在设备管理器中查看端口信息:

设备管理器条目 说明
Ports (COM & LPT) → Qualcomm HS-USB Diagnostics 9091 (COMx) 诊断端口,QPST 通过此端口与设备通信
Ports (COM & LPT) → Qualcomm HS-USB NMEA 9091 (COMy) NMEA 端口,用于 GPS 相关调试
Modems → Qualcomm HS-USB Modem 9091 Modem 端口,用于网络相关调试

打开 QPST Configuration 工具,若在“Active Phones”列表中看到设备序列号,则说明连接成功。

常见问题: 若设备管理器中未出现诊断端口,请检查数据线是否支持数据传输、是否已安装高通 USB 驱动(可从 QPST 安装目录下的 Drivers 文件夹手动安装)。
QPST 工具连接流程 调试机 (USB 连接) Windows 主机 QPST 驱动层 QPST 应用层 关键说明: 1. 调试机需进入 Download 模式或正常开机状态,QPST 才能识别诊断端口。 2. 驱动层负责将 USB 虚拟串口映射为 COM 端口,应用层通过 COM 端口下发指令。 3. 若连接失败,优先检查驱动版本与设备管理器中的端口号。 4. QPST 主要用于 NV 备份与恢复,HDR 参数调试不直接依赖 QPST,但环境验证必不可少。

4.2 ADB 连接与日志抓取

ADB(Android Debug Bridge)是 Android 调试的核心工具,在 HDR 调试中用于抓取 Camera 日志、推送配置文件、执行调试命令。高通平台 Camera 日志主要输出在 logcat 和 kernel log 中。

4.2.1 ADB 环境配置

  • 下载 Platform Tools:从 Android 开发者官网获取 platform-tools-latest-windows.zip,解压到 C:\adb。
  • 添加环境变量:将 C:\adb 添加到系统 PATH 中,方便在任意路径下使用 adb 命令。
  • 验证安装:打开 CMD 或 PowerShell,输入 adb version,若显示版本号则安装成功。

4.2.2 连接设备

  1. 在调试机上开启“开发者选项”和“USB 调试”。
  2. 使用数据线连接主机,在调试机上确认允许 USB 调试。
  3. 在主机端执行 adb devices,若显示设备序列号且状态为 device,则连接成功。
注意: 若状态显示 unauthorized,请检查调试机屏幕是否弹出授权弹窗;若显示 offline,请重新插拔数据线或重启 adb 服务(adb kill-server 后再 adb start-server)。

4.2.3 HDR 调试日志抓取

高通 Camera 日志主要涉及以下三类:

日志类型 抓取命令 关键 TAG
Camera 框架日志 adb logcat -c && adb logcat -v threadtime > camera_log.txt CamX, CHIUSECASE, Node
HAL 层日志 adb logcat -b main -s "CamX" -v threadtime > hal_log.txt CamX, IFE, IPE
Kernel 日志 adb shell dmesg -w > kernel_log.txt cam_sensor, msm_camera

在抓取日志前,建议先执行 adb logcat -c 清空旧日志,然后复现 HDR 场景(如逆光拍照),结束后按 Ctrl+C 停止抓取。

ADB 日志抓取流程 启动 logcat 清空旧日志 复现 HDR 场景 停止抓取 分析日志:搜索关键 TAG 与时间戳 日志分析技巧: 关注 CamX 日志中的 HDR、MFSR、MultiFrame 关键字,以及 CHIUSECASE 中的 UsecaseId,可快速定位多帧融合执行路径。

4.3 CHI 架构配置文件路径说明

高通 Camera CHI(Camera Hardware Interface)架构下,HDR 多帧融合参数以 XML/JSON 配置文件形式存储在设备文件系统中。理解配置文件路径结构,是进行参数修改和效果调试的基础。

4.3.1 配置文件根路径

高通 Camera 配置文件通常位于以下路径:

/vendor/etc/camera/camxoverridesettings.txt
/vendor/etc/camera/chiConfig.xml
/vendor/etc/camera/

其中 camxoverridesettings.txt 是全局覆盖设置文件,chiConfig.xml 是 CHI 架构的核心配置文件,定义了 Usecase、Pipeline、Node 等关键元素。

4.3.2 HDR 多帧融合相关文件

文件名 路径示例 说明
chiConfig.xml /vendor/etc/camera/chiConfig.xml 定义 Usecase 与 Pipeline 拓扑,HDR 多帧 Usecase 在此注册
camxoverridesettings.txt /vendor/etc/camera/camxoverridesettings.txt 全局参数覆盖,可临时修改 HDR 使能、帧数、融合模式等
tuning.xml /vendor/etc/camera/tuning/tuning.xml 3A 与 ISP 调优参数,包含 HDR 曝光策略
sensor_specific.xml /vendor/etc/camera/sensor/sensor_specific.xml 传感器特定配置,如 HDR 模式切换时序

4.3.3 配置文件推送与权限

在调试过程中,经常需要将修改后的配置文件推送到设备中:

adb root
adb remount
adb push chiConfig.xml /vendor/etc/camera/chiConfig.xml
adb shell chmod 644 /vendor/etc/camera/chiConfig.xml
adb reboot
提示: 修改 camxoverridesettings.txt 后无需重启 Camera HAL,执行 adb shell pkill -f cameraserver 即可让新配置生效,适合快速迭代调试。
CHI 配置文件层级结构 /vendor/etc/camera/ chiConfig.xml camxoverridesettings.txt tuning/ sensor/ tuning.xml sensor_specific.xml 配置文件修改注意事项: 1. 修改前务必备份原始文件,避免设备变砖。 2. chiConfig.xml 修改后需重启设备才能生效。 3. camxoverridesettings.txt 支持动态加载,适合快速验证参数。

4.4 环境验证与常见问题

完成上述环境搭建后,建议执行以下验证步骤,确保调试环境可用:

  1. QPST 验证:打开 QPST Configuration,确认设备出现在 Active Phones 列表中。
  2. ADB 验证:执行 adb devices 确认设备状态为 device,并执行 adb shell 进入设备终端。
  3. 日志抓取验证:执行 adb logcat -s CamX -v threadtime -d | grep "HDR",确认能过滤到 HDR 相关日志。
  4. 配置文件验证:执行 adb shell ls -l /vendor/etc/camera/,确认关键配置文件存在且权限正确。
常见问题排查:
- QPST 无法识别设备:检查驱动版本,尝试更换 USB 端口或数据线。
- ADB 设备显示 offline:重启 adb 服务(adb kill-server + adb start-server),或重启调试机。
- 配置文件推送失败:确认已执行 adb root 和 adb remount,部分设备需要关闭 AVB 验证。