voxtype(1)

πŸ“¦ version 1.1.1, in nixpkgs unstable

πŸ’… voxtype(1) β€” like, the push-to-talk voice-to-text era, bestie

okay so real talk, this is the voxtype manual page (section 1, General Commands Manual), and I'm gonna walk you through every single flag because you deserve the full picture, not the vibe-only summary. periodt. ✨


🌸 NAME 🌸

voxtype β€” push-to-talk voice-to-text for Linux. yes really, that's the whole name. iconic of it.


πŸŽ€ SYNOPSIS πŸŽ€

voxtype [-c|--config] [-v|--verbose]... [-q|--quiet] [--model]
[--engine] [--language] [--translate] [--threads] [--gpu-isolation]
[--gpu-device] [--on-demand-loading] [--secondary-model]
[--eager-processing] [--no-whisper-context-optimization]
[--initial-prompt] [--flash-attention] [--whisper-mode]
[--remote-endpoint] [--remote-model] [--remote-api-key]
[--soniox-api-key] [--hotkey] [--toggle] [--no-hotkey] [--cancel-key]
[--model-modifier] [--audio-device] [--max-duration] [--audio-feedback]
[--no-audio-feedback] [--pause-media] [--duck-media]
[--duck-media-volume] [--duck-media-fade-ms] [--clipboard] [--paste]
[--restore-clipboard] [--restore-clipboard-delay-ms] [--driver]
[--auto-submit] [--no-auto-submit] [--fallback-to-clipboard]
[--no-fallback-to-clipboard] [--paste-keys] [--file-path] [--file-mode]
[--pre-type-delay] [--wtype-shift-prefix] [--type-delay]
[--dotool-xkb-layout] [--dotool-xkb-variant] [--eitype-xkb-layout]
[--eitype-xkb-variant] [--pre-output-command] [--post-output-command]
[--pre-recording-command] [--wait-for-modifier-release]
[--no-wait-for-modifier-release] [--modifier-release-timeout-ms]
[--spoken-punctuation] [--shift-enter-newlines]
[--no-shift-enter-newlines] [--smart-auto-submit]
[--no-smart-auto-submit] [--filter-fillers] [--no-filter-fillers]
[--append-text] [--vad] [--vad-threshold] [--vad-backend]
[--vad-min-speech-ms] [-h|--help] [-V|--version] [subcommands]

look at all those flags. she's got range. πŸ¦‹


πŸ’– DESCRIPTION πŸ’–

voxtype is a push-to-talk voice-to-text tool for Linux. it's Optimized for Wayland, and works on X11 too β€” so like, she's flexible, she's generous, she shows up for everyone. 🫢


✨ OPTIONS ✨

  • -c, --config <FILE> β€” path to the config file, aka where your settings live
  • -v, --verbose β€” turn the verbosity up: -v = debug, -vv = trace. the more v's, the more she tells you πŸ’¬
  • -q, --quiet β€” quiet mode, which means errors only. she's being chill
  • -h, --help β€” print help. also: see a summary with -h πŸ‘€
  • -V, --version β€” print version

πŸ”₯ TRANSCRIPTION πŸ”₯

  • --model <MODEL> β€” override the model used for transcription. here's the breakdown: Whisper: tiny, base, small, medium, large-v3, large-v3-turbo (and the .en variants). Parakeet: parakeet-tdt-0.6b-v3, parakeet-tdt-0.6b-v3-int8. other engines take the directory-form names from voxtype info models (e.g., moonshine-base, cohere-transcribe-q4f16). a model from another engine selects that engine; a Whisper name only sets [whisper] model. and with record start, it applies to that one recording on any engine. yes, that's a lot. take a screenshot πŸ“Έ
  • --engine <ENGINE> β€” override the transcription engine. the lineup: whisper, parakeet, moonshine, sensevoice, paraformer, dolphin, omnilingual, cohere, openvino, soniox. so many engines, all valid, we love a diverse cast πŸ’œ
  • --language <LANG> β€” language for transcription (e.g., en, fr, auto, or comma-separated: en,fr,de)
  • --translate β€” translate non-English speech to English
  • --threads <N> β€” number of CPU threads for inference
  • --gpu-isolation β€” that's the whole entry, bestie, no blurb given πŸ«₯
  • --gpu-device <INDEX> β€” also just the flag, no description attached
  • --on-demand-loading β€” flag-only, no description in the source
  • --secondary-model <MODEL> β€” flag-only too, no blurb
  • --eager-processing β€” again: just the flag, nothing more

