
voxtype
按住说话,松手出字,Wayland 离线听写
voxtype 是一款面向 Linux Wayland 桌面的离线语音转文字工具,用 Rust 编写。它解决的核心问题是:在 Wayland 合成器(如 Hyprland、Sway、GNOME、KDE)下,缺少一个简单可靠、不依赖云端的按键说话(push-to-talk)听写方案。用户按住快捷键说话,松开即把识别结果直接输入到当前光标位置,全程本地推理,音频不出本机。它通过模拟键盘输入或调用无障碍接口把文字送进任意应用,因此不挑编辑器、终端或聊天窗口。项目支持离线语音识别模型,兼顾隐私与低延迟,并针对 Wayland 的输入限制做了适配,避免了 X11 时代工具在 Wayland 上无法注入按键的痛点。对经常写代码、写文档、做会议记录又注重隐私的 Linux 用户来说,它把语音输入变成了系统级能力。
项目数据
使用教程
环境要求
- Linux 桌面环境(Wayland 合成器:Hyprland、Sway、GNOME、KDE 等)
- 音频服务:PipeWire 或 PulseAudio
- 打字后端:wtype(推荐)或 dotool / ydotool + 守护进程 / wl-clipboard
- 从源码构建需安装 Rust 工具链(rustup)
- 磁盘空间:量化模型约 1.5 GB(q4f16)
安装与启动步骤
-
1安装打字后端
按发行版安装 wtype 与 wl-clipboard;Fedora 用 dnf、Arch 用 pacman,包名相同
sudo apt install wtype wl-clipboard -
2安装 Rust 工具链
源码构建才需要;使用官方 rustup 脚本安装,安装后重新打开终端
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -
3确认音频服务
确保 PipeWire 或 PulseAudio 正在运行,否则无法采集麦克风音频;无需额外命令
-
4编译发布版
在源码目录执行;如需 GPU 加速改用 gpu-cuda、gpu-hipblas 或 gpu-metal 特性
cargo build --release -
5启动守护进程
前台运行,按 Ctrl+C 停止;首次使用会自动加载所选引擎的模型
./target/release/voxtype -
6按键说话验证
按住 ScrollLock 说话,松开后文字出现在光标处;无法输入时写入剪贴板
关键配置
| 配置项 | 必填 | 说明 | 示例 |
|---|---|---|---|
engine | 否 | 选择语音识别引擎,可用的 ONNX 镜像内置多个引擎 | engine = "whisper" |
VOXTYPE_GPU | 否 | Whisper-only AppImage 中启用 GPU 加速的环境变量 | VOXTYPE_GPU=1 |
config.toml 路径 | 否 | 用户配置文件位置,参考默认注释配置修改 | ~/.config/voxtype/config.toml |
如何确认成功
运行后进程以前台守护方式常驻;按住 ScrollLock 说话并松开,光标处或剪贴板出现识别文字即成功。
常见问题
Q:Wayland 下文字输入不进去怎么办?
A:安装 wtype(推荐,CJK/Unicode 支持最好);非美式键盘布局改用 dotool;X11 或作为兜底可用 ydotool 加守护进程;还可安装 wl-clipboard 做剪贴板兜底。
Q:如何开启 GPU 加速?
A:编译时加 --features gpu-cuda(NVIDIA)、gpu-hipblas(AMD)或 gpu-metal(Apple Silicon);Whisper-only AppImage 设置 VOXTYPE_GPU=1。
Q:怎么切换识别引擎?
A:在 config.toml 中设置 engine = "whisper" 或 engine = "parakeet";ONNX 版 AppImage 已附带 Vulkan Whisper 二进制,无需更换镜像。
Q:怎么停止程序?
A:它是前台守护进程,按 Ctrl+C 即可停止。
注意事项
- 多数用户建议直接安装预编译包,完整的发行版依赖矩阵见 docs/INSTALL.md。
- 也可使用 AppImage 版本,运行 ~/.local/bin/voxtype setup 下载模型并配置服务。
- 默认热键为 ScrollLock,可在配置中改成自己的热键。
- 识别全程本地推理,无云端、无订阅、无遥测;量化模型约 1.5 GB。
核心亮点
- 纯本地离线识别,音频不上传,隐私友好
- 专为 Wayland 合成器适配,解决 X11 工具无法注入按键的问题
- push-to-talk 交互简单,识别结果直接输入当前光标处,不挑应用
不足之处
- 仅支持 Linux/Wayland,X11 和 Windows/macOS 用户无法使用
- 离线模型体积和首次配置有一定门槛,中文等非英语识别效果取决于所选模型
适用场景
- 在 Hyprland/Sway 下写代码或文档时,用快捷键口述代替键盘输入
- 会议或灵感记录时快速把语音转成文字粘贴到笔记应用
- 注重隐私的用户在无网络环境下进行本地语音听写
替代项目
nerd-dictation、whisper.cpp
项目介绍
下一篇:parakeet-rs
同类项目推荐
obs-localvocal
开源
直播录屏时,本地AI实时生成字幕,保护隐私零延迟
OBS plugin for local speech recognition and captioning using AI
LiveCaptions-Translator
开源
实时捕获系统音频,一键翻译成你懂的语言
Lightweight and powerful real-time audio/speech translation tool based on Windows Li···
speechbrain
开源
一站式 PyTorch 语音工具箱,快速搞定识别、说话人验证等任务
A PyTorch-based Speech Toolkit
whisper-diarization
开源
给语音转写加上说话人标签,会议记录一目了然
Automatic Speech Recognition with Speaker Diarization based on OpenAI Whisper