WebVTT- und SRT-Untertitel generieren

Auf dieser Seite wird beschrieben, wie Sie mit der Speech-to-Text V2 API automatisch Untertitel aus Audiodateien im SRT- und VTT-Format generieren.

Überblick

Mit der Speech-to-Text V2 API können Sie automatisch genaue Untertitel im SubRip-Format (.srt) und im WebVTT (.vtt) generieren. Mit diesen Formaten werden die Text- und Zeitinformationen von Audio gespeichert. So können Untertitel synchron mit den Medien angezeigt werden, um Untertitel zu erstellen.

Die Aktivierung der Untertitelausgabe in Ihrer Anfrage an Google Speech-to-Text wird nur in der V2 API unterstützt. Insbesondere können Sie BatchRecognize nur zum Transkribieren langer Audiodateien verwenden. Sie können Ausgaben in einem Cloud Storage-Bucket speichern oder sie können inline zurückgegeben werden. Für die Cloud Storage-Ausgabekonfiguration können mehrere Formate gleichzeitig angegeben werden, die mit unterschiedlichen Dateiendungen in den angegebenen Bucket geschrieben werden.

Untertitelausgabe in einer Anfrage aktivieren

Um SRT- oder VTT-Untertitel für Ihre Audiodaten mithilfe von Google Speech-to-Text zu generieren, führen Sie die nächsten Schritte aus, um die Untertitelausgabe in Ihrer Transkriptionsanfrage zu aktivieren:

  1. Senden Sie eine Anfrage an die Methode BatchRecognize der Speech-to-Text V2 API, wobei das Feld output_format_config ausgefüllt ist. Angegebene Werte sind:
    • srt, damit die Ausgabe dem SubRip(.srt)-Format entspricht.
    • vtt, damit die Ausgabe dem WebVTT-Format(.vtt) entspricht.
    • native, was das Standardausgabeformat ist, wenn kein Format als serialisierte BatchRecognizeResults-Anfrage angegeben ist.
  2. Da der Vorgang asynchron ist, fragen Sie die Anfrage ab, bis er abgeschlossen ist.

Für die Cloud Storage-Ausgabekonfiguration können mehrere Formate gleichzeitig angegeben werden. Sie werden mit unterschiedlichen Dateiendungen in den angegebenen Bucket geschrieben. Diese sind .json für nativ, .srt für SRT bzw. .vtt für WebVTT-Unterstützung.

Wenn mehrere Formate für die Inline-Ausgabekonfiguration angegeben sind, ist jedes Format als Feld in der Nachricht „BatchRecognizeFileResult.inline_result” verfügbar.

Im folgenden Code-Snippet wird gezeigt, wie Untertitelausgaben in einer Transkriptionsanfrage an Speech-to-Text mithilfe von lokalen und Remote-Dateien aktiviert werden:

API

  curl -X POST \
    -H "Content-Type: application/json; charset=utf-8" \
    -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
    https://speech.googleapis.com/v2/projects/my-project/locations/global/recognizers/_:batchRecognize \
    --data '{
      "files": [{
        "uri": "gs://my-bucket/jfk_and_the_press.wav"
      }],
      "config": {
        "features": { "enableWordTimeOffsets": true },
        "autoDecodingConfig": {},
        "model": "long",
        "languageCodes": ["en-US"]
      },
      "recognitionOutputConfig": {
        "gcsOutputConfig": { "uri": "gs://my-bucket" },
        "output_format_config": { "srt": {} }
      }
    }'

Nächste Schritte