# So transkribieren Sie eine Zoom-, Meet- oder Teams-Aufzeichnung samt Sprechern

> Exportieren Sie Ihre Aufzeichnung als MP4 oder M4A und senden Sie die URL mit include_diarization auf true an POST /transcribe. Sie erhalten für jeden Abschnitt Start- und Endzeit sowie ein speaker-Label zurück. Dieses Transkript können Sie anschließend an Ihr LLM weitergeben, um ein Protokoll und offene Aufgaben (Action Items) herauszuziehen. Hinweis: Die API verarbeitet fertige Aufzeichnungen, sie klinkt sich nicht live in laufende Besprechungen ein.

Zuletzt aktualisiert: 2026-10-18 · HTML: https://console.kolwrite.com/de/guides/meeting-transcription-api

## Aufzeichnung mit Sprechererkennung transkribieren

Laden Sie Ihre Datei über `POST /upload` hoch (maximal 100 MiB; bei längeren Aufzeichnungen extrahieren Sie vorher das Audio mit ffmpeg) oder geben Sie eine öffentliche URL an. Starten Sie anschließend den Auftrag. Der Parameter `num_speakers` ist optional. Setzen Sie ihn, wenn Sie wissen, wie viele Personen gesprochen haben.

```bash
curl https://app.kolwrite.com/transcribe \
  -H "x-api-key: $KOLWRITE_API_KEY" -H "Content-Type: application/json" \
  -d '{"audio_url": "https://example.com/weekly-sync.mp4", "model": "oracle", "language": "auto",
       "include_diarization": true, "num_speakers": 4, "output_format": "json"}'
```

Fragen Sie den Status regelmäßig über `GET /transcribe/{jobId}` ab oder hinterlegen Sie eine `webhook_url`, damit unser System Ihren Server benachrichtigt, sobald eine längere Aufzeichnung fertig verarbeitet ist.

Jeder Abschnitt enthält das Sprecherlabel, die Zeitstempel und die einzelnen Wörter:

```json
{
  "jobId": "34c63d45-4cb5-473b-bc60-25c175e69c57",
  "status": "COMPLETED",
  "result": {
    "language": "en",
    "segments": [
      {
        "start": 1.0,
        "end": 3.75,
        "text": "Hello everyone and welcome to the show.",
        "speaker": "Speaker 1",
        "words": [
          { "start": 1.0, "end": 1.35, "word": "Hello" },
          { "start": 1.4, "end": 1.75, "word": "everyone" }
        ]
      }
    ]
  }
}
```

## Sprecherlabels durch echte Namen ersetzen

Die Sprecherlabels sind neutral gehalten (`Speaker 1`, `Speaker 2`). Wer hinter welchem Label steckt, legen Sie selbst fest, zum Beispiel über die Teilnehmerliste oder anhand dessen, wer sich zuerst vorstellt. Mit einer kleinen Zuordnung im Code halten Sie das fest:

minutes.py

```python
# minutes.py — turn the diarized result into text an LLM can summarize
NAMES = {"Speaker 1": "Dana", "Speaker 2": "Omar", "Speaker 3": "Lee"}  # you decide who is who


def clock(seconds):
    m, s = divmod(int(seconds), 60)
    h, m = divmod(m, 60)
    return f"{h}:{m:02}:{s:02}" if h else f"{m}:{s:02}"


def meeting_text(result):
    lines = []
    for segment in result["segments"]:
        who = NAMES.get(segment.get("speaker"), segment.get("speaker", "Unknown"))
        lines.append(f'[{clock(segment["start"])}] {who}: {segment["text"]}')
    return "\n".join(lines)


PROMPT = """Below is a meeting transcript with timestamps. Write: (1) a five-line summary,
(2) decisions, (3) action items as "owner - task - [timestamp]". Use only what is in the transcript.

"""
# Send PROMPT + meeting_text(result) to the model you use.
```

## Protokoll und Aufgaben erstellen

KolWrite liefert das rohe Transkript mit Zeitstempeln und Sprechern. Für die Zusammenfassung und die Aufgabenliste nutzen Sie einfach Ihr gewohntes LLM. Lassen Sie die Zeitstempel im Text stehen, damit das Modell bei jeder Aufgabe angeben kann, an welcher Stelle im Gespräch sie vereinbart wurde. Weisen Sie das LLM außerdem an, sich strikt an das Transkript zu halten.

## Telefonate mit getrennten Tonspuren pro Sprecher

Wenn ein Gespräch in Stereo vorliegt (etwa Support-Mitarbeiter links, Kunde rechts), brauchen Sie keine künstliche Sprechererkennung. Lassen Sie die Sprecher stattdessen einfach nach Tonspur trennen. Das klappt mit 2 bis 8 Kanälen, lässt sich allerdings nicht mit `include_diarization` kombinieren.

