Media Translation permet de traduire un fichier audio ou un flux vocal en texte dans une autre langue. Cette page fournit des exemples de code montrant comment traduire en texte du contenu audio diffusé en streaming à l'aide de bibliothèques clientes Media Translation.
Configurer votre projet
Avant de pouvoir utiliser Media Translation, vous devez configurer un projet Google Cloud et activer l'API Media Translation pour ce projet.
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Media Translation API.
-
Create a service account:
-
In the Google Cloud console, go to the Create service account page.
Go to Create service account - Select your project.
-
In the Service account name field, enter a name. The Google Cloud console fills in the Service account ID field based on this name.
In the Service account description field, enter a description. For example,
Service account for quickstart
. - Click Create and continue.
-
Grant the Project > Owner role to the service account.
To grant the role, find the Select a role list, then select Project > Owner.
- Click Continue.
-
Click Done to finish creating the service account.
Do not close your browser window. You will use it in the next step.
-
-
Create a service account key:
- In the Google Cloud console, click the email address for the service account that you created.
- Click Keys.
- Click Add key, and then click Create new key.
- Click Create. A JSON key file is downloaded to your computer.
- Click Close.
-
Set the environment variable
GOOGLE_APPLICATION_CREDENTIALS
to the path of the JSON file that contains your credentials. This variable applies only to your current shell session, so if you open a new session, set the variable again. - Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Media Translation API.
-
Create a service account:
-
In the Google Cloud console, go to the Create service account page.
Go to Create service account - Select your project.
-
In the Service account name field, enter a name. The Google Cloud console fills in the Service account ID field based on this name.
In the Service account description field, enter a description. For example,
Service account for quickstart
. - Click Create and continue.
-
Grant the Project > Owner role to the service account.
To grant the role, find the Select a role list, then select Project > Owner.
- Click Continue.
-
Click Done to finish creating the service account.
Do not close your browser window. You will use it in the next step.
-
-
Create a service account key:
- In the Google Cloud console, click the email address for the service account that you created.
- Click Keys.
- Click Add key, and then click Create new key.
- Click Create. A JSON key file is downloaded to your computer.
- Click Close.
-
Set the environment variable
GOOGLE_APPLICATION_CREDENTIALS
to the path of the JSON file that contains your credentials. This variable applies only to your current shell session, so if you open a new session, set the variable again. - Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
- Installez la bibliothèque cliente pour votre langue préférée.
Traduire la saisie vocale
Les exemples de code ci-dessous montrent comment traduire une saisie vocale à partir d'un fichier contenant jusqu'à cinq minutes d'audio ou à partir d'un micro en direct. Consultez la section Bonnes pratiques pour obtenir des recommandations sur la façon de fournir des données vocales pour une meilleure précision de reconnaissance.
Les principales étapes sont les mêmes quelle que soit la source audio :
Initialisez un client
SpeechTranslationServiceClient
à utiliser pour envoyer des requêtes à Media Translation.Vous pouvez réutiliser le même client pour plusieurs requêtes.
Créez un objet de requête
StreamingTranslateSpeechConfig
qui spécifie comment traiter le contenu audio.L'objet
StreamingTranslateSpeechConfig
se compose d'un objetTranslateSpeechConfig
qui fournit des informations sur le fichier source audio et d'une optionsingle_utterance
qui indique si Media Translation doit continuer la traduction lorsque l'utilisateur s'arrête de parler.L'objet
TranslateSpeechConfig
fournit des spécifications techniques pour la source audio (telles que son encodage et son taux d'échantillonnage), définit les langues source et cible de la traduction (à l'aide de leurs codes de langue BCP-47) et définit le modèle de traduction utilisé par Media Translation pour la transcription.Envoyez une séquence d'objets de requête
StreamingTranslateSpeechRequest
.Vous envoyez une séquence de requêtes pour chaque fichier audio que vous souhaitez traduire. La première requête fournit l'objet
StreamingTranslateSpeechConfig
de la requête, et les requêtes suivantes fournissent le contenu audio diffusé en streaming.Recevez l'objet de réponse
StreamingTranslateSpeechResult
.Même si vous recevez une réponse dont l'objet
text_translation_result.is_final
est défini surfalse
, le dernier résultat traduit écrase le résultat précédent.Lorsque Media Translation fournit un résultat final, le champ
text_translation_result.is_final
est défini surtrue
. Les résultats de traduction suivants sont ajoutés au résultat précédent. (Dans ce cas, le résultat précédent n'est pas écrasé). Vous pouvez générer la traduction complète, et commencer avec une nouvelle section pour la partie suivante de la transcription et du contenu audio correspondant.Si le champ
single_utterance
est défini sur "true" dans l'objet de requêteStreamingTranslateSpeechConfig
lorsque le locuteur arrête de parler, Media Translation renvoie un événementEND_OF_SINGLE_UTTERANCE
pourspeech_event_type
dans la réponse. Le client arrête d'envoyer des requêtes, mais continue à recevoir des réponses jusqu'à la fin de la traduction.La diffusion en streaming est limitée à cinq minutes. Si vous dépassez cette limite, vous obtenez une erreur OUT_OF_RANGE.
Exemples de code
Traduire la saisie vocale à partir d'un fichier audio
Java
Pour savoir comment installer et utiliser la bibliothèque cliente pour Media Translation, consultez la page Bibliothèques clientes Media Translation. Pour en savoir plus, consultez la documentation de référence de l'API Media Translation pour Java.
Pour vous authentifier auprès de Media Translation, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Node.js
Pour savoir comment installer et utiliser la bibliothèque cliente pour Media Translation, consultez la page Bibliothèques clientes Media Translation. Pour en savoir plus, consultez la documentation de référence de l'API Media Translation pour Node.js.
Pour vous authentifier auprès de Media Translation, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Python
Pour savoir comment installer et utiliser la bibliothèque cliente pour Media Translation, consultez la page Bibliothèques clientes Media Translation. Pour en savoir plus, consultez la documentation de référence de l'API Media Translation pour Python.
Pour vous authentifier auprès de Media Translation, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Traduire la saisie vocale à partir d'un micro
Java
Pour savoir comment installer et utiliser la bibliothèque cliente pour Media Translation, consultez la page Bibliothèques clientes Media Translation. Pour en savoir plus, consultez la documentation de référence de l'API Media Translation pour Java.
Pour vous authentifier auprès de Media Translation, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Node.js
Pour savoir comment installer et utiliser la bibliothèque cliente pour Media Translation, consultez la page Bibliothèques clientes Media Translation. Pour en savoir plus, consultez la documentation de référence de l'API Media Translation pour Node.js.
Pour vous authentifier auprès de Media Translation, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Python
Pour savoir comment installer et utiliser la bibliothèque cliente pour Media Translation, consultez la page Bibliothèques clientes Media Translation. Pour en savoir plus, consultez la documentation de référence de l'API Media Translation pour Python.
Pour vous authentifier auprès de Media Translation, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.