Skip to main content

Local classroom audio transcription with projects, WER evaluation, and pluggable transcript formats

Project description

Transcribe Studio

CI

A local, browser-based tool for classroom audio transcription. Organize work by project, split audio into timed chunks, label speakers in free text, and evaluate human transcripts against LLM output (WER + semantic WER).

Built for researchers and annotators who need millisecond timestamps and exportable data — without Label Studio complexity.

Features

  • Projects — group recordings by class, session, or study
  • Waveform editor — divide audio into chunks (by duration or count), overlap speakers at the same timestamp
  • Chunk playback — play one chunk at a time with speed up/down (0.25×–2×, keys , / .)
  • Exports — TXT, Markdown, JSON, CSV, SRT, WebVTT
  • LLM evaluation — paste or upload hypothesis transcripts; strict + semantic WER
  • Pluggable formats — timestamp/speaker lines, JSON segments, plain text (TOML-driven)

Quick start

With uv (recommended)

git clone https://github.com/Mishkat-Quantum-Labs/transcribe-studio.git
cd transcribe-studio
uv venv
uv pip install -e ".[dev]"
uv run transcribe-studio

Open http://127.0.0.1:8082

With pip

pip install transcribe-studio
transcribe-studio

Usage

  1. Create a project from the dashboard
  2. Upload an MP3/WAV/M4A/OGG/FLAC recording
  3. Divide the wave into chunks, then transcribe each segment
  4. Use Evaluation to compare your transcript against an LLM upload
  5. Export when done

Data is stored under ~/.transcribe-studio/ (override with TRANSCRIBE_STUDIO_DATA).

Development

uv pip install -e ".[dev]"
uv run pytest

Publishing

PyPI via uv (recommended)

uv build
uv publish   # uses UV_PUBLISH_TOKEN or prompts for PyPI credentials

PyPI via pip/twine

pip install build twine
python -m build
twine upload dist/*

GitHub release

git tag v0.2.0
git push origin v0.2.0
gh release create v0.2.0 dist/*

Configuration

Evaluation and transcript import settings ship inside the package:

  • app/config/evaluation.toml
  • app/config/transcript_formats.toml
  • app/config/languages/en.toml

License

MIT — see LICENSE.

Contributing

Issues and PRs welcome at github.com/Mishkat-Quantum-Labs/transcribe-studio.

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

transcribe_studio-0.2.0.tar.gz (67.0 kB view details)

Uploaded Source

Built Distribution

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

transcribe_studio-0.2.0-py3-none-any.whl (84.3 kB view details)

Uploaded Python 3

File details

Details for the file transcribe_studio-0.2.0.tar.gz.

File metadata

  • Download URL: transcribe_studio-0.2.0.tar.gz
  • Upload date:
  • Size: 67.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.2 {"installer":{"name":"uv","version":"0.11.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for transcribe_studio-0.2.0.tar.gz
Algorithm Hash digest
SHA256 385b066b98059ee1d21871a7704d6723b7e7c0ab18bb43f6f88c5ac4907c6714
MD5 1143e0ef72ca27dc91d0e13dbb888391
BLAKE2b-256 dcfea131ebe2d41c899fa561c95773aada5a6b28d6590fdf4e872ad507829922

See more details on using hashes here.

File details

Details for the file transcribe_studio-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: transcribe_studio-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 84.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.2 {"installer":{"name":"uv","version":"0.11.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for transcribe_studio-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 68e6a61f911ba3ad644efe9ef0b4c9602875f0b0c235c91f668f14105f91fbaa
MD5 a8ff922da1d5b617c54d3cbe763c5089
BLAKE2b-256 5f575635a900ec2c0b2fdba8ab0cba6ef6ad0e58581f366f8d0d4154fd586226

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