Digital Developer Conference: Cloud Security 2021 ¡Regístrate ahora!

Desarrollar una aplicación de traducción en tiempo real que pueda escuchar y hablar

Este Code pattern es parte del Desafío global de Call for Code 2020 y se puede ejecutar en [IBM Cloud](https://cloud.ibm.com/registration?cm_sp=ibmdev--developer-patterns--cloudreg).

Resumen

Con los componentes Node.js y React, crea una aplicación web que pueda ser tu traductor personal. La aplicación utiliza IBM® Watson™ servicios Speech to Text, Watson Language Translator y Watson Text to Speech para transcribir, traducir y sintetizar desde tu micrófono a tus auriculares. Los servicios Watson están disponibles en IBM Cloud y con Watson API Kit en IBM Cloud Pak for Data. Este Code pattern incluye instrucciones para ejecutar los servicios Watson en ambos.

Descripción

Desarrollada con componentes React y un servidor Node.js, la aplicación web del traductor de idiomas captura la entrada de audio y la transmite a un servicio Watson Speech to Text. A medida que se transcribe el discurso de entrada, se envía a un servicio de Watson Language Translator para traducirlo al idioma que seleccionas. La aplicación muestra el texto transcrito y traducido en tiempo real. Cada frase completa se envía al servicio Watson Text to Speech para que se pronuncie en las voces específicas que has seleccionado.

La mejor manera de entender qué es la transcripción/traducción en tiempo real versus la vocalización de «frase completa» es probándolo. Notarás que el texto se actualiza a medida que las palabras y frases se completan y se comprenden mejor en contexto. Para evitar el retroceso o la superposición de audio, solo se vocalizan las frases completadas. Por lo general, se trata de frases o expresiones cortas en las que una pausa indica un descanso.

Para obtener la mejor experiencia en vivo, usa auriculares para escuchar la versión traducida de lo que tu micrófono está escuchando. Alternativamente, es posible usar los botones de alternancia para grabar y transcribir primero sin traducir. Cuando estés listo, selecciona un idioma y una voz, y luego habilita la traducción (y la voz).

Cuando hayas completado este Code pattern, comprenderás cómo:

  • Transmitir audio al servicio Watson Speech to Text utilizando un WebSocket
  • Usar el servicio Watson Language Translator con una API REST
  • Recuperar y reproducir audio del servicio Watson Speech to Text utilizando una API REST
  • Integrar el servicio Watson Speech to Text, Watson Language Translator y Watson Text to Speech en una aplicación web
  • Usar componentes React y un servidor Node.js

Flujo

Desarrollar un diagrama de flujo del servicio de traducción en tiempo real

  1. El usuario presiona el botón del micrófono y capta el audio de entrada.
  2. El audio se transmite al servicio Speech to Text mediante un WebSocket.
  3. Se despliega y actualiza el texto transcrito del servicio Speech to Text.
  4. El texto transcrito se envía a Language Translator y el texto traducido se despliega y actualiza.
  5. Las frases completas se envían a Text to Speech y el audio resultante se reproduce automáticamente.

Instrucciones

Busca los pasos detallados para este patrón en el archivo README. Los pasos te muestran cómo:

  1. Suministrar los servicios Watson.
  2. Desplegar el servidor.
  3. Usar la aplicación web.