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.8.1.tar.gz (25.9 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.8.1-py3-none-any.whl (25.4 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for summscriber-0.8.1.tar.gz
Algorithm Hash digest
SHA256 0e22f0b9fee401083db7a98bce24d6e5e31d14330dbc274c909d1a0a9835d061
MD5 f01cc944c947a9a15d4bd04e457df5f3
BLAKE2b-256 04ac86386eb77f6cfe5b1da216a2d3df83f06c7eb7b46418ecf0dfd3b637b020

See more details on using hashes here.

File details

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

File metadata

  • Download URL: summscriber-0.8.1-py3-none-any.whl
  • Upload date:
  • Size: 25.4 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.8.1-py3-none-any.whl
Algorithm Hash digest
SHA256 ee2247b24aa802fcc807f71879b8ebc08fa9e6835b5a64a942fbe696579981ab
MD5 a434acd0d0240e983e06d3a55f10a1f9
BLAKE2b-256 047d57a7ec193319c66f67311a8b8336c173f436609448dfe4ddbdb64b603fb0

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