klllas/vokta

GitHub: klllas/vokta

Vokta 是一款自托管的开源 AI 录音笔 Android 客户端,能将廉价 BLE 录音设备变为无需订阅的通话与会议录音、转写及摘要平台。

Stars: 0 | Forks: 0

# Vokta **一款私有、自托管的开源 AI 录音笔 —— Plaud / HiDock 的替代方案。** Vokta 能将便宜的 BLE “AI 录音笔” 卡片设备(在 AliExpress 上销售的 Actions ATS2837 / "AIDVRLink / DVR Link / LA518" 系列)变成完全自托管的通话与会议 录音机。它通过 Bluetooth 录制通话/会议,无线同步到**你自己的服务器**,并 在**你自己的 GPU** 上进行转写 + 说话人分离 + 摘要 —— 无需供应商云服务,无需 订阅,音频数据绝不离开你的基础设施。 ## 功能特性 - 🔴 **自动通话录音** — 后台服务保持录音笔唤醒状态,并 零点击录制每一通电话(包括呼出*和*呼入);挂断时自动停止并同步。 - 📡 通过 BLE **无线同步** — 将录音从录音笔中拉取出来,无需数据线。 - ✍️ 在你的服务器上进行 **转写 + 说话人分离**(Whisper large-v3 + pyannote)。 - 🧠 通过你自己的 LLM 网关生成 **摘要 + 待办事项**。 - ▶️ **播放**、针对单条录音的 **从内存中删除**、设备上的 **Material 3** UI。 - ⬆️ **应用内 OTA 更新**。 ## 架构 ``` [BLE recorder pen] --Bluetooth GATT--> [Vokta Android app] --HTTPS--> [your server] Actions ATS2837 Kotlin / Jetpack Compose Whisper (GPU) records to flash holds connection, auto-records pyannote diarization pulls MP3, uploads LLM summary ``` Android 应用通过你服务器上的一个小型 bearer-token REST API (`/api/mobile/*`) 进行通信。 本仓库是 **Android 客户端**;此处的参考服务器是 [T7],但任何 实现了相同端点的后端均可使用: | 端点 | 用途 | |---|---| | `GET /api/mobile/recordings` | 列出录音 + 转写文本 | | `GET /api/mobile/recordings/{id}` · `DELETE` | 单条录音 · 从内存中移除 | | `POST /api/mobile/recordings/{id}/summarize` | 按需摘要 | | `POST /api/mobile/upload` | 接收拉取的 MP3 → 转写 pipeline | | `GET /api/mobile/audio/{id}` | 流式传输 MP3 以供播放 | | `GET /api/mobile/version` · `GET /api/mobile/apk` | OTA | ## 录音笔协议(逆向工程) 明文 BLE GATT,无加密。控制通道在 `f0f1`/`f0f2`,文件数据在 `f0f4`。 命令格式为 `80 08 02 00 00`(固定的 `0000` 尾部,**不是** 校验和)。主要操作码:`0x06` 开始录音 · `0x07` 停止+保存 · `0x0a` 列表 · `0x0b` 下载 · `0x0d` 删除。完整映射表请见 [`reverse-engineering/PROTOCOL.md`](reverse-engineering/PROTOCOL.md)。 ## 构建 需要 Android SDK 34 + JDK 17。 ``` ./gradlew assembleDebug # APK 位于 app/build/outputs/apk/debug/app-debug.apk ``` 首次启动时,输入你的服务器 URL 和移动端 token,然后 在“设置”中启用 **自动通话录音**。 ## 状态与路线图 已实现:BLE 录音/同步/删除,通话时自动录音,转写,说话人分离, 摘要,播放,OTA。计划中(详见 issues):同步的转写文本播放(点击跳转), 待办事项提取,针对录音的 AI 问答 (RAG),自定义摘要模板, 说话人命名,跨录音搜索。 ## 许可证 MIT — 详见 [LICENSE](LICENSE)。与 Plaud Inc. 或 HiDock 无任何关联;“Plaud”和 “HiDock”是其各自所有者的商标,此处仅出于描述性目的进行引用。
标签:Android, DSL, Jetpack Compose, Kotlin, 人工智能, 开源硬件, 用户模式Hook绕过, 移动开发, 蓝牙, 语音转写