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.2.tar.gz (26.6 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.2-py3-none-any.whl (26.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: summscriber-0.8.2.tar.gz
  • Upload date:
  • Size: 26.6 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.2.tar.gz
Algorithm Hash digest
SHA256 1e2d76097a2879150f191ccc40d8cc0d32bcf29af46970a748f2a2d4a1381af4
MD5 7f5dc918ae5e8d05d59439494591a421
BLAKE2b-256 f9fad34cb768a582cd9020a2d91af365217c832223b444f8d26eb131eae1c659

See more details on using hashes here.

File details

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

File metadata

  • Download URL: summscriber-0.8.2-py3-none-any.whl
  • Upload date:
  • Size: 26.1 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.2-py3-none-any.whl
Algorithm Hash digest
SHA256 f19208890ecaad593dee55bc259305918573f0008c8f73f89872bffb550c6f38
MD5 73f1d882c71c406897f52adc34062889
BLAKE2b-256 026eaaac32e3791b7d80b933dd8a64f621051f10e5dd41476716a13522e068b7

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