Repository navigation
Releases: lu0973-cb02d/ClassCue
Releases · lu0973-cb02d/ClassCue
Release list
ClassCue 0.2.9
本版本是 0.2.8 的维护更新,识别、提醒、录音和 AI 相关的代码都没有改动。
隐私
- 换新手机时的设备间迁移现在也不会带走课堂历史数据库。此前只有云备份排除了它,设备迁移规则漏掉了,与说明不符。数据库的
-wal、-shm、-journal旁路文件也一并排除。 - 录音和 API Key 一直被排除在云备份与设备迁移之外,没有变化。
安装包
- 安装包缩小约 4.7 MiB(85.45 → 80.78 MiB):不再打包 sherpa-onnx 自带的两个 C/C++ API 原生库,应用从不加载它们。
升级
- 0.2.8 由 CI 临时生成的证书签名,本版本的签名证书与它不同,因此不能直接覆盖安装 0.2.8。请先在“历史记录”中导出需要保留的录音和 Markdown,卸载 0.2.8 后再安装本版本。卸载会同时删除应用内的记录和录音。
验证
- 107 项 JVM 单元测试通过(新增 3 项备份规则测试,云备份、设备迁移和旧版备份规则都必须排除历史数据库、API Key 存储和录音)。
- Android Lint 0 个错误,警告和提示数与 0.2.8 相同。
- 公开版 APK 构建成功。移除原生库后的中/大档离线识别只做了静态检查(原生库的依赖关系和加载路径),尚未在真机上验证;如果中/大档识别无法启动,请反馈。
签名与升级
- 安装包名为
com.classcue.kexing.github,是经过 R8 优化、不可调试的公开版;可以和此前发布的测试版(com.classcue.kexing.debug)同时安装,旧版里的记录导出后再卸载即可。 - 注意:本 APK 由 CI 临时生成的证书签名,之后的版本不能直接覆盖升级。升级前请先在“历史记录”中导出需要保留的录音和 Markdown,再卸载旧版。
ClassCue 0.2.8
本版本同时包含未单独发布的 0.2.7 的全部内容。
课表与确认课程
- 新增“课表”页:按星期、节次时间、起止周和单双周录入课程,可填写上课地点;设置学期第一周的周一后自动计算当前周次。
- 点“开始听课”时,如果已经录入课表,会先弹出确认框,默认选中正在上或即将开始的课程,也可以改选其他课程或手动输入。
- 听课页会提示“下一节课”,一键改用。
- 可选的上课提醒:在上课前若干分钟发通知,点通知打开课醒并弹出这节课的确认框。提醒只会提示,绝不会自动开始录音;重启手机或修改时间后会自动重新安排。
历史记录
- 每节课有独立的详情页:按时间线显示转写、提醒和 AI 回答,自带播放器,点任意一句即可跳到录音中对应位置附近播放。
- 历史记录支持全文搜索,跨课程查找转写、提醒和 AI 回答。
- 课次列表改由数据库中的课次表维护,课程多时打开历史记录更快。
录音更可靠、更省空间
- 结束听课改在后台线程完成,界面不再卡住;最后一句话也会完整识别后再收尾。
- 应用被系统杀掉或手机重启时,未写完的录音会自动修复为可播放的 WAV,并在听课页提示“上节课意外中断”。此前超过两小时的未完成录音会被删除,现在只要有声音就一律保留。
- 课后在电量充足时把 WAV 压缩为 AAC(约 32 kbit/s,每小时约 14 MB,WAV 约 110 MB),校验时长一致后才保留压缩件。默认仍保留原始 WAV,可在历史记录中一键清理已压缩的原始文件。
提醒更准、AI 花费可控
- 点名判断改为综合打分:学号、全名、读音相近的姓名和称呼分别计分;单字称呼必须出现在点名语境中才会触发。在自建的讲课文本测试集上,默认灵敏度下的误报从 7 次降到 0 次。
- 按读音匹配姓名:识别成同音或近音字(如平翘舌、前后鼻音不分)也能认出是在叫你。
- 新增“自动回答范围”:默认只对点到你的问题自动请求 AI;可改为“全部问题”。自动请求默认每 10 分钟最多 6 次,可调整。
- AI 回答改为流式显示,通知和界面会边生成边更新。
- 实验功能“姓名热词”:让中/大档识别器更倾向于识别出你的名字(默认关闭)。
- 新增“省电识别”选项,中/大档使用 2 个线程。
模型下载
- 新增国内镜像(hf-mirror.com)下载源,可在设置中选择;首选来源失败时自动改用另一个来源。两个来源都校验同一组固定的 SHA-256 和文件大小,校验失败的文件会被删除。
- 中、大档模型包校验固定的 SHA-256 和精确文件大小,校验通过后才会安装;服务器声明的大小不符时在下载前停止(0.2.7)。
隐私
- 课堂历史数据库不再进入系统云备份和设备迁移备份,录音与 API Key 也一直被排除。
安装与升级
- 从本版本起,Releases 中的 APK 是经过代码优化、不可调试的公开版,安装包名为
com.classcue.kexing.github。它会作为一个新应用安装,不会覆盖 0.2.6 及更早的测试版(com.classcue.kexing.debug);旧版中的记录请先在“历史记录”中导出,确认新版正常后再卸载旧版。 - 华为手表端仍只与正式签名的
com.classcue.kexing配对,公开版不能连接手表。
验证
- 104 项 JVM 单元测试通过(新增课表、历史数据库与搜索、录音修复与压缩判定、姓名读音匹配、提醒打分、流式 AI 协议、模型下载与镜像回退等测试)。
- Android Lint 0 个错误。
- 公开版 APK 构建成功。录音压缩和上课提醒尚未在真机上做长时间验证,如遇问题可在设置中关闭“课后压缩录音”。
签名与升级
- 安装包名为
com.classcue.kexing.github,是经过 R8 优化、不可调试的公开版;可以和 0.2.7 及更早的测试版(com.classcue.kexing.debug)同时安装,旧版里的记录导出后再卸载即可。 - 注意:本 APK 由 CI 临时生成的证书签名,之后的版本不能直接覆盖升级。升级前请先在“历史记录”中导出需要保留的录音和 Markdown,再卸载旧版。
ClassCue 0.2.6
课堂识别与手表通信
- 恢复华为 Lite Wearable 手表端源码,并在手机端接入 Wear Engine,可向已配对手表发送课堂提醒和 AI 答案。
- 设置页增加手表开关、包名、HAP 签名指纹和直连测试入口;未配置正式 HAP 指纹时会安全阻止发送。
- 手表源码、签名前校验脚本和 SDK 完整性校验已随源码公开;正式 HAP 仍需使用开发者自己的 DevEco 工具链与签名材料构建。
远场识别与稳定性
- 延长结束课堂时的识别收尾,避免最后一段老师讲话丢失。
- 识别队列改为有界等待与背压,减少高负载下静默丢帧。
- 放宽远场低音量门控,改善 Magic8 Pro 等手机在远距离场景的可用输入。
- 收紧“先叫名后提问”的弱信号判定,降低吐字不清和普通课堂话语造成的误报。
- Markdown 导出改为流式写入,长期课堂记录导出更稳。
使用提示
- 本 APK 是 Android Debug 签名测试包,不能覆盖安装其他证书签名的正式包。
- 手表端需要正式签名 HAP、配对设备和真机回归;本 Release 不包含签名 HAP。
- 远场识别仍受距离、回声、口音和麦克风采集能力影响,请在实际课堂中逐步验证。
验证
- 35 项 JVM 单元测试通过。
- Android Lint 0 个错误。
- Debug APK 构建成功。
- 手表源码 JavaScript、配置 JSON 和 Wear Engine SDK SHA-256 校验通过。
ClassCue 0.2.5
识别稳定性优化
- 临时转写只更新界面,提醒改为等待最终转写结果,降低远场噪声和吐字不清造成的误报。
- 为识别输入加入保守的分帧能量门控和语音停顿保护,原始 WAV 继续完整保存。
- 缩短采集块并延长端点等待,减少自然停顿造成的断句和漏识别。
- 收紧泛化课堂问题的判定,模糊的单词片段不再直接触发提醒。
继承自 0.2.4f
- 修复
0.2.4p启动时读取课次归档 SQL 拼接错误导致的打开即闪退。 - 远场离线识别增强和麦克风输入策略。
- 课堂文字与 WAV 长期本机保留、手动删除。
- 按课次、课程或全部课程导出 Markdown。
ClassCue 0.2.4f
紧急修复
- 修复
0.2.4p启动时读取课次归档 SQL 拼接错误导致的打开即闪退。 - 新增课次归档 SQL 边界测试,防止
WHERE或GROUP BY再次与前一段语句粘连。
继承自 0.2.4p
- 远场离线识别增强和麦克风输入策略。
- 课堂文字与 WAV 长期本机保留、手动删除。
- 按课次、课程或全部课程导出 Markdown。
请勿继续使用存在启动崩溃的 0.2.4p APK。
ClassCue 0.2.4p(请勿使用)
Caution
此版本存在启动时读取课次归档 SQL 拼接错误,可能导致打开即闪退。请改用已修复的 v0.2.4f,不要继续安装或传播本页 APK。
本次更新
- 新增面向远距离课堂声音的离线自适应增益与软限幅。
- 新增系统自动、手机内置和外置麦克风输入策略。
- 课堂文字和 WAV 录音改为长期本机保留、手动删除。
- 新增按单节课、当前课程或全部课程导出 Markdown。
- 新增按课程和课次整理的本地归档。
说明
- 远场增强只作用于离线识别输入,原始 WAV 保持不变。
- 原始录音不会上传给 AI 服务;AI 仍只接收用户配置服务所需的文字上下文。
- 远距离、回声和多人重叠说话仍会影响识别,软件增强不能恢复麦克风未采集到的语音。
ClassCue 0.2.3p
本次更新
- 版本由
0.2.2p迭代至0.2.3p。 - 新增可直接下载安装的 Android APK。
- 新增 GitHub Actions 自动测试、Lint、APK 构建与 Release 发布。
- 新增 APK 的 SHA-256 校验文件和对应源码提交记录。
当前功能
- 课堂音频本地录制与离线实时转写。
- 点名、提问表达及自定义强提醒词识别。
- 高优先级通知、震动强度调节与课堂上下文捕获。
- 多个兼容 OpenAI Chat Completions 的 AI 服务并行回答。
- 录音、转写、提醒与 AI 回答本地历史记录。
- 离线语音模型下载、暂停、断点续传及失败重试。
ClassCue 0.2.2p
版本更新
- 首个公开源码版本。
- 提供课堂音频本地录制与离线实时转写。
- 支持点名、提问表达及自定义强提醒词识别。
- 支持多个兼容 OpenAI Chat Completions 的 AI 服务并行回答。
- 支持录音、转写、提醒与 AI 回答本地历史记录。