Skip to main content

SoberMind Offline Session Transcriber with Speaker Diarization

Project description

Omniscribe

An offline-first, private speech-to-text tool utilizing OpenAI's Whisper models for local transcription, with optional PyAnnote.audio integration for multi-speaker diarization (speaker separation).


1. System Requirements & Setup

This script runs completely locally on your machine, ensuring absolute confidentiality.

Step A: Install FFMPEG

The transcription backend requires ffmpeg to process audio files:

  • Windows: Download ffmpeg via chocolatey (choco install ffmpeg) or from the official website, and add its bin directory to your system PATH.
  • macOS: brew install ffmpeg
  • Linux: sudo apt install ffmpeg

Step B: Install Omniscribe

You can install omniscribe directly from PyPI:

pip install omniscribe

2. Multi-Speaker Diarization (Optional)

To separate speakers (e.g. distinguishing between Speaker 0 and Speaker 1):

  1. Install the diarization dependencies:
    pip install pyannote.audio
    
  2. Go to Hugging Face and accept the user agreements for these models (requires creating a free account):
  3. Generate a User Access Token (Read Permission) on your Hugging Face Settings Page.

3. Usage Reference

Standard Transcription (No Speaker Separation)

Runs fully offline immediately:

omniscribe path/to/session.mp3

Transcribe with Multi-Speaker Diarization

Splits conversation segments by speaker automatically:

omniscribe path/to/session.mp3 --hf-token "YOUR_HF_TOKEN"

Options

  • --model: Footprint of model to load (tiny, base, small, medium, large). Defaults to base, which balances speed and accuracy on standard laptops.
  • --output: Specify base output name.

Outputs are generated in both:

  • .md: A structured Markdown dialogue format.
  • .txt: A timestamped plaintext dialogue transcript.

4. Web-Based GUI Dashboard

For a premium, interactive editing experience, you can launch the local GUI server:

python gui_server.py [port]
  • Default Port: 8080
  • Local Address: http://localhost:8080

GUI Features:

  1. Drag-and-Drop Form: Easily input your audio target file, Hugging Face Token, and select Whisper model sizes dynamically.
  2. Live Console Log: Watch the terminal status updates and model downloads inside a scrollable screen.
  3. Dialogue Workspace:
    • Edit transcribed text blocks on the fly.
    • Speaker Renamer: Rename default speaker codes (e.g. SPEAKER_00 to Me, SPEAKER_01 to Dr. Jameson) and instantly replace them across the entire dialogue history.
    • Export Controls: One-click copy formatted Markdown dialogue logs or download local JSON objects.

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

omniscribe-0.0.2.tar.gz (6.2 kB view details)

Uploaded Source

Built Distribution

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

omniscribe-0.0.2-py3-none-any.whl (6.5 kB view details)

Uploaded Python 3

File details

Details for the file omniscribe-0.0.2.tar.gz.

File metadata

  • Download URL: omniscribe-0.0.2.tar.gz
  • Upload date:
  • Size: 6.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.10

File hashes

Hashes for omniscribe-0.0.2.tar.gz
Algorithm Hash digest
SHA256 69d3bab281a8b20fa56d489fe46b63f7246f8d21663ec085646f7081702609b1
MD5 e84a7b25168dcfac4465e02b2f3a44f7
BLAKE2b-256 29e052394db1c9c13a2342aa60117dcabb6094752b80c834a2a41529c6a8c71f

See more details on using hashes here.

File details

Details for the file omniscribe-0.0.2-py3-none-any.whl.

File metadata

  • Download URL: omniscribe-0.0.2-py3-none-any.whl
  • Upload date:
  • Size: 6.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.10

File hashes

Hashes for omniscribe-0.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 92ffccf41686bdd4b551737deeadd7b67864c015c1d5f079346d4ec34dcd3b0c
MD5 d4344dc87942b828c5b38ddaab3e5e11
BLAKE2b-256 445b8476add7d4b88fa03875b338ec5c20ccaeb1d6f41d48043c6a7810f6e85d

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