小奥录音v0.1.10 更新:实时字幕500ms、说话人分离优化、导出pdf、加入安全认证等

​关于小奥录音 OddMinutes

小奥录音是一个开源的智能音频会议系统,支持实时录音、AI 转录、智能摘要生成和音字联动功能,也支持导入已有的音频进行转录、总结。跟 Meetily 一样,支持全链路私有化部署,完全离线运行。

Slogan:让会议的每一分钟,都被听见、被记录、被理解 —— OddMinutes 小奥录音

项目地址:https://github.com/oddmeta/oddminutes

安装:pip install oddminutes

运行:oddminutes

Web前端: http://localhost:9011

最近两个周末,一边改 OddASR,一边陆陆续续的用 OddASR 再来一点点完善小奥录音的各项功能,今天向pypi发布了个阶段性的版本 v0.1.10 。然后这里汇总一下与上个版本相比做的一些修改、调整与完善,简单讲的话主要就是:围绕实时字幕、导出功能、说话人识别、AI纪要等核心体验进行了一些升级。具体看下面。


​一、新功能

​1. 实时字幕上线(500ms 超低延迟)

结合最新版 OddASR,小奥录音加入了实时字幕功能,首字时延低至 500ms

●字幕风格参照主流音乐播放器,支持拖动调整字幕显示位置

●默认不启用,可在系统设置中手动开启

●录音控制面板新增「显示字幕」按钮,一键控制字幕显隐

​2. 导出功能全新重构

导出功能经过彻底重设计:

●点击导出按钮后弹出选择框,可自由勾选导出内容:音频文件、会议文本、AI摘要

●导出前自动检查数据库中是否已有对应的 PDF 文件,智能判断是否需要重新生成

●勾选的导出文件自动打包成 ZIP 提供下载,文件名用会议名称(中文文件名兼容)

●导出的 PDF 新增页眉 小奥录音 Logo + Slogan、页脚副标题与官网地址

●PDF 支持水印,包含产品标识与导出时的登录用户信息,防泄漏更安心

●导出接口必须登录后才能操作

​3. 说话人能力增强

利用最新版本的 OddASR,对说话人分离功能进行了一些优化,可指定本会议中最多有多少人发言,包括自动检测说话人的最大数据和实际分离的数量,同时转写后生成的说话人0,说话人1,说话人2也可支持在界面上修改名字,并支持同一说话人修改后,在整个会议里批量改名更新。

说话人名字编辑:转录文本界面双击说话人即可编辑名字;若某说话人修改了名字,会提示是否将本会议中所有相同说话人的名称一并替换,界面与数据库同步更新

离线说话人分离人数配置:根据 OddASR 接口支持,可指定本会议中最多有多少人发言(offlinePresetSpkNum / offlineMaxNumSpks

需要配合OddASR v2.5.5 才能支持,要体验此功能,需先升级一下 OddASR。

安装 OddASR:

●●●bashpip install -U oddasr

运行OddASR

●●●bashoddasr

​4. AI 纪要全面升级

这些功能都是我自己这几天使用中一点点完善的,有的问题是受限于硬件配置(受限于大模型最大上下文,AI摘要的时候切片进行摘要,然后再合并成一个完整的摘要)。

AI摘要滑动窗口可配置:块大小 5000、重叠 1000、步进 4000 三个参数可在系统设置中调整并持久化

AI摘要面板全新改版:从卡片列表样式重设计为正式的报告/纪要文档样式,包含报告头部(会议名、生成时间、元信息)与精致排版,支持打印/PDF 导出

启动自动初始化模板:启动时自动检测 AI 摘要模板是否存在,缺失时自动补全初始化数据

​5. 用户体系接入

这个功能的主要目的是想保护一下数据,原先的时候没有用户、权限的管理,启动了OddMinutes后就直接可以看到所有会议,感觉这样不太安全,也没有什么隐私,所以就顺手给加了个简易的用户认证子系统。

●所有数据表加入 user 属性

●所有业务 API(会议、录音、转写、摘要等)现在均需要携带有效的 Token 才能访问

●正在评估中国电信 API 数据结构规划新版本适配(只是看到了一个中国电信的API文档,感觉有点意思,但是没实际需求,所以做不做什么时候做,要看心情)


​二、体验优化

一些勉强可以称得上优化的调整。

转录文本分段优化:按句号、问号、感叹号智能分段,避免同一人超长语音堆挤成超大段落

编辑模式重构:编辑按钮移动到每个 segment,悬浮时显示,支持逐段编辑;编辑未保存的内容会在界面标出

编辑后播放定位修复:编辑状态下点播放,文字位置重新计算,准确定位到当前片段

音频收发日志优化:音频收发与流式转写 WebSocket 状态日志更清晰

通知历史优化:标题中增加会议名称,方便快速定位

Tailwind 本地化:将 CDN 引入的 Tailwind 改为本地资源,离线环境也可用

静音裁剪开关:音频转 MP3 后是否去首尾静音改为配置项控制


​三、Bug 修复

使用中发现的一堆杂七杂八的问题,一个个修复了一下。

静音裁剪过度剪切:修复裁剪导致大量有效音频内容被误剪的问题(FFmpeg 7.x 兼容处理)

音频进度条无法拖动:新增修复功能,重新编码 MP3 修复 VBR 头信息与 seek 表,解决浏览器播放进度条定位不准的问题

AI 摘要无法重新生成:修复生成一半服务端退出后无法再次生成的问题

Linux 版本号异常:修复 Linux 环境下检测到版本号为 0.0.0 的问题

系统通知错误:修复修改系统配置时通知标题误显示为会议名称的问题

会议标题更新:更新标题前先判断是否有变化,避免无效触发


​四、工程与部署

打包优化:构建 wheel 时排除编译临时文件(__pycache__/.pyc),避免 “is not a supported wheel on this platform” 等跨平台安装报错

版本检查:新增自动检测新版本功能(从 PyPI 获取最新版本),方便及时更新


​五、下期预告

●中国电信 API 版本适配(别期待,做不做看心情)

●持续打磨实时字幕与导出体验


感谢大家的关注与支持!有任何问题或建议,欢迎留言反馈 🙌

Slogan:让会议的每一分钟,都被听见、被记录、被理解 —— OddMinutes 小奥录音

项目地址:https://github.com/oddmeta/oddminutes

Leave a comment

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