WhatsApp Sprachnachrichten in Text mit OpenAI Whisper Speech-To-Text

WhatsApp Sprachnachrichten in Text mit OpenAI Whisper Speech-To-Text

 07.04.2023 -  Sebastian Pech -  ~1 Minute

Whisper von OpenAI hat eine beeindruckende Qualität um Sprache in Text umzuwandeln. Wenn dir Sprachnachrichten in WhatsApp zu umständlich sind, kannst du diese mit diesem kleinen Python Skript in Text umwandeln. Einfach die Sprachnachricht in WhatsApp Web speichern und das Skript mit dem Dateinamen als Parameter aufrufen.

Das Skript konvertiert automatisch die Datei in das mp3 Format, wenn diese in ogg vorliegt. Dazu muss ffmpeg installiert sein.

Installation

sudo apt-get install ffmpeg
pip install openai

Python Skript

Die folgende Datei als whisper.py speichern und mit python3 whisper.py <Dateiname> ausführen.

import os
import sys
import openai

# Fail if no commandline argument is provided
if len(sys.argv) < 2:
    print("Please provide an audio file")
    exit(1)

audio_file_name = sys.argv[1]

# Check if file exists
if not os.path.isfile(audio_file_name):
    print("File does not exist")
    exit(1)

# If file is in ogg format convert it to mp3
if audio_file_name.endswith(".ogg"):
    os.system(f"ffmpeg -i '{audio_file_name}' -ab 320k '{audio_file_name}.mp3'")
    audio_file_name = f"{audio_file_name}.mp3"

audio_file= open(audio_file_name, "rb")
transcript = openai.Audio.transcribe("whisper-1", audio_file, language="de")
print(transcript)

Gist: GitHub .

 

Bildquelle: Image by Alexandra_Koch from Pixabay