🧚 WHISPER 🧚

  • --no-whisper-context-optimization β€” no description given, just the flag ✨
  • --initial-prompt <PROMPT> β€” an initial prompt to give context for transcription. it hints at terminology, proper nouns, or formatting conventions. basically you're whispering the vibe into her ear beforehand πŸ’«
  • --flash-attention β€” flag only, no description
  • --whisper-mode <MODE> β€” flag only, no description
  • --remote-endpoint <URL> β€” flag only, no description
  • --remote-model <MODEL> β€” flag only, no description
  • --remote-api-key <KEY> β€” flag only, no description

🌈 SONIOX 🌈

  • --soniox-api-key <KEY> β€” the flag, and that's all she wrote

πŸ’… HOTKEY πŸ’…

  • --hotkey <KEY> β€” override the hotkey (e.g., SCROLLLOCK, PAUSE, F13, MEDIA, WEV_234, EVTEST_226)
  • --toggle β€” use toggle mode (press to start/stop) instead of push-to-talk (hold to record). choose your fighter πŸ₯Š
  • --no-hotkey β€” disable built-in hotkey detection (use compositor keybindings instead)
  • --cancel-key <KEY> β€” cancel key for aborting recording or transcription (e.g., ESC, BACKSPACE, F12)
  • --model-modifier <KEY> β€” modifier key for secondary model selection (e.g., LEFTSHIFT)

🎧 AUDIO 🎧

  • --audio-device <DEVICE> β€” audio input device name (or "default" for system default)
  • --max-duration <SECS> β€” flag only, no description given
  • --audio-feedback β€” enable audio feedback sounds (beeps when recording starts/stops). beep beep, she's live πŸ””
  • --no-audio-feedback β€” the off switch for those beeps, no description given
  • --pause-media β€” flag only, no description
  • --duck-media β€” flag only, no description
  • --duck-media-volume <PERCENT> β€” flag only, no description
  • --duck-media-fade-ms <MS> β€” flag only, no description

