Skip to content

Releases: garetneda-gif/obsidian-realtime-transcription

v1.4.0 — Multi-language UI (Chinese & English)

17 Mar 09:18

Choose a tag to compare

New Feature

  • Multi-language UI support (i18n): The plugin now supports both Simplified Chinese and English interfaces. A new "Language / 语言" dropdown has been added as the first option in the settings page. All user-facing strings — settings, notices, button labels, status messages, and error messages — are fully translated.

How to switch language

Open plugin settings → select English or 简体中文 from the "Language / 语言" dropdown at the top. The settings page will re-render immediately in the selected language.

Notes

  • AI system prompts (for summarization, title generation, and text polishing) remain in Chinese, as they instruct the AI model rather than the user.
  • Default language is Chinese (zh) to maintain backward compatibility.

Install

Extract the platform-specific zip and place the realtime-transcription/ folder into .obsidian/plugins/, then restart Obsidian.

v1.3.1 — 修复 AI 摘要失败时无限重试

17 Mar 07:39

Choose a tag to compare

修复

  • 修复 AI 摘要 API 返回错误时无限重试导致通知刷屏maybeRunSummary 中,API 调用失败后 catch 块将文本放回 summaryBufferfinally 之后的递归检查立即重新触发调用,形成死循环。修复方式为在 catch 块末尾 return,失败后不递归重试,等下次新转录文本追加时再自然触发摘要。

触发场景

摘要 API 端点不可达或返回 500 时,设置页面被大量 "AI 摘要失败: Request failed, status 500" 通知覆盖。

安装

解压对应平台的 zip,将 realtime-transcription/ 文件夹放入 .obsidian/plugins/ 目录,重启 Obsidian。

v1.3.0 - 修复转录卡片重复

16 Mar 11:35

Choose a tag to compare

修复

  • 修复连续说话时转录卡片重复上句内容:将 lastCommittedPartialText(单字符串,只记最后一次 flush)改为 committedPartialTexts(数组),跟踪同一 VAD 段内所有已 flush 的 partial 文本。去重时将数组拼接后与 final 文本做前缀重叠匹配,解决多次 flush 后去重失效的问题。

触发场景

连续说话超过 6 秒不停顿(课堂常见),导致 partial flush 多次触发,VAD 最终输出的 final 文本与 lastCommittedPartialText 无法匹配,去重失败,产生重复卡片。

安装

解压对应平台的 zip,将 realtime-transcription/ 文件夹放入 .obsidian/plugins/ 目录,重启 Obsidian。

v1.2.1 — 修复全局状态栏被隐藏

12 Mar 07:05
7816b8e

Choose a tag to compare

修复 .status-bar 选择器过于宽泛导致 Obsidian 全局状态栏被隐藏的问题。
将选择器限定为 .transcription-view .status-bar。

v1.2.0 GPU 加速支持

09 Mar 14:56

Choose a tag to compare

新功能

GPU 加速支持

  • macOS: 支持 CoreML 加速(利用 Apple Neural Engine / GPU),显著提升推理速度
  • Windows: 支持 CUDA 加速(需要 NVIDIA 显卡 + CUDA Toolkit)

使用方法

在插件设置 → 模型设置 → GPU 加速中选择对应选项:

  • macOS 用户选择 CoreML
  • Windows NVIDIA 用户选择 CUDA
  • 无 GPU 或不确定时保持 CPU(默认)

注意事项

  • CoreML 加速需要 macOS 12+ 和支持的 Apple Silicon / Intel Mac
  • CUDA 加速需要安装 CUDA Toolkit 和兼容的 NVIDIA 驱动
  • 如果选择 GPU 加速后出错,请切回 CPU 模式

下载

  • realtime-transcription-v1.2.0-macOS.zip — macOS 版本
  • realtime-transcription-v1.2.0-Windows.zip — Windows 版本

v1.1.0 · macOS + Windows 统一版

05 Mar 03:36

Choose a tag to compare

v1.1.0 更新内容

新增

  • 一键安装脚本setup.command(macOS/Linux)和 setup.bat(Windows),自动创建虚拟环境并安装所有依赖
  • 双平台构建build.sh 一键生成 macOS 和 Windows 两个可部署包
  • 模型下载修复:下载按钮现在根据「使用 Int8 量化模型」设置正确选择下载 model.onnxmodel.int8.onnx

修复

  • 修复 macOS 上 pip3 installexternally-managed-environment 错误的问题(改用虚拟环境)
  • 修复关闭 Int8 选项后下载按钮仍然只下载 model.int8.onnx 的问题

安装说明

  1. 下载对应系统的 zip 文件
  2. 解压后将 realtime-transcription/ 文件夹复制到 Vault 的 .obsidian/plugins/ 目录
  3. 进入 backend/ 目录运行安装脚本:
    • macOS/Linux:bash setup.command
    • Windows:双击 setup.bat
  4. 脚本会输出 Python 路径,复制到插件设置中即可

v1.0.3 · Windows 专用版

04 Mar 11:09

Choose a tag to compare

⚠️ 平台说明

本版本仅适用于 Windows 用户。
macOS / Linux 用户请使用 v1.0.2


2026-03-04 补丁:修复模型下载按钮

  • 修复 Python 3.9 兼容性问题(str | None 语法导致脚本启动即崩溃)
  • 下载脚本加入 60 秒连接超时,防止网络卡住后永久挂起
  • 替换失效的 GitHub 镜像(ghgo.xyz → ghproxy.net / mirror.ghproxy.com)
  • 修复下载前不检查脚本是否存在导致的静默失败
  • Python 进程改为无缓冲输出,下载进度实时显示

