English | Русский
Website: veyrotext.vercel.app
Veyro is a desktop app for voice dictation. You speak — it transcribes your speech and inserts the result into the active window: a document, chat, browser, or code editor.
The app runs in the background and is opened from the system tray (Windows/Linux) or the menu bar (macOS).
- Launch Veyro and turn it on in settings.
- Focus the window where you want text.
- Start dictating — the transcribed text is injected into the input field automatically.
| Mode | Behavior |
|---|---|
| Push-to-talk (PTT) | Hold a hotkey while speaking; release to transcribe and inject. Can be switched to tap-to-start / tap-to-stop. |
| Continuous | Speak naturally; after a pause, speech is transcribed and inserted automatically. |
The hotkey is configurable (default: Shift+F1). On macOS, Caps Lock as the dictation key is supported.
PTT plays short start/stop cues.
Two providers:
| Provider | Notes |
|---|---|
| On device | Works offline. Models are downloaded from the app. GPU acceleration (Vulkan, DirectML, CUDA, CoreML) speeds up inference when available. |
| OpenAI Cloud | Transcription via OpenAI’s API. Requires an API key and internet. |
Local model families (Voice settings):
- Whisper (whisper.cpp) — Base through Large v3 / Turbo; broad language support; Q4/Q5/Q8 quantizations.
- Sherpa-onnx — Parakeet TDT 0.6B v3 and Qwen3-ASR bundles (INT8 / FP16 / FP32); English-focused or multilingual depending on model.
Recognition language: automatic, Russian, English, or another fixed language from the list.
Voice activity (VAD): Silero VAD by default (with a quiet-frame WebRTC pre-filter); optional WebRTC-only mode. Threshold can be auto or manual, with calibration from the mic.
A transcription dictionary (dictionary.toml) helps with names, jargon, and custom vocabulary.
After transcription, text can be refined further:
| Mode | What it does |
|---|---|
| Original | Raw STT output |
| Basic cleanup | Trims filler, fixes spacing and casing |
| AI optimization | AI removes disfluencies and ASR mistakes while keeping meaning |
| Custom skill… | Your own processing pipeline from a .md skill file (formal tone, brevity, etc.) |
For AI modes you choose a provider:
- OpenAI — via API (key required)
- Local LLM — on-device model (downloaded from the app)
Optional Silero TE adds on-device punctuation and text enhancement after STT (downloaded when enabled).
Skills can be imported from disk, the in-app catalog, or a veyro:// deeplink; they live in your user skills folder.
- Spoken punctuation — say “period”, “comma”, etc. to insert punctuation
- Numbers as words — e.g.
123→ “one hundred twenty-three” (locale-dependent) - Enter emulation — phrases like “new line” send Enter
Open Tools from the main settings window (or the status bar) for utilities that reuse the same speech engine and text pipeline as live dictation.
Transcribe audio files to text — queue multiple files, read the result, and copy to the clipboard. Processing uses your current STT provider and text mode (including AI optimization and custom skills when configured).
- Input: drag-and-drop or file picker — common formats such as WAV, MP3, OGG/Opus, FLAC, M4A, AAC, WMA.
- Progress: decoding and recognition show stage labels and a percentage for long files.
- Safety: file transcription waits while PTT dictation is active; one file runs at a time.
- Auto transcription: optional watch of Download / Telegram Desktop (and custom) folders. When enabled, new
.ogg/.oga/.opusfiles are enqueued automatically. Results appear in Voice history and can be opened from the tray (Recent transcripts). Default: off; local models only; source files are not deleted.
Transcribe audio with segment timestamps and export .srt subtitles.
- Preview timeline with cue editing.
- Advanced layout: smart split, line limits, reading-tail options.
- Same STT provider and language settings as live dictation; if Auto language returns empty speech, the app can prompt for a fixed language and retry.
Offline stem separation for music tracks — downloadable ONNX models, progress UI, and preview/download for vocals and instrumental stems.
- Models include Google ReFormer (quality / speed) and Hybrid Transformer Demucs.
- Shown in Tools when the build includes local separation support.
Transcribed text is delivered to the focused window by:
- Clipboard (paste)
- Simulated keystrokes
On macOS, keyboard injection requires Accessibility permission.
Two UI modes:
| Mode | Audience |
|---|---|
| Standard | Simplified capture and text options |
| Expert | Full Capture / Transform / Status controls |
Also available:
- Microphone — device selection and level meter
- UI language — Russian or English
- Launch at login
- Notifications for app events
- Advanced audio — preprocessing before recognition, VAD engine and threshold
- Weak PC — optional segment queue spill to disk when the pipeline is busy
- Tools — voice files, SRT export, and stem separation
The Status tab shows live diagnostics (CPU/RAM, capability chips), an input level graph with VAD threshold, and a collapsible activity log.
- OpenAI API keys are stored in the OS secure store (Windows Credential Manager, macOS Keychain, Linux Secret Service), not in plain text.
- With local speech models (Whisper, Parakeet TDT, Qwen3-ASR via sherpa-onnx), local LLM, and Silero TE, speech and text stay on your computer.
- Stem separation also runs on device (ONNX); audio is not uploaded for that tool.
- Settings live in your user profile (
AppData\Veyroon Windows, equivalent paths on macOS and Linux).
| OS | Install formats |
|---|---|
| Windows | NSIS installer, portable .exe |
| macOS | .app, .dmg (macOS 11+) |
| Linux | .deb, AppImage |
Download installers from GitHub Releases.
Installed builds can check for signed updates on startup. See docs/UPDATER.md.
- English: docs/BUILD.en.md
- Русский: docs/BUILD.md
We welcome pull requests. Read CONTRIBUTING.md and CODE_OF_CONDUCT.md. Security reports: .github/SECURITY.md.
MIT · © 2026 MKdee Tech