πŸ¦‹ OUTPUT πŸ¦‹

  • --clipboard β€” force clipboard mode (don't try to type)
  • --paste β€” force paste mode (clipboard + Ctrl+V)
  • --restore-clipboard β€” restore clipboard content after paste mode completes. it saves the clipboard before transcription and restores it after paste. so thoughtful πŸ’–
  • --restore-clipboard-delay-ms <MS> β€” flag only, no description
  • --driver <DRIVERS> β€” output driver order for type mode, comma-separated. available: wtype, dotool, ydotool, clipboard. example: --driver=ydotool,wtype,clipboard
  • --auto-submit β€” auto-submit (press Enter) after outputting transcribed text
  • --no-auto-submit β€” no description given, it's the counterpart bestie
  • --fallback-to-clipboard β€” fall back to clipboard if typing fails
  • --no-fallback-to-clipboard β€” no description given
  • --paste-keys <KEYS> β€” flag only, no description
  • --file-path <PATH> β€” file path for file output mode
  • --file-mode <MODE> β€” flag only, no description
  • --pre-type-delay <MS> β€” flag only, no description
  • --wtype-shift-prefix β€” prefix wtype output with a Shift key press/release. it's a workaround for apps (e.g., Discord) that drop the first CJK character. shoutout to the workaround girlies 🫑
  • --type-delay <MS> β€” flag only, no description
  • --dotool-xkb-layout <LAYOUT> β€” flag only, no description
  • --dotool-xkb-variant <VARIANT> β€” flag only, no description
  • --eitype-xkb-layout <LAYOUT> β€” flag only, no description
  • --eitype-xkb-variant <VARIANT> β€” flag only, no description
  • --pre-output-command <CMD> β€” flag only, no description
  • --post-output-command <CMD> β€” flag only, no description
  • --pre-recording-command <CMD> β€” flag only, no description
  • --wait-for-modifier-release β€” wait for modifier keys (Ctrl/Alt/Shift/Super) to be released before typing. this prevents transcribed text from triggering compositor or application keybindings when the hotkey is still held. it requires the user to be in the 'input' group, and is silently disabled otherwise β€” so like, no error, it just quietly doesn't do the thing. mind that ⚠️
  • --no-wait-for-modifier-release β€” no description given
  • --modifier-release-timeout-ms <MS> β€” flag only, no description

⭐ TEXT PROCESSING ⭐

  • --spoken-punctuation β€” enable spoken punctuation conversion (e.g., say "period" to get ".") β€” literally saying the punctuation out loud, she gets it πŸ’¬
  • --shift-enter-newlines β€” convert newlines to Shift+Enter instead of regular Enter
  • --no-shift-enter-newlines β€” no description given
  • --smart-auto-submit β€” enable smart auto-submit (say "submit" to press Enter)
  • --no-smart-auto-submit β€” no description given
  • --filter-fillers β€” filter common filler words ("uh", "um", "er", ...) from transcribed text. she's cleaning up your ums, we stan 🧹
  • --no-filter-fillers β€” no description given
  • --append-text <TEXT> β€” text to append after each transcription (e.g., " " for a trailing space). it's appended before auto_submit. useful for separating sentences when dictating incrementally. chef's kiss for long dictation sessions πŸ‘‘

🌸 VAD 🌸

  • --vad β€” enable Voice Activity Detection (filter silence before transcription)
  • --vad-threshold <THRESHOLD> β€” flag only, no description
  • --vad-backend <BACKEND> β€” flag only, no description
  • --vad-min-speech-ms <MS> β€” flag only, no description

πŸ‘‘ SUBCOMMANDS πŸ‘‘


🌈 EXTRA 🌈

πŸ’« QUICK START

  • voxtype β€” start daemon with hotkey detection
  • voxtype daemon β€” same as above (explicit)
  • voxtype record toggle β€” toggle recording (for compositor keybindings)
  • voxtype record start β€” start recording
  • voxtype record stop β€” stop recording and transcribe
  • voxtype record cancel β€” cancel current recording
  • voxtype status β€” show daemon status
  • voxtype setup β€” check dependencies and download models
  • voxtype config β€” show current configuration

πŸŽ€ EXAMPLES

  • voxtype setup model β€” interactive model selection (Whisper, Parakeet, or Moonshine)
  • voxtype setup waybar β€” show Waybar integration config
  • voxtype setup gpu β€” manage GPU acceleration (Vulkan/CUDA/MIGraphX)
  • voxtype setup onnx β€” switch between Whisper and ONNX engines
  • voxtype status --follow --format json β€” Waybar integration
see 'voxtype <command> --help' for more info on a command. see 'man voxtype' or docs/INSTALL.md for setup instructions. read the docs bestie, they're there for you 🫢

⭐ VERSION ⭐

v1.1.1


πŸ’œ AUTHORS πŸ’œ

shoutout to every single human who made this happen, no cap, all of them listed, none skipped:

Peter Jackson, Jean-Paul van Tillo, MΓ‘tΓ© RΓ©miΓ‘s, Rob Zolkos, Dan Heuckeroth, Igor Warzocha, Julian Kaiser, Kevin Miller, konnsim, reisset, Zubair, Loki Coyote, Umesh, Barrett Ruth, AndrΓ© Silva, Chmouel Boudjnah, Christopher Albert, Phuoc Thinh Vu, Alexander Bosu-Kellett, ayoahha, Toizi, kakapt, Rinor Maloku, Sami Jawhar, jan Lemata, Kai Stark, graysky


aaaand that's the page!! πŸ¦‹ this was voxtype version 1.1.1, dated voxtype(1) in the footer, drop number 1 in the General Commands Manual β€” mwah, go dictate something iconic, ily bye πŸ’–πŸ‘‘

πŸ“¦ where this page comes from