【免费下载链接】vocalinux
Free, open-source, 100% offline voice dictation for Linux. Speak and type anywhere via whisper.cpp, Whisper & VOSK engines, GPU-accelerated, works on X11 + Wayland!
项目地址:
https://gitcode.com/gh_mirrors/vo/vocalinux
点击查看 免费下载
Vocalinux 是一款免费、开源、100% 离线的 Linux 语音听写工具,按住快捷键说话,文字就会出现在当前窗口。除了本地识别,它还内置了 Remote HTTP API 引擎:你可以自建语音识别服务器,把最耗算力的 Whisper 转录环节交给网络中任意一台更强的机器,笔记本和手机再共享同一台服务器——全程不经过任何第三方云服务。本文从零讲清楚三种自建服务器方案、客户端配置、手机配对和常见故障排查。

Remote HTTP API 如何工作:音频不落地,算力可外移
启用 Remote API 引擎后,Vocalinux 的工作流程是:
关键点:语音活动检测(VAD)和分句始终留在本地,只有 ASR 转录这一步是远程的。这样做的收益很直接:
- ⚡ 用更强的 GPU 机器做转录,响应更快;
- 📱 一套模型多台客户端共享,笔记本、手机说出来的文字风格一致;
- 🪶 笔记本不再承担模型加载和 GPU 占用的开销。
核心实现在 recognition_manager.py,协议细节(请求/响应格式、超时参数)完整收录在官方文档 HTTP_REMOTE.md 中。
三种自建语音识别服务器方案对比
Vocalinux 原生兼容两种 API 格式:OpenAI 兼容(POST /v1/audio/transcriptions)和 whisper.cpp server(POST /inference)。常见部署方案有三种:
| whisper.cpp server | /inference | 最通用的自建 Whisper 服务,模型自由 | ⭐⭐ |
| Speaches / LocalAI | /v1/audio/transcriptions | 一行 docker 命令起步,想要标准 OpenAI 接口 | ⭐ |
| FunASR / SenseVoice | /v1/audio/transcriptions | 中文识别,支持 Paraformer / SenseVoice 模型 | ⭐⭐⭐ |
方案一:whisper.cpp server(最常用)
克隆 whisper.cpp 仓库后编译自带 HTTP 服务器,下载一个模型即可:
make server
./models/download-ggml-model.sh medium.en
./build/bin/whisper-server \\
–model models/ggml-medium.en.bin \\
–host 0.0.0.0 \\
–port 8080
服务监听 http://<服务器IP>:8080,端点是 /inference。
方案二:OpenAI 兼容服务器(一行命令起步)
任何实现 POST /v1/audio/transcriptions 的服务都可以,比如用 Docker 跑 Speaches:
docker run –rm -p 8000:8000 ghcr.io/speaches-ai/speaches:latest
方案三:FunASR / SenseVoice(中文识别优选)
FunASR 可以启动本地 OpenAI 兼容转录服务,让音频留在自己的机器或局域网内:
pip install 'torch>=2.13.0' torchaudio
pip install funasr vllm fastapi uvicorn python-multipart
funasr-server –device cuda
服务默认监听 http://localhost:8000,Vocalinux 里把 Model 填 sensevoice 即可;只有 CPU 时加 –device cpu 测试,局域网里另一台 GPU 主机同样适用。
⚠️ 网络三件事:防火墙放行端口(如 ufw allow 8080/tcp);绑定 0.0.0.0 才允许其他机器访问;如果手机也要用,记得在手机 App 上禁用明文的 HTTP 连接,大多数移动听写应用默认只接受 HTTPS。
客户端配置:Vocalinux 中接入自建服务器
打开 Vocalinux,进入 Settings → Speech Engine → Remote Server,面板长这样:

