Skip to main content

Transcribe audio with Whisper (faster-whisper), with summarization (pysummarization, sumy, OpenAI) and short reply with OpenAI.

Project description

Summscriber

Transcribe audio with faster-whisper (Whisper), with summarization options (pysummarization, sumy, OpenAI) and short reply generation via OpenAI API.

Repository: github.com/pablogventura/summscriber

Installation

With pipx (recommended: isolated env, global command)

pipx install git+https://github.com/pablogventura/summscriber.git

To upgrade:

pipx upgrade summscriber

With pip (from project directory)

pip install .

Or in editable mode (development):

pip install -e .

Or from the repository:

pip install git+https://github.com/pablogventura/summscriber.git

Or from PyPI (once published):

pip install summscriber

Usage

After installing, the summscriber command is available:

summscriber FILE [options]

Examples:

summscriber recording.mp3
summscriber interview.ogg --reply
summscriber audio.wav --reply --json
summscriber audio.wav --no-summary

Main options

  • FILE: audio file to transcribe (required).
  • Summarization is on by default: OpenAI if configured, otherwise the shortest of pysummarization and sumy.
  • --no-summary: do not generate a summary (transcription only, or with --reply/--json if you pass those).
  • --summary-pysummarization / --summary-sumy / --summary-openai: also print a summary from a specific backend.
  • --summary-sentences N: number of sentences in the summary (default 3).
  • --reply: generate a short reply to the message with OpenAI.
  • --json: output as JSON.

For summarization and reply with OpenAI, use a config file or environment variables. Configuration is read from the current directory, then from the user config dir (~/.config/summscriber/config.ini on Linux/macOS, %APPDATA%\summscriber\config.ini on Windows). See config.ini.example. Save your token and URL once (stored in the user config dir so it works from any directory):

summscriber --save-config --api-key YOUR_TOKEN --base-url https://...

Open .ogg (and other audio) by default with the GUI

You can set summscriber-gui as the default application for .ogg files (and other audio formats your system associates with it). Then:

  1. Download WhatsApp voice messages (or any audio) manually to a folder.
  2. Click on an .ogg (or associated) file: it will open with the GUI, which transcribes the audio and shows the summary and suggested reply; the reply is copied to the clipboard so you can paste it straight into WhatsApp.

To set it as default: right‑click an .ogg file → “Open with” / “Abrir con” → choose summscriber-gui → tick “Use as default” / “Usar como predeterminado” (wording depends on your OS). On GNOME you can also use Settings → Applications → Default applications (or Files → File types).

Development

From the repo root without installing:

python -m summscriber FILE [options]

Publishing to PyPI

  1. Install build tools: pip install build twine (or pip install ".[publish]").

  2. Create a PyPI account and an API token at pypi.org/manage/account/token/.

  3. From the project root run:

    ./publish.sh
    

    Or manually:

    rm -rf build dist *.egg-info
    python -m build
    twine upload dist/*
    

    When prompted, use username __token__ and password your PyPI token. Or set TWINE_USERNAME=__token__ and TWINE_PASSWORD=pypi-your-token.

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

summscriber-0.7.0.tar.gz (25.4 kB view details)

Uploaded Source

Built Distribution

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

summscriber-0.7.0-py3-none-any.whl (24.9 kB view details)

Uploaded Python 3

File details

Details for the file summscriber-0.7.0.tar.gz.

File metadata

  • Download URL: summscriber-0.7.0.tar.gz
  • Upload date:
  • Size: 25.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for summscriber-0.7.0.tar.gz
Algorithm Hash digest
SHA256 064a5c7e3d9e194fb7ad3b24133025cc0023e68c1c402eb8dadcffd3035799fe
MD5 3707f1aced1a0c119abfd370125704f8
BLAKE2b-256 ac2121bf9eb23d35a19d8d40264fe8a2d5bdc99c5d670d4baab983b7091a67a8

See more details on using hashes here.

File details

Details for the file summscriber-0.7.0-py3-none-any.whl.

File metadata

  • Download URL: summscriber-0.7.0-py3-none-any.whl
  • Upload date:
  • Size: 24.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for summscriber-0.7.0-py3-none-any.whl
Algorithm Hash digest
SHA256 24f132e92c2fe3c4e659d2a470ab7eac6d0cfedb8156fe6118e00051e1979386
MD5 3a074dc8b479def8e0c61436959271c9
BLAKE2b-256 1b11c0619eee440e3326c01777cc2e18d58d3c0dcad0cdfc041d0adf5ba18db7

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