OpenLogi 摄像头自定义快照:如何在内置 Default/Streaming/Video call 之外保存并复用一套画质设置?
【免费下载链接】OpenLogi⚡️A native, local-first alternative to Logitech Options+, written in Rust 🦀 — remap buttons, DPI, and SmartShift over HID++. No account, no telemetry.项目地址: https://gitcode.com/GitHub_Trending/op/OpenLogi
OpenLogi 的摄像头面板把画面控制直接写入 UVC 硬件——变焦、对焦、曝光、亮度、对比度、饱和度、锐度、白平衡、色调、防闪烁、低光补偿,其中对焦 / 曝光 / 白平衡带自动模式开关。面板顶部提供一键 Profile:内置的Default/Streaming/Video call之外,还可以把当前这一组数值保存为自定义快照(custom snapshot),之后一键套用。设置按摄像头持久化,下次打开预览时会重新写回硬件。本文只讲一件事:如何把调好的画质存成自定义快照,以及如何在以后复用、删除它。
适用前提:一台 Logitech UVC 摄像头(Brio、StreamCam、C920 系列等,即插即用),macOS、Linux 或 Windows 上已按 README 完成安装。README 特别提醒:使用前先退出 Logi Options+,两者会争抢设备访问权,同一个接收器同一时刻只能被一个应用持有。macOS 上预览和采集需要相机权限(系统会提示授权)。
摄像头面板上你能改什么
在 OpenLogi 中选中一台摄像头设备,进入它的控制面板。控件分两组(面板内按 Lens / Image 分区):
- Lens(镜头端):Zoom、Focus、Exposure;
- Image(图像处理端):Brightness、Contrast、Saturation、Sharpness、White balance、Tint、Anti-flicker、Low-light compensation 等,具体哪些可见取决于摄像头实际暴露的 UVC 控件;
- 每个带自动模式的控件旁有独立的 Auto 开关,对应 focus / exposure / white balance 三种自动模式。
面板最上方是一行 Profile 芯片(chip):依次是三个内置Default、Streaming、Video call,然后是已保存的每个自定义快照,行尾是一个带+的"新建"芯片。这一布局与保存/删除入口见 controls.rs。
内置预设与自定义快照的行为不同(见 apply_profile):Default恢复设备自身的默认状态,Streaming和Video call会开启全部自动模式并按预设比例写入各控件;自定义快照则完整复用它保存时的控件数值与自动模式状态。
保存一套自定义快照
- 打开摄像头面板,把各滑块和自动开关调到想要的画面状态。注意:拖拽某个处于 Auto 状态的滑块会把该控件切回手动,之后以你拖到的数值为准。
- 点击行尾的"新建"(
+)芯片。此时面板会把当前所有控件的数值连同自动模式状态整体存为一个快照(见 save_profile)。 - 快照自动命名为"自定义 N"(N 从 1 递增,直到不与已有名字重复,命名模板来自 zh-CN.toml 的
custom_profile_number),并立即被标记为当前激活的 Profile。
保存后不需要做任何额外操作:只要该自定义快照处于激活状态,你对滑块的后续修改会持续写回它的快照(见 sync_active_custom),所以一个自定义快照始终等于"你在它选中时最后看到的画面"。内置预设不可被编辑。
复用:一键把快照写回硬件
以后想切回这套画质时,直接点击对应的自定义快照芯片。面板会为每个控件计算目标值,在一次设备打开内批量写入硬件,然后重排滑块、持久化数值并记住这次选择(见 apply_profile)。
因为写入的是 UVC 硬件而不是某个应用的视频流,这套设置对正在使用摄像头的每个应用都生效——README 明确列出了 Meet / Zoom / OBS。
跨会话的复用依赖两点持久化机制(README、CONFIGURATION.md):
- 设置按摄像头持久化:同一台摄像头的控制值下次打开预览时重新写回硬件;
- 配置文件位置为 macOS/Linux 的
~/.config/openlogi/config.toml、Windows 的%USERPROFILE%\.config\openlogi\config.toml,GUI 原子写入并保留config.toml.backup.1至config.toml.backup.5。
自定义快照存储在config.toml的设备段[devices."<physical-key>"]下:camera_profiles是"名字 → 控件快照"的映射,camera_profile记录最近一次从 GUI 应用的 Profile 名(见 device.rs)。内置的三个预设只存在于 GUI 中,不写入配置文件。
验证是否保存成功
- 界面上:重新打开该摄像头的控制面板,
camera_profile记录的 Profile 会在重新打开时被高亮显示,即当前激活的芯片处于选中态; - 文件里:打开
config.toml,在对应摄像头设备段下确认出现了camera_profiles条目(键为你保存的名字,如"自定义 1"),以及记录最近应用的camera_profile; - 硬件上:README 说明设置在下次预览时写回硬件——关闭再打开预览,或直接看 Meet / Zoom / OBS 里的画面,确认画面与保存时的状态一致。
删除快照与已知边界
- 删除:自定义快照芯片上带删除入口。删除只移除已保存的快照(若它正是当前选中的 Profile,连同选择一起移除),硬件保持当时的数值不变,见 delete_profile。
- 批量写入失败:
apply_settings不是原子的(先写自动模式再写数值),中途失败可能让硬件停在中间状态。面板会清除激活的 Profile 并从设备实时状态重建控件,避免把半应用的数值误存回快照(见 resync_after_failed_write)。此时应以面板重建后的实际数值为准。 - 摄像头身份:没有 USB 序列号的摄像头没有唯一端口身份,其
custom_name跟随系统采集 id;把它换到另一个 USB 口后可能需要重新命名(CONFIGURATION.md)。 - 配置校验是严格的:拼写错误、过期或超范围的字段会导致配置无法加载,GUI 以只读模式打开并显示确切的 TOML 错误;修正文件后重启即可。
完成保存并确认config.toml中出现快照条目、再次打开预览画面一致后,这套自定义快照就与内置预设一样可以长期一键使用了;多机之间同步config.toml即可让同一台摄像头在不同机器上复用相同设置。
【免费下载链接】OpenLogi⚡️A native, local-first alternative to Logitech Options+, written in Rust 🦀 — remap buttons, DPI, and SmartShift over HID++. No account, no telemetry.项目地址: https://gitcode.com/GitHub_Trending/op/OpenLogi
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考