Skip to content

Enhance capture methods, window mode, and fix performance issues#1

Merged
Lannamokia merged 4 commits into
mainfrom
logtest
Mar 5, 2026
Merged

Enhance capture methods, window mode, and fix performance issues#1
Lannamokia merged 4 commits into
mainfrom
logtest

Conversation

@Lannamokia

Copy link
Copy Markdown
Owner

No description provided.

在创建显示器捕获源后,获取其设置并打印当前使用的捕获方法(DXGI/WGC/AUTO)以及推断出的数据复制路径。这有助于调试和了解底层使用的技术栈。
- 新增窗口采集模式,支持通过游戏捕获源录制特定窗口
- 硬件扫描增加窗口枚举功能,可列出所有可捕获的窗口
- 数据库迁移添加采集模式、采集方法和窗口ID字段
- 改进错误处理,使用更精确的Axios错误类型检查
- 优化React组件性能,使用useCallback减少不必要的重渲染
- 修复特殊字符检测逻辑,避免正则表达式转义问题
- 更新OBS构建配置,添加TLS验证禁用选项
cli-capture:
- 修正初始化顺序为 audio -> video -> modules,匹配 OBS Studio 逻辑
- 添加 RtwqStartup/Shutdown (MMCSS) 和 SE_INC_BASE_PRIORITY_NAME 提权
- 构建脚本添加 -DGPU_PRIORITY_VAL=7 启用 GPU 线程优先级
- monitor_capture 改用 monitor_id (设备接口路径) 替代整数索引,修复黑屏
- scan 输出 screens 的 id 改为 device_id 字符串,--monitor 参数兼容两种格式
- 添加 UI task queue (cli_ui_task_handler) 处理 libobs 主线程回调
- 构建完成后不再删除 obs-studio 源码

server:
- validate_device_id 放行反斜杠和 & 字符以支持 Windows 设备路径
- Device 结构体添加可选 index 字段兼容新 scan 格式

web-ui:
- 同步更新 deviceForbiddenChars 验证规则,允许设备路径特殊字符
- 新增 server/schema.sql,包含所有表和列的 CREATE IF NOT EXISTS + ADD COLUMN IF NOT EXISTS
- 新增 db::ensure_schema() 在启动/重连/首次初始化时执行,确保 schema 完整
- 删除 migrations 目录,移除 sqlx::migrate! 调用,彻底消除 checksum 不匹配问题
- 旧数据库连接新版本时自动补全 capture_mode/capture_method/window_id 列
- 自动扩宽 monitor_id 列至 VARCHAR(512) 以支持 Windows 设备接口路径
- 压制 AgentClient::scan_hardware 的 dead_code 警告
@Lannamokia
Lannamokia merged commit e47f616 into main Mar 5, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant