
Windows 11 全球按键语音转文字。按住键,说话,放开,文字稿会被输入到重点内容中,包括全屏游戏。
概览
按住说话(应用最小化或不聚焦时有效)。发布时,音频会发送到 Fish Audio STT,然后输入到有焦点的窗口——包括全屏游戏。可选地运行为 Claude Desktop、Claude Code、OpenClaw 等工具,读取你的 STT 历史记录。 - Windows 11(设计用于;其他Windows版本可能兼容)- Python - Fish Audio API密钥 1. 按 ,搜索 ,打开。2. → → 3.名称:FISH_AUDIO_API_KEY 值:你的 https://fish.audio/app/api-keys 键 4.所有对话框中的 OK。终端(以及这个应用)使变量可见。 仅会话(PowerShell,非永久性): Windows会对其他程序隐藏键盘状态。如果右Ctrl在游戏聚焦时无效,请选择高点启动(可选): 编辑config.ini文件夹中的文件并保存。大多数设置——包括——会立即应用;你不需要重启程序。config.example.ini中有一个完全注释的模板。
概述(AI 翻译)
Windows 11 的全局按键通话语音转文字。
按住右Ctrl即可通话(应用最小化或非聚焦状态时有效)。发布时,音频会发送到Fish Audio STT,然后输入到有焦点的窗口——包括全屏游戏。可选地作为MCP服务器运行,这样Claude Desktop、Claude Code、OpenClaw等工具可以读取你的STT历史记录。
特色
| 特色 | 详情 |
|---|---|
| 全局快捷键 | 右Ctrl按住听话;右Shift取消 |
| 滚动缓冲区 | 可配置的掷骰前/后滚动(默认 0.5 s),避免单词被剪裁 |
| 语音门 | 当只有环境噪音时跳过API(明显的软提示) |
| 音频准备 | 归一化安静语音,然后提升所有语音(~+30% 默认,分贝感知) |
| 游戏友好型输入 | SendInputUnicode 按键下键 / 按键上,可配置延迟和按键 |
| 并行作业 | 在上一个剪辑仍在处理时开始新的保持 |
| 柔和提示 | 用于错误、取消和无语音的独特低音量声音 |
| API 密钥安全 | 仅读取环境中的 FISH_AUDIO_API_KEY — ** 从未保存到磁盘** |
本页由 AI 翻译,技术细节请以原文为准。
README
以下为原文 README 节选,完整内容请查看原文。
Elo STT Passive v1.0
Global push-to-talk speech-to-text for Windows 11.
Hold Right Ctrl to talk (works while the app is minimized or unfocused). On release, audio is sent to Fish Audio STT, then typed into whichever window has focus—including fullscreen games. Optionally run as an MCP server so Claude Desktop, Claude Code, OpenClaw, and similar tools can read your STT history.
Features
| Feature | Details |
|---|---|
| Global hotkey | Right Ctrl hold-to-talk; Right Shift cancels |
| Rolling buffer | Configurable pre/post roll (default 0.5 s) so words are not clipped |
| Speech gate | Skips the API when only ambient noise is present (distinct soft cue) |
| Audio prep | Normalizes quiet speech, then boosts all speech (~+30% default, dB-aware) |
| Game-friendly typing | SendInput Unicode key-down / key-up with configurable delay & hold |
| Parallel jobs | Start a new hold while a previous clip is still processing |
| Soft cues | Distinct low-volume sounds for error, cancel, and no-speech |
| API key safety | Reads FISH_AUDIO_API_KEY from the environment only — never saved to disk |
| MCP | Query recent results, time windows, ranges, search; timestamps on hold start/end |
| Config | All knobs in config.ini next to the program |
Requirements
- Windows 11 (designed for; other Windows versions may work)
- Python 3.10+
- A Fish Audio API key
Install
cd "C:\Projects\Elo STT Passive\repo"
python -m venv .venv
.\.venv\Scripts\Activate.ps1
pip install -r requirements.txt
Set the API key (Windows 11)
- Press Win, search for environment variables, open Edit the system environment variables.
- Environment Variables… → under User variables → New…
- Name:
FISH_AUDIO_API_KEY
Value: your key from https://fish.audio/app/api-keys - OK out of all dialogs. Restart the terminal (and this app) so the variable is visible.
Session-only (PowerShell, not permanent):
$env:FISH_AUDIO_API_KEY = "your_key_here"
Run
Desktop (Notepad and other unelevated apps):
python elo_stt_passive.py
In some fullscreen games, Windows hides keyboard state from other programs. If Right Ctrl does nothing while the game is focused, start elevated (optional):
python elo_stt_passive.py --elevate
| Action | Result |
|---|---|
| Hold Right Ctrl | Record (includes buffer before the press) |
| Release Right Ctrl | Transcribe → type into the focused app |
| Right Shift while holding Right Ctrl | Cancel; soft cancel sound |
| Ctrl+C in the console | Quit |
Configuration
安装
This server does not publish a one-line install command.
Open the repository installation guide 新手?先看 mcpskill.org 教程 →配置
{
"mcpServers": {
"elo-stt-passive": {
"command": "C:\\Projects\\Elo STT Passive\\repo\\.venv\\Scripts\\python.exe",
"args": [
"C:\\Projects\\Elo STT Passive\\repo\\elo_stt_passive.py",
"--mcp",
"--skip-api-key-check"
]
}
}
}