```json
{
  "audio_url": "https://example.com/support-call.wav",
  "model": "oracle",
  "channel_speaker_separation": "standard",
  "channel_labels": { "0": "Agent", "1": "Customer" },
  "output_format": "json"
}
```

Wenn die Gesprächspartner häufig gleichzeitig sprechen, wählen Sie `overlap` statt `standard`. Abgerechnet wird zum regulären Modellpreis, und zwar nach dem höheren der beiden Werte: entweder der Gesamtdauer der Datei oder der Summe der erkannten Sprechzeit über alle Kanäle hinweg.

## Kosten

| Aufgabe | Modell | Kosten |
| --- | --- | --- |
| Einstündige Besprechung mit Sprechererkennung | `oracle` | 1,44 US$ |
| Dieselbe Besprechung mit Pro-Diarisierung bei schwierigem Ton | `oracle` + `pro_diarization` | 1,68 US$ |
| 30 Minuten, schwieriger Ton, Pro-Diarisierung | `oracle_max` + `pro_diarization` | 1,92 US$ |

Die normale Sprechererkennung und die Standard-Kanaltrennung kosten keinen Aufpreis. Alle Details finden Sie unter [/llms/pricing.md](https://console.kolwrite.com/llms/pricing.md).

## Worauf Sie in der Praxis achten sollten

- In Besprechungen fallen personenbezogene Daten an. Weisen Sie die Teilnehmer darauf hin, dass Sie aufzeichnen und transkribieren, und verwahren Sie die Transkripte genauso sorgfältig wie die Aufnahmen selbst.
- Wenn Teilnehmer durcheinanderreden, ähnlich klingen oder schlechte Mikrofone nutzen, stößt die Sprechererkennung am ehesten an ihre Grenzen. Weichen Sie bei schwierigen Aufnahmen auf `pro_diarization` oder die Kanaltrennung aus.
- Wenn in einem Meeting nur eine Sprache gesprochen wird, übergeben Sie diese fest über den Parameter `language`. Die automatische Spracherkennung legt sich immer auf eine einzige Sprache pro Datei fest.
- Ein Mensch sollte Namen, Zahlen und Beschlüsse noch einmal gegenprüfen, bevor jemand nach dem Protokoll handelt.

## Fragen und Antworten

### Wie transkribiere ich eine Zoom-Aufzeichnung mit Sprechernamen?

Laden Sie die Aufzeichnung herunter und senden Sie sie mit `include_diarization: true` an `POST /transcribe`. In Ihrem Code ersetzen Sie dann `Speaker 1`, `Speaker 2` usw. durch echte Namen. Die API trennt und nummeriert die Sprecher nur, die Zuordnung zu Personen übernehmen Sie selbst.

### Kann sie meinem Google-Meet- oder Teams-Anruf beitreten?

Nein. KolWrite verarbeitet fertige Aufzeichnungen, die Sie hochladen. Einen Dienst für Echtzeit-Transkription oder laufende Meetings gibt es nicht.

### Schreibt sie Protokoll und Aufgaben?

Sie liefert Ihnen das Transkript samt Zeitstempeln und Sprecherlabels. Das Protokoll und die Aufgaben erstellt anschließend Ihr eigenes LLM auf Basis dieses Transkripts.

### Wie werden Telefonate mit zwei Sprechern behandelt?

Falls jeder Sprecher auf einer eigenen Tonspur liegt, nutzen Sie statt der Diarisierung einfach `channel_speaker_separation` zusammen mit `channel_labels`.

### Welche Sprachen funktionieren bei Besprechungen?

Alle 100 Sprachen aus der [Sprachliste](https://console.kolwrite.com/de/languages/), einschließlich Hebräisch und Arabisch. Wenn in der Besprechung nur eine Sprache gesprochen wird, geben Sie diese über den Parameter `language` an.

## Verwandte Seiten

- [Wortzeitstempel-API](https://console.kolwrite.com/de/guides/word-timestamps-api)
- [Transkriptions-Tool für KI-Agenten](https://console.kolwrite.com/de/guides/transcription-tool-for-ai-agents)
- [Callcenter und Verkaufsgespräche](https://console.kolwrite.com/de/use-cases/call-centers)
- [Unternehmen](https://console.kolwrite.com/de/use-cases/enterprise)
- [API-Dokumentation](https://console.kolwrite.com/de/public_api_docs)

---
API-Schlüssel holen: https://console.kolwrite.com/auth?lang=de · API-Dokumentation: https://console.kolwrite.com/de/public_api_docs · llms.txt: https://console.kolwrite.com/llms.txt
