dsh-vox-input:零服务器的 DSH Web 语音输入

前言

在 DSH Web composer 中添加语音输入功能通常需要集成第三方语音识别服务,这往往涉及 API 密钥管理、服务器部署成本以及数据隐私问题。dsh-vox-input 提供了一种基于浏览器原生能力的替代方案。

这是什么

dsh-vox-input 是一个为 DSH Web composer 提供语音转文本输入的客户端插件。它运行在浏览器端,不依赖任何外部服务器、API 密钥或模型下载,直接将麦克风采集的语音转化为文本并填充到输入框中。

核心功能

  • 浏览器原生识别:基于 Web Speech API,兼容 Chrome/Edge。
  • 零依赖运行:不需要服务器、不需要 API 密钥、不需要下载模型,数据不出本地。
  • 可视化控制:提供麦克风波形控制界面。
  • 实时字幕流:识别过程中在上方显示实时字幕。
  • 智能回填:识别结果按句子自动追加到输入框。
  • 多语言支持:支持中文、英文及自动检测语言切换(zh-CN / en-US / auto)。

安装与启用

  1. 将插件目录软链接到 Web 配置目录:
    ln -s <this-dir> "$DSH_HOME/profiles/web/node_modules/dsh-vox-input"
  1. 修改 $DSH_HOME/profiles/web/cordis.patch.yml,添加以下内容:
    # append to $DSH_HOME/profiles/web/cordis.patch.yml:
    #   - insert:
    #       - id: dsh-voice-input
    #         name: dsh-vox-input
  1. 重启 Web 服务:
    node <dsh>/lib/bin.js web

典型用法

  1. 打开 Web composer,在工具栏找到麦克风图标并点击。
  2. 默认识别中文,点击小标签可在 zh-CN / en-US / auto 之间切换。
  3. 开始说话,上方会显示实时字幕流。
  4. 暂停约 1 秒后,句子会自动追加到输入框。
  5. 约 4 秒静音后,会话自动结束。

适用场景与注意

  • 适用场景:适合需要在 DSH Web composer 中快速输入文本,且注重隐私或希望减少服务器开销的开发者。
  • 插件机制:这是一个客户端 UI 插件(双重插件),主机部分为空壳,核心逻辑位于 client.js。模块注册 ID 必须与 package.json.name 完全一致。
  • 兼容性:非 Chromium 浏览器会显示静音徽章。

结语

dsh-vox-input 通过浏览器原生能力实现了语音输入,降低了 DSH 生态的接入门槛。更多细节可参考其 GitHub 仓库或社区目录。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