这是一款可以持续记录屏幕画面、通过关键词搜索等方式随时找回相关记忆的工具。
它的所有能力(录制、识别处理、存储回溯等)完全运行在本地,无需联网,不上传任何数据,只做应该做的事。
该项目仍在较早期开发阶段,体验与使用上可能会遇上些小问题。如果遇到,欢迎提出 issue 反馈与关注更新
安装
-
下载 ffmpeg ,将其中bin目录下的ffmpeg.exe解压至 C:\Windows\System32 下(或其他位于 PATH 的目录下)
-
安装 Git、Python(安装时勾选 Add python.exe to PATH)、Pip;
- 注意!目前暂未支持 python 3.12,推荐使用 python 3.10,即上面链接指向的版本
-
导航到想要安装此工具的目录下(推荐放在空间富足的分区中),通过终端命令 git clone https://github.com/Antonoko/Windrecorder 下载该工具;
- 可以打开想要安装的文件夹,在路径栏输入cmd并回车,进入当前目录终端,将以上命令贴入、回车执行;
-
打开目录下的install_update_setting.bat进行工具安装与配置,顺利的话就可以开始使用了!
- 如因网络原因报错,可在脚本安装依赖前添加代理set https_proxy=http://127.0.0.1:xxxx、或添加大陆镜像源;
如何使用
- 通过打开目录下的start_record.bat开始记录屏幕;
注意:需要一直将终端窗口最小化放在后台运行来记录。同样地,当需要暂停录制时只需关闭终端窗口即可。
- 通过打开目录下的start_webui.bat来回溯、查询记忆、进行设置;
最佳实践:在webui中设置开机自启动start_record.bat,即可无感记录下一切。当电脑空闲无人使用时,start_record.bat会自动暂停录制并压缩、清理过期视频;Just set it and forget it!
Roadmap
- 以较小的文件体积稳定持续地录制屏幕
- 只识别发生变化的画面,在数据库中存储索引
- 完善的图形界面(webui)
- 词云、时间轴、光箱、散点图的数据总结
- 录制完片段后自动识别,闲时自动维护、清理与压缩视频
- 多语言支持:已完成界面与 OCR 识别的 i18n 支持。
- 优化流程,提升性能
- 添加画面模态的识别,以实现对画面内容描述的搜索
- 记录前台进程名与记录OCR词语对应位置,以在搜索时作为线索呈现
- 添加数据库加密功能
- 添加词嵌入索引、本地/API LLM 查询
- 添加多屏幕的记录支持(取决于 pyautogui 未来特性加入)
Q&A | 常见问题
Q: 在打开webui时提示:FileNotFoundError: [WinError 2] The system cannot find the file specified: ‘./db\\user_2023-10_wind.db-journal’
- A: 通常在初次访问 webui 时、start_record.bat 仍正在索引数据时出现。解决方法:在 start_record.bat 后台索引完毕后,删除 db 文件夹下对应后缀为 _TEMP_READ.db 的数据库文件后刷新即可。
Q: 录制过程中鼠标闪烁
- A:Windows历史遗留问题,可尝试该帖方法解决🤔。(其实习惯了不去在意也还好(逃
Q: Windows.Media.Ocr.Cli OCR 不可用/识别率过低
-
A1: 检查系统中是否添加了目标语言的语言包/输入法:https://learn.microsoft.com/en-us/uwp/api/windows.media.ocr
-
A2: 早期版本的默认策略会将高度大于 1500 的屏幕分辨率视为「高 DPI /高分辨率屏幕」,其录制视频分辨率将缩小至原来的四分之一。比如在 3840×2160 的 4k 显示器上,录制视频的分辨率将为 1920×1080,而这可能导致 OCR 识别准确率的下降。如果你在高分辨率屏幕上使用较小的字体或缩放,可以前往录制与视频存储中关闭此选项,且可以将原视频保留几天后进行压缩的天数设定为较小的值,从而在视频 OCR 索引后一段时间压缩视频体积。
项目链接
https://github.com/Antonoko/Windrecorder