floatboatai/OpenMinutes

效率与系统工具

把 MemoTalk S1 录音笔的音频导入、转录、AI 归类并检索回顾的桌面工作台。

106
0
TypeScript
MIT
创建于 1 天前

OpenMinutes 是一个开源 Workbench 应用,面向使用 MemoTalk S1 录音笔、希望把 MP3 变成可搜索分类笔记的人。它把导入、转录、AI 归类和检索复盘串成一条工作流,每条录音都有明确阶段:等待下载、等待转录、转录中、等待归类、已归档或失败 项目仓库 README。

能做什么

录音有三种入库方式:扫描目录、登记设备文件清单、或通过 BLE 直接下载。转录时用 ffmpeg 把音频解码成 16 kHz 单声道 PCM16,流式送入 Host ASR,保存全文和带时间戳的分段。随后 Host LLM 生成结构化的标题、摘要、分类、标签、要点、待办和重要程度,这些内容都可以手动修改。资料库支持检索转录文本、标题和摘要,按分类、标签或阶段筛选,并批量执行转录或归类 README。

典型用法:把录音放进导入目录,让可选的自动转录和自动归类运行(默认都开启),然后搜索或打开一条录音,阅读转录、在播放时跳转到句子时间戳,并修正 AI 结果。

工作方式

它只能运行在 Floatboat 桌面 Workbench 运行时中,是 Host 加载的 Workbench 包,而不是独立的 Node 服务。Host 负责准备依赖、构建应用并应用 SQLite 迁移;ASR 和 LLM 调用都走 Host 能力,因此仓库本身不含也不需要模型 API key。类型检查和构建也是 Host 操作,不是包脚本 README Floatboat。

依赖与限制

  • 平台: 需要桌面 Workbench 运行时,不是手机端或独立网页应用。
  • 转录: 必须安装 ffmpeg,缺失时转录不可用,界面会提示。
  • BLE 下载: 需要本机 Python、bleak、memotalk-sdk 以及真实的 S1 设备,并把 SDK 装进设备页显示的那个解释器。缺失时设备页显示 "not ready",但目录导入仍然可用 README memotalk-sdk。
  • 实时字幕: 使用固定 PCM 参数,不使用文件转录的热词、语言和说话人设置;asr_language 目前只作为文件转录元数据保存,并不会传给 ASR。
  • 数据风险: 删除时会尝试把音频移到当前库设置下的 _trash 目录,然后无论移动是否成功都删除数据库记录;移动失败时没有恢复接口,应用内无法找回已删录音。修改库目录不会移动已有文件,导出还可能覆盖同名文件。
  • 升级: 会移除旧的 sdk_dir 设置,但保留其他路径、识别和自动化设置。

项目采用 MIT 许可证;SDK 集成测试使用模拟设备,不需要真实录音笔 许可证。

本文由 AI 根据项目 README 生成,更新于 2026年10月29日,以项目官方文档为准。