LoslegenKostenlos loslegen

Mehrere Sprecher 2

Das Unterscheiden mehrerer Sprecher in einer Audiodatei nennt man Speaker-Diarization. Allerdings hast du gesehen, dass die kostenlose Funktion, die wir verwenden, recognize_google(), keine unterschiedlichen Sprecher transkribieren kann.

Ein Weg, dies zu umgehen, ohne einen der kostenpflichtigen Speech-to-Text-Dienste zu nutzen, besteht darin, sicherzustellen, dass deine Audiodateien nur einen Sprecher enthalten.

Das heißt: Wenn du mit Telefondaten arbeitest, sorgst du dafür, dass Anrufer und Angerufener getrennt aufgezeichnet werden. Dann kannst du jede Datei einzeln transkribieren.

In dieser Übung transkribieren wir jeden der Sprecher aus unserer Audiodatei mit mehreren Sprechern jeweils separat.

Diese Übung ist Teil des Kurses

Verarbeitung gesprochener Sprache in Python

Kurs anzeigen

Anleitung zur Übung

  • Übergib speakers an die Funktion enumerate(), um über die verschiedenen Sprecher zu iterieren.
  • Rufe record() auf recognizer auf, um die AudioFiles in AudioData umzuwandeln.
  • Verwende recognize_google(), um jedes der speaker_audio-Objekte zu transkribieren.

Interaktive Übung

Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.

recognizer = sr.Recognizer()

# Multiple speakers on different files
speakers = [sr.AudioFile("speaker_0.wav"), 
            sr.AudioFile("speaker_1.wav"), 
            sr.AudioFile("speaker_2.wav")]

# Transcribe each speaker individually
for i, speaker in enumerate(____):
    with speaker as source:
        speaker_audio = recognizer.____(source)
    print(f"Text from speaker {i}:")
    print(recognizer.____(____,
         				  language="en-US"))
Code bearbeiten und ausführen