Skip to main content

Local-first transcription and semantic analysis tool

Project description

Audio-Transkriber

Lokales, datenschutzkonformes Tool für Audio-Transkription, Speaker-Diarization und semantisches Post-Processing auf macOS.


Kurzbeschreibung (für GitHub-Repository)

Lokales Transkriptions-Tool mit WhisperX (MPS), Speaker-Diarization und optionalem Ollama-Post-Processing für Summary und Action Items.


Was das Tool macht

  • Transkribiert Audio-Dateien lokal (kein Cloud-Zwang)
  • Unterstützt Speaker-Diarization für Sprechertrennung
  • Erstellt Exporte als JSON, Markdown und TXT
  • Ergänzt bei Bedarf Ollama-basierte Summary + Action Items
  • Legt Ergebnisse pro Lauf in separaten Output-Ordnern ab

Voraussetzungen

  • macOS (Apple Silicon empfohlen)
  • Python 3.10+
  • ffmpeg installiert (brew install ffmpeg)
  • Optional für Post-Processing: lokales Ollama

Schnellstart

  1. Repository klonen und ins Verzeichnis wechseln.
  2. Launcher ausführbar machen und starten.
chmod +x scripts/launch_audio_transkriber.command
./scripts/launch_audio_transkriber.command
  1. UI im Browser öffnen: http://127.0.0.1:8501

Stoppen:

./stop_audio_transkriber.command

Typischer Ablauf in der UI

  1. Audio-Datei hochladen (.wav, .mp3, .m4a).
  2. Optional Sprache setzen (auto-detect, de, en).
  3. Transkription starten.
  4. Optional Ollama-Post-Processing ausführen (Summary + Action Items).
  5. Exporte im Output-Ordner prüfen.

Output und Ordnerstruktur

  • Laufzeitdaten (nicht für Git): data/output/, data/processed/
  • Exporte pro Lauf in eigenen Session-Unterordnern unter data/output/
  • Typische Artefakte:
    • *.json (strukturierte Segmente + Metadaten)
    • *.md (Frontmatter + Summary + Transkript)
    • *.txt (Summary + Transkript)

Security-Hinweise

  • Upload-Dateinamen werden beim Speichern in temporäre Dateien sanitisiert.
  • Der Launcher bevorzugt reproduzierbare Basis-Dependencies aus requirements.lock.txt.
  • Laufzeit- und Launcher-Logs liegen unter data/logs/ und sind für Git ausgeschlossen.

Häufige Probleme

  • command not found bei Start/Stop:
chmod +x scripts/install_shell_commands.sh
./scripts/install_shell_commands.sh
  • Ollama nicht erreichbar:

    • In der UI: Ollama-Status aktualisieren oder Ollama starten
    • Alternativ im Terminal: ./scripts/start_ollama.command
  • Port 8501 belegt:

AUDIO_TRANSKRIBER_PORT=8502 ./scripts/launch_audio_transkriber.command

Dokumentation

  • Nutzung (macOS/Launchpad): docs/usage/macos-launchpad-start.md
  • Projekt-Manifest: docs/project-manifest-audio-transkriber-v1-0.md
  • ADR-001: docs/adr/ADR-001_local-first-transcription-stack-whisperx-mps-ollama.md
  • ADR-002: docs/adr/ADR-002_ollama-availability-ui-and-service-start-strategy.md
  • Struktur-Blueprint: docs/architecture/project-structure.md
  • Feature-Erweiterungen: docs/architecture/feature-expansion-proposals.md

Distribution (Maintainer)

B) Python-Package (PyPI)

  • Packaging-Metadaten sind in pyproject.toml hinterlegt.
  • Lokaler Build-Test:
python3 -m pip install --upgrade build twine
python3 -m build
python3 -m twine check dist/*.whl dist/*.tar.gz
  • Publish erfolgt automatisiert über GitHub Actions Workflow .github/workflows/publish-pypi.yml bei Tag-Push (v*).
  • Für Veröffentlichung auf PyPI wird empfohlen, Trusted Publishing für das Repository in PyPI zu konfigurieren.

C) macOS-App-Artefakt für GitHub Releases

  • Workflow .github/workflows/release-macos-app.yml baut beim GitHub-Release (published) ein macOS-App-Bundle.
  • Das Artefakt wird als ZIP (Audio-Transkriber-macOS-<tag>.zip) an das Release angehängt.
  • Aktuell ohne Code Signing/Notarization (lokaler Use-Case / Gatekeeper-Warnung möglich).

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

audio_transkriber-0.1.0.tar.gz (19.2 kB view details)

Uploaded Source

Built Distribution

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

audio_transkriber-0.1.0-py3-none-any.whl (26.0 kB view details)

Uploaded Python 3

File details

Details for the file audio_transkriber-0.1.0.tar.gz.

File metadata

  • Download URL: audio_transkriber-0.1.0.tar.gz
  • Upload date:
  • Size: 19.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for audio_transkriber-0.1.0.tar.gz
Algorithm Hash digest
SHA256 d7b6a5eaacab096159966a6cf48f9ca11891d5c6117be0ead27682c1fb1437ec
MD5 caaaccabece262c3f7032146ceb601eb
BLAKE2b-256 f45457b28094a019d08ad8d6b0b44a3f830a2b53e79f46e1c2a8b17c8b4450b6

See more details on using hashes here.

Provenance

The following attestation bundles were made for audio_transkriber-0.1.0.tar.gz:

Publisher: publish-pypi.yml on boehmert/Audio-Transkriber

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file audio_transkriber-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for audio_transkriber-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 0a89e5ac403efd22c63cfac0add19698bfe4ee7cbebd1bab403229656ed37e55
MD5 1fc0a3534663f4510dcb65bc38d67027
BLAKE2b-256 337f81cb1c375d2d2c61141a057181cfca0c5d4159e27f669a6f3a6bde729bd4

See more details on using hashes here.

Provenance

The following attestation bundles were made for audio_transkriber-0.1.0-py3-none-any.whl:

Publisher: publish-pypi.yml on boehmert/Audio-Transkriber

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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