Skip to main content

Speech-to-text application with push-to-talk hotkey for Linux (X11/Wayland)

Project description

TranscribrAI

Speech-to-text application with push-to-talk hotkey for Linux (X11/Wayland).

Features

  • Push-to-Talk Recording: Hold a hotkey to record, release to transcribe
  • Local Transcription: Uses OpenAI Whisper (via faster-whisper) - no cloud required
  • Wayland & X11 Support: Works on both display servers
  • Configurable Hotkeys: Set your preferred key combination
  • System Tray: Minimize to tray for quick access
  • German & English: Full language support

Installation

pip install transcribrai

System Dependencies

Fedora/RHEL:

sudo dnf install portaudio-devel ydotool

Ubuntu/Debian:

sudo apt install portaudio19-dev ydotool

Arch Linux:

sudo pacman -S portaudio ydotool

Wayland Setup

For global hotkeys on Wayland, add your user to the input group:

sudo usermod -aG input $USER
# Log out and back in

Start the ydotool daemon for keyboard simulation:

systemctl --user enable --now ydotool

Usage

transcribrai

Or run directly:

python -m transcribrai

Default Hotkey

  • Ctrl+Shift+Space: Hold to record, release to transcribe

Configure in Settings or edit ~/.config/transcribrai/config.json.

Configuration

Configuration file: ~/.config/transcribrai/config.json

{
  "hotkey": "ctrl+shift+space",
  "audio": {
    "device_index": null
  },
  "transcription": {
    "model_size": "base",
    "language": "de"
  }
}

Whisper Models

Model Size Speed Accuracy
tiny 75 MB Fastest Lower
base 150 MB Fast Good
small 500 MB Medium Better
medium 1.5 GB Slow High
large-v3 3 GB Slowest Highest

Requirements

  • Python 3.11+
  • Linux (X11 or Wayland)
  • PipeWire or PulseAudio
  • PortAudio library

License

MIT License

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

transcribrai-0.1.0.tar.gz (48.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

transcribrai-0.1.0-py3-none-any.whl (53.8 kB view details)

Uploaded Python 3

File details

Details for the file transcribrai-0.1.0.tar.gz.

File metadata

  • Download URL: transcribrai-0.1.0.tar.gz
  • Upload date:
  • Size: 48.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.9

File hashes

Hashes for transcribrai-0.1.0.tar.gz
Algorithm Hash digest
SHA256 5eca7d61a3fa8a9fa222be441c1d2b30ced0478b87a04e4e65d67e2aa0f75000
MD5 02007f105f34823966d1ebf185f76fb7
BLAKE2b-256 d02fe117aada4594fd6f53bfb128331bdf2fb81b52752d7097a1b47d1b026d30

See more details on using hashes here.

File details

Details for the file transcribrai-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: transcribrai-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 53.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.9

File hashes

Hashes for transcribrai-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 48e2a4fe506b2b21ea784becf9bb9e6f02a8487277ba4b0d839255f02add9d00
MD5 d674bc9234639b6755b3c94b88d90e77
BLAKE2b-256 76ab501fecfd2a734b08493e5e7dbe6dcc8b2e309bee40f6c7505e509122624b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page