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.1.tar.gz (6.3 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.1-py3-none-any.whl (6.5 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: omniscribe-0.0.1.tar.gz
  • Upload date:
  • Size: 6.3 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.1.tar.gz
Algorithm Hash digest
SHA256 75343951eda36bde70089367c3408061f2e0b6a85bd687d6c321f3f071a387d5
MD5 de3c786abbbdff8230a6b00703b3a9a1
BLAKE2b-256 56464d7863cdd210c65aa413bece759e71a436160f0ea48de907d5b88c624c62

See more details on using hashes here.

File details

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

File metadata

  • Download URL: omniscribe-0.0.1-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.1-py3-none-any.whl
Algorithm Hash digest
SHA256 c31c80e4bc4ceff4c7ef70c260e0e7892ce0235c844aa55fa6e3276dc10db3b7
MD5 9196986cab419facbb516b692cf2c925
BLAKE2b-256 157db0eedf36f68644501dc75a2855be4cfeb1301554919089a05604e85aca9f

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