OddMinutes 小奥录音更新:支持摘要编辑、修复实时字幕功能异常、合并会议纪要报错等

OddMinutes 小奥录音:让沟通的每一分钟,都被听见、被记录、被理解!


前言

自从搞了 OddMinutes 小奥录音后,我自己参加的每个会议都用小奥录音给做录音了,越用越喜欢用,相见恨晚,然后在实际的使用中也发现了一些问题,形成了一些想法,一点点的优化、改善、调整。
在过去的这三个星期里,小奥录音的更新,涵盖新功能、体验优化、问题修复和代码重构四大方面。

关于小奥录音

录音 · 转录 · 摘要,您的私有AI会议助手,安全,所有数据不上云,不泄漏

免费、开源的智能音频会议系统,支持实时录音、AI 转录、智能摘要生成和音字联动功能,也支持导入已有的音频进行转录、总结。

代码仓库:https://github.com/oddminutes/oddminutes

安装使用

安装: pip install oddminutes
启动: OddMinutes
运行: http://127.0.0.1:9011/
演示: https://minutes.oddmeta.net/

以下是本次更新的详细说明:


一、新功能

1. AI 摘要内容可编辑

在 AI 摘要界面新增编辑按钮,点击后可对标题和摘要内容进行自由修改。此前 AI 生成的摘要不可修改,用户只能重新生成,效率较低。现在可以快速微调措辞、补充遗漏要点,无需重跑整个摘要流程。

同时支持 HTML 标签渲染,当 AI 摘要内容包含加粗、列表等 HTML 格式时,前端页面和导出的 PDF 文档都能正确渲染,保持排版一致。

2. ASR 模型查询与选择

ASR(语音识别)模型设置界面新增查询按钮。在输入 API 地址后,点击即可查询该地址支持的模型列表,系统用下拉选择框展示所有可用模型,用户选择后点保存即可生效。

此前模型名称需要手动输入,容易出错且不直观。现在可以一键获取可用模型列表,操作更便捷。

3. 导入音频支持 m4a 格式

导入音频功能新增对 m4a 文件类型的支持。m4a 是 iPhone 录音和部分录音软件的默认输出格式,新增支持后无需手动转换格式,直接导入即可。

4. AI 摘要失败原因展示

当 AI 摘要连接大模型失败时,前端会显示具体的错误信息(如网络超时、API Key 无效等),便于快速定位问题,而非仅显示”生成失败”。


二、体验优化

5. 上传音频转录改为全异步

上传音频文件的转录流程改为全异步处理。此前转录过程中页面会阻塞等待,用户无法进行其他操作。现在转录在后台异步执行,前端可继续操作,体验更流畅。

6. 日志文件循环管理

日志文件改为每天一个、循环保存,最多保留 30 天。长时间运行后日志文件不再无限增长,自动清理过期日志,减少磁盘占用。

7. 系统托盘图标优化

左键点击系统托盘图标也能弹出菜单,此前仅右键可用。操作更符合 Windows 用户习惯,日常使用更便捷。

8. Daphne 访问日志优化

优化了 ASGI 服务器 Daphne 的访问日志输出格式,日志信息更清晰,便于排查网络请求相关问题。

9. 启动依赖检查

启动时补充 reportlab(PDF 生成库)的依赖缺失检查。若缺失该依赖,启动时会提前提示,避免运行到 PDF 导出环节才报错。

10. 数据库清理

清理了一批老的、不再使用的数据库表(涉及 recording、summary、transcription、system_app、users 等多个应用),共删除约 167 行冗余代码,保持数据库整洁,减少潜在冲突。

11. 产品 Slogan 更新

调整产品 Slogan 为:OddMinutes 小奥录音:让沟通的每一分钟,都被听见、被记录、被理解!


三、问题修复

实时字幕功能异常

修复了实时字幕功能不可用的问题,涉及前端页面和后端 ASR 客户端的适配调整。

重连失败

修复了开始会议时若实时字幕未连接到 ASR 服务器,后续不停止录音直接重新开始录音,就再也无法连接 ASR 的问题。现在连接失败后会正确重置状态,支持重新连接。

导入音频重复会议

修复了导入音频文件时操作过快(连续点击导入按钮),一个文件会生成两个会议记录的问题。前端增加了防重复提交保护。

ASR 模型选择不生效

修复了在实时转录设置中设定了 qwen3-asr-0.6b,但实际传到 ASR 端仍是默认的 paraformer 模型的问题。现在模型选择会正确传递到 ASR 服务端。

合并会议纪要报错

修复了合并多个会议纪要时的报错问题。根本原因是 AI 模型返回的 JSON 字符串格式不规范(如包含多余逗号),直接 json.loads 解析失败。现在增加了容错处理,自动修复常见的 JSON 格式问题。

启动迁移检查

修复了启动时检查数据库迁移状态时未能正确判断是否存在迁移的问题,避免误报或漏报。

升级后数据库异常

修复了执行 pip install -U oddminutes 升级后,若数据库结构发生变化,可能导致小奥录音无法正常工作的问题。现在启动器会自动检测并执行必要的数据库迁移。

WSL 环境兼容

修复了 WSL Ubuntu-24.04 环境下,pydantic_ai 库版本问题导致无法生成 AI 摘要的问题。通过调整依赖版本约束解决兼容性问题。


四、代码重构

本次更新对小奥录音的 Django 代码进行了整体重构,涉及 40 个文件、约 855 行新增 / 894 行删除。主要变更包括:

  • 合并应用模块:将 transcriptionsummaryrecording 等独立应用的视图、模型、路由整合到 meetings 应用下,减少模块间耦合。
  • 视图拆分meetings/views.py 拆分为 meeting.pyexport.pysummary.pytranscript.pytranscription.pyrecording.py 等独立文件,每个文件职责更清晰。
  • 新增事件系统:引入 core/events.py 事件总线,为后续模块间解耦通信打下基础。
  • 清理冗余代码:删除了多个应用中不再使用的 models、admin、urls 等模块,总计减少约 167 行。

重构后代码结构更清晰、可维护性和扩展性更强,为后续功能迭代打下良好基础。


感谢各位用户的支持与反馈,我们会持续迭代,让小奥录音更好用!

如有问题或建议,欢迎随时反馈。

代码仓库: https://github.com/oddmeta/oddminutes


OddMinutes 小奥录音 — 让沟通的每一分钟都被记录

Leave a comment

Your email address will not be published. Required fields are marked *