具体四步:
API Key 为可选项,配置后以 Authorization: Bearer <key> 发送。填完点 Test Connection,成功后设置自动保存并立即初始化引擎,马上就能开始说话;关掉开关则自动回到本地引擎。
该面板由 _build_remote_server_section() 构建,想改代码行为可以从这里入手。
不改界面:直接编辑配置文件
同样的选项存在于 ~/.config/vocalinux/config.json:
{
"speech_recognition": {
"engine": "remote_api",
"remote_api_url": "http://192.168.1.100:8080",
"remote_api_key": "",
"remote_api_endpoint": "/inference",
"remote_api_model": "whisper-1"
}
}
改完文件后需要重启 Vocalinux 生效。
不开 GUI 先验证:curl 一行测试
配置前可以先在命令行确认服务器本身没问题:
# whisper.cpp server
curl -F file=@sample.wav -F temperature=0.0 -F response_format=json \\
http://192.168.1.100:8080/inference
# OpenAI 兼容 / FunASR
curl -F file=@sample.wav -F model=sensevoice \\
http://localhost:8000/v1/audio/transcriptions
正常响应形如 {"text": "…"}。另外两个行为细节值得知道:连接测试超时 5 秒、转录请求超时 30 秒(超时后该句丢弃、下一句重发);语言选 auto 时不发送 language 字段,由服务器自动检测。
手机电脑共享:一台服务器,处处说话
这是 Remote HTTP API 最好玩的地方:因为 Whisper 的 HTTP 格式足够开放,同一台自建服务器可以同时服务电脑和手机。
- 🖥️ 电脑:Vocalinux 指向服务器,配置如上节;
- 📱 手机:Android 上 Dictate、Transcribro 等应用说 OpenAI 兼容 Whisper 协议;iOS 可以用 Shortcuts 方案指向同一端点。
跑一台 Whisper 服务器,笔记本和手机都指过去,各处听写体验一致,而音频从头到尾没有离开你自己的网络。
懒人玩法:Vocalinux 内置的本地 VocaGateway
Vocalinux 还能从 Settings → Speech Model → Advanced 一键拉起本地 VocaGateway 容器(优先 podman、回退 docker),管理逻辑在 gateway_embed/manager.py。它自带手机配对功能:开启 Allow LAN access for Phone 后,gateway 会发布到局域网并给出配对 URL 和 Bearer token(QR 安全格式,解码逻辑见 pairing.py),手机扫码即连,模型还在下载时就能先配对。
两个注意点:
- 退出 Vocalinux 不会停止容器(compose 配置为 restart: unless-stopped),需要时请手动用托盘菜单的 Stop local Gateway 停止;
- 网关端口 8765 只在可信网络开放,永远不要暴露到公网。
常见问题排查清单
遇到 Remote API 报错时,先看日志:日志文件在 ~/.local/share/vocalinux/vocalinux.log,用内置日志查看器(Settings → Tray 菜单 View Logs)按模块过滤最方便:

| 连接测试失败 | 主机/端口错误、防火墙、服务器没启动 | 在客户端 curl <url> 验证,查服务器日志 |
| HTTP 401 / 403 | API Key 缺失或错误 | 检查 API Key 字段与服务器端配置 |
| 首次发送 404 | 端点格式不匹配 | 切换 API Endpoint 为你服务器实际暴露的格式 |
| 转录结果总是空的 | 服务器拒绝了 WAV | 确认服务器接受 16 kHz 单声道 16-bit WAV |
| 第一句特别慢 | 服务器模型冷启动 | 听写前先预热服务器 |
| 外语出现乱码 | language 设置不对 | 把语言从 auto 改成明确语言 |
完整排障表见 HTTP_REMOTE.md。
安全提醒:私有语音别裸奔
- 音频以原始 WAV 传输,链路上任何人都能听到——可信局域网之外必须上 TLS(Caddy、nginx、Traefik 前置终结)并强制 API key;手机 App 普遍拒绝明文 HTTP,局域网用也建议直接上 TLS;
- API key 以明文 JSON 存在 ~/.config/vocalinux/config.json,请按对待磁盘上任何密钥的方式来保护这个文件;
- Vocalinux 不做 TLS 证书 pin 校验,自签证书需要导入系统信任库。
总结
| 快速体验远程转录 | Docker 跑 Speaches → /v1/audio/transcriptions |
| 追求最强控制力 | whisper.cpp server → /inference |
| 中文识别 | FunASR/SenseVoice → Model 填 sensevoice |
| 手机电脑共享 | 同一台服务器 + 移动端 OpenAI 兼容 App,或内置 VocaGateway 扫码配对 |
Vocalinux 默认就是纯本地的,Remote HTTP API 只是给你一个可选的"外脑"。自建服务器之后,你的声音只在自己的网络里流动,算力却可以随你放到任何一台机器上——这就是开源工具给你的自由度。
赞
【免费下载链接】vocalinux
Free, open-source, 100% offline voice dictation for Linux. Speak and type anywhere via whisper.cpp, Whisper & VOSK engines, GPU-accelerated, works on X11 + Wayland!
项目地址:
https://gitcode.com/gh_mirrors/vo/vocalinux
点击查看 免费下载
相关推荐
MPC-BE 媒体播放器完整使用指南:从入门到精通
MPC-BE完全攻略:从零开始掌握Windows终极播放器
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
网硕互联帮助中心




评论前必须登录!
注册