Zurück zur Startseite

Whisper Spracherkennung in C# für Meetings

C#-Programm erfasst System-Audiostream, verwendet Whisper für STT und übersetzt über Azure/OpenAI. Optimales Small-Modell, VAD-Einstellungen für Phrasen. Modulare Architektur für Erweiterung.

C#-Utility: Whisper STT + Echtzeit-Übersetzung
Advertisement 728x90

Echtzeit-Spracherkennung und -Übersetzung in C# mit Whisper

Die Anwendung erfasst Audio-Streams von Plattformen wie Teams, teilt sie basierend auf Sprachamplitude und Pausen in Sätze auf und nutzt anschließend Whisper für die Sprache-zu-Text-Umwandlung (STT) in Russisch, Englisch oder Französisch, gefolgt von einer Übersetzung. Die C#-Implementierung basiert zu etwa 20 % auf eigenem Code, der Rest wird über Integrationen realisiert. Bei Auswahl einer einzigen Sprache unterstützt das System einen Diktiermodus – lediglich die Transkription mit optionaler Audio-Speicherung.

In den Einstellungen können folgende Werte kalibriert werden:

  • Schwellwerte für die Sprachamplitude zur Erkennung von Sprechen.
  • Pausendauer zwischen Sätzen.

Statistiken im rechten unteren Bildschirmbereich zeigen aktuelle Audiopegel und Erkennungsflags – ideal zum Feintuning. Die Audio-Erfassung funktioniert nur mit dem System-Mixer (Kopfhörer/Lautsprecher); direkte Mikrofoneingaben werden nicht unterstützt.

Google AdInline article slot

Auswahl der Whisper-Modelle und Leistung

Lokale STT-Lösungen wurden getestet:

  • Sherpa (ONNX): Streaming-Version für Französisch passte nicht in die Architektur.
  • Foundry Local (Microsoft): Rohdaten-basierte Kommunikation, basierend auf Whisper.

Wir entschieden uns für Whisper:

| Modell | Geschwindigkeit | Logik | Hinweise |

Google AdInline article slot

|--------|----------------|-------|----------|

| Base | Schnell | Keine | Minimal, kein Kontext |

| Small | Mittel | Ja | Optimaler Kompromiss, Temperatur 0,1–0,2 |

Google AdInline article slot

| Medium | Langsam | Gut | Puffer wächst während Live-Meetings |

Ohne NPU/GPU steigt der RAM-Verbrauch, doch die Ergebnisse bleiben bei hochwertigem Meeting-Audio akzeptabel.

Integration von Übersetzungs-Diensten

Zwei Optionen stehen zur Verfügung:

  • OpenAI: API-Schlüssel, Modell und URL werden in den Einstellungen konfiguriert.
  • Azure Translator: Freier Tarif bietet 2 Millionen Zeichen pro Monat; benötigt ein Konto.

Das ITranslationService-Interface erleichtert die Hinzufügung neuer Anbieter (Yandex-API möglich mit Abrechnung). Lokale Übersetzer erreichten die Qualitätsbenchmarks nicht.

Beispielhafte Azure-Konfiguration:

public class AzureTranslationService : ITranslationService
{
    private readonly string _key;
    // ...
}

Praktische Anwendungsfälle und Einschränkungen

Dieses Tool löst den Bedarf an Echtzeit-Übersetzung mehrsprachiger Meetings ohne Aufzeichnung. Getestet wurde mit Französisch, Englisch und Russisch. Kein universeller Recorder – es werden nur System-Audio-Ausgaben erfasst.

Für mittlere bis erfahrene Entwickler: Modularer Aufbau mit Fokus auf Streaming-Chunks. Erweiterbar durch Austausch von STT-/Übersetzungs-Engines oder Hinzufügen neuer VAD-Algorithmen.

Wichtige Erkenntnisse:

  • Erfassung von System-Audio mit Satzspaltung über VAD-ähnliche Parameter.
  • Whisper Small ist optimal für Echtzeitanwendungen: Temperatur 0,1–0,2, keine GPU erforderlich.
  • Einfaches Übersetzungs-Interface; Azure bietet 2 Mio. kostenlose Zeichen pro Monat.
  • STT-Modus für Transkription ohne Übersetzung.
  • Echtzeit-Statistiken zur Feinjustierung der Spracherkennung.

— Editorial Team

Advertisement 728x90

Weiterlesen