Windows 平台全面适配

本版本解决了插件在 Windows 系统上无法启动后端的问题,并优化了跨平台体验。

修复内容

  • 后端启动失败修复:Windows 下 asyncio.add_signal_handler 抛出 NotImplementedError 导致后端崩溃,改用 signal.signal() 兼容处理
  • 进程管理适配:使用 taskkill / wmic 替代 Unix-only 的 SIGKILL / pgrep,确保 Windows 上能正确管理后端进程
  • 路径分隔符修复:插件目录路径从硬编码 / 改为 path.join(),避免 Windows 路径拼接错误
  • Python 默认路径优化:Windows 下自动使用 python(而非 python3),减少首次配置成本
  • 提示信息本地化:设置页面占位符和错误提示根据平台自动切换(pip vs pip3,路径格式等)

安装方式

方式一(推荐):下载 realtime-transcription.zip,解压后将 realtime-transcription 文件夹整体复制到:

<你的笔记库>\.obsidian\plugins\n```

**方式二**:分别下载 `main.js`、`manifest.json`、`styles.css` 三个文件,手动放入:

<你的笔记库>.obsidian\plugins
ealtime-transcription\n```
然后将仓库中的 backend/ 文件夹也复制到该目录。

v1.0.2 · macOS / Linux 推荐版

04 Mar 09:06

Choose a tag to compare

⚠️ 平台说明

本版本适用于 macOS 和 Linux 用户(推荐)。
Windows 用户请使用 v1.0.3,其中包含 Windows 专项适配。


2026-03-04 补丁:修复模型下载按钮

  • 修复 Python 3.9 兼容性问题(str | None 语法导致脚本启动即崩溃)
  • 下载脚本加入 60 秒连接超时,防止网络卡住后永久挂起
  • 替换失效的 GitHub 镜像(ghgo.xyz → ghproxy.net / mirror.ghproxy.com)
  • 修复下载前不检查脚本是否存在导致的静默失败
  • Python 进程改为无缓冲输出,下载进度实时显示

修复

  • 修复后端进程累积:添加 PID 文件机制,插件重载时自动清理孤儿 server.py 进程,防止多实例累积吃 CPU
  • 修复停止录制后 WebSocket 无限重连stopRecording() 现在会完整清理 WebSocket 连接和后端进程
  • 修复顶部控制栏滚动消失:header 和 control-bar 设为 flex-shrink:0 + overflow:hidden 常驻固定
  • 智能自动滚动:用 pinnedToBottom 标志替代阈值检测,浏览上方卡片时不自动滚动,点击箭头按钮或手动滚回底部才恢复

安装方式

下载 main.jsmanifest.jsonstyles.css,放入:

<你的笔记库>/.obsidian/plugins/realtime-transcription/

然后将仓库中的 backend/ 文件夹也复制到该目录。

安装后端依赖:

pip3 install -r backend/requirements.txt

v1.0.1 · 稳定性修复

04 Mar 03:20

Choose a tag to compare

v1.0.1 修复更新

Bug 修复

  • 英文误判为中文:修复 normalizeLanguage 对纯英文语音的语言标签判断
  • 后端启动崩溃:补全 server.py 缺失的 --partial-profile 和 --recognition-mode 参数
  • WebSocket 断连体验:重连间隔缩短至 1.5s,增加重连进度提示
  • 卡字 bug:修复 flushPendingTranscript 未重置 partial 状态
  • 课堂远距离不出字:移除 energy_threshold 静音过滤
  • realtimePreview 关闭时零输出:partial 不再被丢弃,改为静默累积并定时提交
  • 防文本重复:新增 flush_partial 后端命令,flush 后清空音频缓冲区
  • flush 定时器无限延迟:静默模式下定时器不再被后续 partial 重置
  • 摘要模式泄漏:修复 commitStreamingTranscript 未移除 .streaming 类导致摘要模式仍显示转录卡片

安装方法

  1. 下载 realtime-transcription-v1.0.1.zip 并解压
  2. 将文件夹复制到 <你的Vault>/.obsidian/plugins/ 目录
  3. pip3 install -r backend/requirements.txt
  4. 在插件设置中配置模型路径后启用

详见 README

v1.0.0 · 首个正式版本

03 Mar 14:21

Choose a tag to compare

实时语音转写 v1.0.0

基于 SenseVoice-Small + Silero VAD + sherpa-onnx 的本地实时语音转写 Obsidian 插件。

功能

  • 实时语音转写(中/英/日/韩/粤语)
  • 边说边显示实时预览(稳态/极速两档)
  • 可选自动翻译(调用 OpenAI 兼容 API)
  • 可选 AI 文本润色
  • 可选自动摘要(按字数阈值触发)
  • 导出为 Obsidian 笔记(时间戳/AI/手动命名)
  • 历史记录持久化

安装方法

  1. 下载 realtime-transcription-v1.0.0.zip 并解压
  2. 将文件夹重命名为 realtime-transcription
  3. 复制到 <你的Vault>/.obsidian/plugins/ 目录
  4. pip3 install -r backend/requirements.txt
  5. 在插件设置中配置模型路径后启用

详见 README


Realtime Transcription v1.0.0

First release. Local, offline Obsidian plugin for real-time speech recognition.

Installation

  1. Download and extract realtime-transcription-v1.0.0.zip
  2. Rename folder to realtime-transcription
  3. Copy to <your-vault>/.obsidian/plugins/
  4. pip3 install -r backend/requirements.txt
  5. Configure model path in plugin settings and enable

See README for full instructions.