Kom igångKom igång gratis

Flera talare 2

Att urskilja flera talare i en och samma ljudfil kallas talarsegmentering (speaker diarization). Som du har sett saknar den kostnadsfria funktionen recognize_google() möjlighet att transkribera olika talare separat.

Ett sätt att lösa detta – utan att använda en betald tal-till-text-tjänst – är att se till att varje ljudfil bara innehåller en talare.

Om du till exempel arbetar med telefonsamtalsdata bör du se till att den som ringer och den som svarar spelas in i separata filer. Då kan du transkribera varje fil för sig.

I den här övningen transkriberar du varje talare i vår ljudfil med flera talare individuellt.

Den här övningen är en del av kursen

Taligenkänning i Python

Visa kurs

Övningsinstruktioner

  • Skicka speakers till funktionen enumerate() för att loopa igenom de olika talarna.
  • Anropa record()recognizer för att konvertera AudioFile-objekten till AudioData.
  • Använd recognize_google() för att transkribera vart och ett av speaker_audio-objekten.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

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"))
Redigera och kör kod