Metadata-Version: 2.4
Name: local-whisper-studio
Version: 0.1.0
Summary: Offline audio transcription and subtitle editor powered by Whisper
Project-URL: Homepage, https://github.com/yourusername/local-whisper-studio
Project-URL: Repository, https://github.com/yourusername/local-whisper-studio
Project-URL: Issues, https://github.com/yourusername/local-whisper-studio/issues
Author-email: Zach <zach@example.com>
License: MIT
Keywords: audio,offline,subtitles,transcription,whisper
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: End Users/Desktop
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Topic :: Multimedia :: Sound/Audio :: Speech
Requires-Python: >=3.10
Requires-Dist: flask-cors>=4.0.0
Requires-Dist: flask-socketio>=5.3.0
Requires-Dist: flask>=3.0.0
Requires-Dist: numpy>=1.24.0
Requires-Dist: openai-whisper>=20231117
Requires-Dist: pyannote-audio>=3.1.0
Requires-Dist: pydub>=0.25.1
Requires-Dist: python-dotenv>=1.0.0
Requires-Dist: python-socketio>=5.10.0
Requires-Dist: scipy>=1.11.0
Requires-Dist: torch>=2.0.0
Requires-Dist: torchaudio>=2.0.0
Requires-Dist: watchdog>=3.0.0
Provides-Extra: dev
Requires-Dist: black>=23.0.0; extra == 'dev'
Requires-Dist: pytest>=7.4.0; extra == 'dev'
Requires-Dist: ruff>=0.1.0; extra == 'dev'
Description-Content-Type: text/markdown

# Local Whisper Studio

Offline speech-to-text with waveform editing and subtitle export—no API calls, no monthly bills.

## What is this?

Local Whisper Studio is a desktop-first transcription and subtitle editor that brings OpenAI's Whisper directly to your machine. Drag in audio or video files, get instant transcripts with automatic speaker diarization, sync edits to the waveform in real-time, and export to SRT, VTT, or TXT formats. Everything runs offline—no API costs, no internet dependency, no vendor lock-in.

## Features

- **Offline Transcription** – Powered by OpenAI Whisper; runs entirely on your hardware
- **Speaker Diarization** – Automatically identify and label different speakers
- **Waveform Editor** – Sync transcript edits to audio timeline with visual feedback
- **Multi-format Export** – SRT, VTT, and plain text subtitle formats
- **Video & Audio Support** – Handle MP4, MOV, MP3, WAV, and more
- **Zero API Costs** – No recurring bills or cloud dependencies
- **Web UI & CLI** – Choose your workflow: browser interface or command-line scripting

## Quick Start

### Installation

Requires Python 3.9+

```bash
# Clone the repository
git clone <repo-url>
cd local-whisper-studio

# Install dependencies
pip install -e .

# Download Whisper model (first run only)
whisper-studio download-model base
```

### Usage

**Web Interface:**
```bash
whisper-studio serve
# Opens http://localhost:5000 in your browser
```

**CLI:**
```bash
# Transcribe an audio file
whisper-studio transcribe audio.mp3 --output transcript.srt --format srt

# With diarization
whisper-studio transcribe video.mp4 --diarize --output subtitled.srt
```

**Python API:**
```python
from whisper_studio import TranscriptionEngine

engine = TranscriptionEngine(model="base")
result = engine.transcribe("audio.mp3")

for segment in result.segments:
    print(f"{segment.speaker}: {segment.text}")
```

## Tech Stack

- **Whisper** – Speech recognition model (OpenAI)
- **Pyannote** – Speaker diarization
- **FastAPI** – Web server
- **Vanilla JS + Wavesurfer.js** – Waveform editor UI
- **FFmpeg** – Audio/video processing

## License

MIT