LoslegenKostenlos starten

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

<Kurs>Verarbeitung gesprochener Sprache in Python</Kurs>
Kurs ansehen

Übungsanweisungen

  • Ü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 praktische Übung

Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.

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