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.
- Connectez-vous à votre compte Google Cloud. Si vous débutez sur Google Cloud, créez un compte pour évaluer les performances de nos produits en conditions réelles. Les nouveaux clients bénéficient également de 300 $ de crédits gratuits pour exécuter, tester et déployer des charges de travail.
-
Dans Google Cloud Console, sur la page de sélection du projet, sélectionnez ou créez un projet Google Cloud.
-
Vérifiez que la facturation est activée pour votre projet Google Cloud.
-
Activez l'API Media Translation
-
Créez un compte de service :
-
Dans la console Google Cloud, accédez à la page Créer un compte de service.
Accéder à la page "Créer un compte de service" - Sélectionnez votre projet.
-
Dans le champ Nom du compte de service, saisissez un nom. La console Google Cloud remplit le champ ID du compte de service en fonction de ce nom.
Dans le champ Description du compte de service, saisissez une description. Exemple :
Service account for quickstart
. - Cliquez sur Créer et continuer.
-
Attribuez le rôle Project > Owner au compte de service.
Pour accorder le rôle, trouvez la liste Sélectionner un rôle, puis sélectionnez Project > Owner.
- Cliquez sur Continuer.
-
Cliquez sur OK pour terminer la création du compte de service.
Ne fermez pas la fenêtre de votre navigateur. Vous en aurez besoin lors de la tâche suivante.
-
-
Créez une clé de compte de service :
- Dans la console Google Cloud, cliquez sur l'adresse e-mail du compte de service que vous avez créé.
- Cliquez sur Keys (Clés).
- Cliquez sur Ajouter une clé, puis sur Créer une clé.
- Cliquez sur Create (Créer). Un fichier de clé JSON est téléchargé sur votre ordinateur.
- Cliquez sur Close (Fermer).
-
Définissez la variable d'environnement
GOOGLE_APPLICATION_CREDENTIALS
sur le chemin d'accès du fichier JSON contenant vos identifiants. Cette variable ne s'applique qu'à la session de shell actuelle. Par conséquent, si vous ouvrez une nouvelle session, vous devez de nouveau la définir. - Installez Google Cloud CLI.
-
Pour initialiser gcloudCLI, exécutez la commande suivante :
gcloud init
-
Dans Google Cloud Console, sur la page de sélection du projet, sélectionnez ou créez un projet Google Cloud.
-
Vérifiez que la facturation est activée pour votre projet Google Cloud.
-
Activez l'API Media Translation
-
Créez un compte de service :
-
Dans la console Google Cloud, accédez à la page Créer un compte de service.
Accéder à la page "Créer un compte de service" - Sélectionnez votre projet.
-
Dans le champ Nom du compte de service, saisissez un nom. La console Google Cloud remplit le champ ID du compte de service en fonction de ce nom.
Dans le champ Description du compte de service, saisissez une description. Exemple :
Service account for quickstart
. - Cliquez sur Créer et continuer.
-
Attribuez le rôle Project > Owner au compte de service.
Pour accorder le rôle, trouvez la liste Sélectionner un rôle, puis sélectionnez Project > Owner.
- Cliquez sur Continuer.
-
Cliquez sur OK pour terminer la création du compte de service.
Ne fermez pas la fenêtre de votre navigateur. Vous en aurez besoin lors de la tâche suivante.
-
-
Créez une clé de compte de service :
- Dans la console Google Cloud, cliquez sur l'adresse e-mail du compte de service que vous avez créé.
- Cliquez sur Keys (Clés).
- Cliquez sur Ajouter une clé, puis sur Créer une clé.
- Cliquez sur Create (Créer). Un fichier de clé JSON est téléchargé sur votre ordinateur.
- Cliquez sur Close (Fermer).
-
Définissez la variable d'environnement
GOOGLE_APPLICATION_CREDENTIALS
sur le chemin d'accès du fichier JSON contenant vos identifiants. Cette variable ne s'applique qu'à la session de shell actuelle. Par conséquent, si vous ouvrez une nouvelle session, vous devez de nouveau la définir. - Installez Google Cloud CLI.
-
Pour initialiser gcloudCLI, exécutez la commande suivante :
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
comprend un objetTranslateSpeechConfig
qui fournit des informations sur le fichier source audio et une propriétésingle_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.