Skip to main content

Handsfree speech-to-text daemon for Linux

Project description

handsfreed

handsfreed is a local, real-time speech-to-text daemon for Linux. It uses the faster-whisper library to provide high-quality, offline transcription.

This package is the daemon component of the Handsfree project. It is controlled by the handsfreectl command-line tool.

Installation

Manual Installation

handsfreed requires PortAudio, which is a dependency of the sounddevice Python library. You must install the PortAudio library and its development headers using your system's package manager.

  • Debian/Ubuntu:

    sudo apt-get install libportaudio2 libportaudiocpp0 portaudio19-dev
    
  • Fedora/CentOS/RHEL:

    sudo dnf install portaudio-devel
    
  • Arch Linux:

    sudo pacman -S portaudio
    

Once the system dependencies are installed, you can install handsfreed using pip:

pip install handsfreed

Nix Flake

If you are using Nix with Flakes enabled, handsfreed can be installed by following the instructions here.

Usage

handsfreed is designed to be run as a background service.

  1. Create a configuration file: Create a configuration file at ~/.config/handsfree/config.toml. You can start with the example configuration.

  2. Run the daemon:

    handsfreed
    

    The daemon will start listening for commands from handsfreectl.

  3. Control with handsfreectl: Use the handsfreectl CLI to start/stop transcription and check the status of the daemon. You must install it separately.

Configuration

handsfreed is configured via a TOML file located at ~/.config/handsfree/config.toml. The configuration allows you to set up your audio input, Whisper model, VAD parameters, and more.

For a full list of configuration options, please see the example configuration file.

License

This project is licensed under the GNU General Public License v3.0.

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

handsfreed-0.1.0.tar.gz (46.1 kB view details)

Uploaded Source

Built Distribution

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

handsfreed-0.1.0-py3-none-any.whl (38.2 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: handsfreed-0.1.0.tar.gz
  • Upload date:
  • Size: 46.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.8

File hashes

Hashes for handsfreed-0.1.0.tar.gz
Algorithm Hash digest
SHA256 fcaec49f428b6f0c5c5054e579ca184da7cdbc0ebc49e14bcd2737bdc2c101e9
MD5 122484244f523a9f9df37c9a9eb551a8
BLAKE2b-256 b81a7846796c69f36d9b5a05389fe372ce49d9738d6c5d71878668525e8eec3a

See more details on using hashes here.

File details

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

File metadata

  • Download URL: handsfreed-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 38.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.8

File hashes

Hashes for handsfreed-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 262b4507d7e44b659435bba8266b7db1f0ce3f109e0ec5ae819b31109d5f8d97
MD5 b52f426ff52aac368e25fe7b4d480e89
BLAKE2b-256 5efcdb69213520de2ed1edda338cef1ae2a86c71b9184f2950b8a35d2661fa6a

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