Media Translation übersetzt den Inhalt einer Audiodatei oder eines Spracheingabestreams in Text einer anderen Sprache. Diese Seite enthält Codebeispiele, die zeigen, wie Audiostreams mithilfe von Media Translation-Clientbibliotheken in Text übersetzt werden.
Projekt einrichten
Bevor Sie Media Translation verwenden können, müssen Sie ein Google Cloud-Projekt einrichten und die Media Translation API für dieses Projekt aktivieren.
-
Melden Sie sich bei Ihrem Google-Konto an.
Wenn Sie noch kein Konto haben, melden Sie sich hier für ein neues Konto an.
-
Wählen Sie in der Google Cloud Console auf der Seite der Projektauswahl ein Google Cloud-Projekt aus oder erstellen Sie eines.
-
Die Abrechnung für das Cloud-Projekt muss aktiviert sein. So prüfen Sie, ob die Abrechnung für Ihr Projekt aktiviert ist.
- Aktivieren Sie die Media Translation API.
- Authentifizierung einrichten:
-
Wechseln Sie in der Cloud Console zur Seite Dienstkontoschlüssel erstellen.
Zur Seite „Dienstkontoschlüssel erstellen“ - Wählen Sie aus der Liste Dienstkonto die Option Neues Dienstkonto aus.
- Geben Sie im Feld Dienstkontoname einen Namen ein.
Wählen Sie in der Liste Rolle die Option Projekt > Inhaber
- Klicken Sie auf Erstellen. Eine JSON-Datei mit Ihrem Schlüssel wird auf Ihren Computer heruntergeladen.
-
-
Legen Sie für die Umgebungsvariable
GOOGLE_APPLICATION_CREDENTIALS
den Pfad der JSON-Datei fest, die Ihren Dienstkontoschlüssel enthält. Diese Variable gilt nur für Ihre aktuelle Shellsitzung. Wenn Sie eine neue Sitzung öffnen, müssen Sie die Variable noch einmal festlegen. - Installieren und initialisieren Sie das Cloud SDK.
- Installieren Sie die Clientbibliothek für die gewünschte Sprache.
Spracheingabe übersetzen
Die folgenden Codebeispiele zeigen, wie Sprache aus einer Datei mit bis zu fünf Minuten Audio oder live über ein Mikrofon übersetzt wird. Unter Best Practices finden Sie Empfehlungen zur Bereitstellung von Sprachdaten für eine optimale Erkennungsgenauigkeit.
Die wichtigsten Schritte sind unabhängig von der Audioquelle identisch:
Initialisieren Sie einen
SpeechTranslationServiceClient
-Client zum Senden von Anfragen an Media Translation.Sie können denselben Client für mehrere Anfragen verwenden.
Erstellen Sie ein
StreamingTranslateSpeechConfig
-Anfrageobjekt, das angibt, wie die Audiodaten verarbeitet werden.Das
StreamingTranslateSpeechConfig
-Objekt besteht aus einemTranslateSpeechConfig
-Objekt, das Informationen zur Audioquelldatei bereitstellt, und einemsingle_utterance
-Attribut, mit dem angegeben wird, ob Media Translation die Übersetzung fortsetzt, wenn der Sprecher pausiert.Das
TranslateSpeechConfig
-Objekt stellt technische Daten für die Audioquelle bereit (z. B. Codierung und Abtastrate), legt die Quell- und Zielsprachen für die Übersetzung mit den jeweiligen BCP-47-Sprachcodes fest und definiert, welches Übersetzungsmodell von Media Translation für die Transkription verwendet wird.Senden Sie eine Sequenz von
StreamingTranslateSpeechRequest
-Anfrageobjekten.Sie senden eine Abfolge von Anfragen für jede Audiodatei, die Sie übersetzen möchten. Mit der ersten Anfrage wird das
StreamingTranslateSpeechConfig
-Objekt gesendet und mit den folgenden Anfragen der Audiostream.StreamingTranslateSpeechResult
-Anwortobjekt erhalten.Jede Antwort mit dem Wert
text_translation_result.is_final
vonfalse
wird empfangen, aber das neueste übersetzte Ergebnis überschreibt das vorherige Ergebnis.Wenn Media Translation ein Endergebnis hat, wird das Feld
text_translation_result.is_final
auftrue
gesetzt. Alle nachfolgenden erhaltenen Übersetzungsergebnisse werden an das vorherige Ergebnis angehängt. In diesem Fall wird das vorherige Ergebnis nicht überschrieben. Sie können die fertige Übersetzung ausgeben und mit einem neuen Abschnitt für den nächsten Teil der Transkription und der entsprechenden Audiodaten beginnen.Wenn der Lautsprecher gestoppt wurde und das Feld
single_utterance
im AnfrageobjektStreamingTranslateSpeechConfig
auf "true" festgelegt ist, gibt Media Translation einEND_OF_SINGLE_UTTERANCE
-Ereignis fürspeech_event_type
in der Antwort zurück. Der Client sendet keine Anfragen mehr, erhält jedoch weiterhin Antworten, bis die Übersetzung fertig ist.Das Streaming ist auf 5 Minuten begrenzt. Bei Überschreitung dieses Limits wird der Fehler OUT_OF_RANGE zurückgegeben.
Codebeispiele
Sprache aus einer Audiodatei übersetzen
Java
Node.js
Python
Sprache aus Mikrofoneingabe übersetzen
Java
Node.js
Python