En este instructivo, se muestra cómo transcribir la pista de audio de un archivo de video con Speech-to-Text.
Los archivos de audio pueden provenir de muchas fuentes diferentes. Los datos de audio pueden provenir de un teléfono (como el buzón de voz) o de una banda sonora incluida en un archivo de video.
En Speech-to-Text, puedes usar uno de varios modelos de aprendizaje automático para transcribir tu archivo de audio a fin de que coincida mejor con la fuente original del audio. Para obtener mejores resultados en tu transcripción de voz, especifica la fuente del audio original. Esto permite que Speech-to-Text procese tus archivos de audio con un modelo de aprendizaje automático entrenado para datos similares a tu archivo de audio.
Objetivos
- Envía una solicitud de transcripción de audio para un archivo de video a Speech-to-Text.
Costos
En este instructivo, se usan los siguientes componentes facturables de Google Cloud:
- Speech-to-Text
Para generar una estimación de costos en función del uso previsto, usa la calculadora de precios.
Antes de comenzar
Este instructivo tiene varios requisitos previos:
- Haber configurado un proyecto de Speech-to-Text en Google Cloud Console
- Haber configurado tu entorno con las credenciales predeterminadas de la aplicación en Google Cloud Console
- Configuraste el entorno de desarrollo para tu lenguaje de programación elegido.
- Instalaste la Biblioteca cliente de Google Cloud para tu lenguaje de programación elegido.
Prepara los datos de audio
Antes de que puedas transcribir audio de un video, debes extraer los datos del archivo de video. Una vez que extraes los datos de audio, debes almacenarlos en un depósito de Cloud Storage o convertirlos a codificación en base64.
Extrae los datos de audio
Puedes usar cualquier herramienta de conversión de archivos que controle archivos de audio y video, como FFmpeg.
Usa el siguiente fragmento de código para convertir un archivo de video en un archivo de audio con ffmpeg
.
ffmpeg -i video-input-file audio-output-file
Almacena o convierte los datos de audio
Puedes transcribir un archivo de audio almacenado en tu máquina local o en un depósito de Cloud Storage.
Usa el siguiente comando para subir tu archivo de audio a un depósito de Cloud Storage existente con la herramienta gsutil
.
gsutil cp audio-output-file storage-bucket-uri
Si usas un archivo local y planeas enviar una solicitud con la herramienta curl
desde la línea de comandos, primero debes convertir el archivo de audio en datos codificados en base64.
Usa el siguiente comando para convertir un archivo de audio en un archivo de texto.
base64 audio-output-file -w 0 > audio-data-text
Envía una solicitud:
Usa el siguiente código para enviar una solicitud de transcripción a Speech-to-Text.
Solicitud de archivo local
Protocolo
Consulta el extremo de la API de speech:recognize
para obtener todos los detalles.
Para realizar un reconocimiento de voz síncrono, haz una solicitud POST
y proporciona el cuerpo de la solicitud apropiado. A continuación, se muestra un ejemplo de una solicitud POST
con curl
. En el ejemplo, se usa el token de acceso correspondiente a la configuración de una cuenta de servicio para el proyecto con Google Cloud CLI. Si deseas obtener instrucciones para instalar la gcloud CLI, configurar un proyecto con una cuenta de servicio y conseguir un token de acceso, consulta la guía de inicio rápido.
curl -s -H "Content-Type: application/json" \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ https://speech.googleapis.com/v1/speech:recognize \ --data '{ "config": { "encoding": "LINEAR16", "sampleRateHertz": 16000, "languageCode": "en-US", "model": "video" }, "audio": { "uri": "gs://cloud-samples-tests/speech/Google_Gnome.wav" } }'
Consulta la documentación de referencia de RecognitionConfig
para obtener más información sobre la configuración del cuerpo de la solicitud.
Si la solicitud se realiza correctamente, el servidor muestra un código de estado HTTP 200 OK
y la respuesta en formato JSON:
{ "results": [ { "alternatives": [ { "transcript": "OK Google stream stranger things from Netflix to my TV okay stranger things from Netflix playing on TV from the people that brought you Google home comes the next evolution of the smart home and it's just outside your window me Google know hi how can I help okay no what's the weather like outside the weather outside is sunny and 76 degrees he's right okay no turn on the hose I'm holding sure okay no I'm can I eat this lemon tree leaf yes what about this Daisy yes but I wouldn't recommend it but I could eat it okay Nomad milk to my shopping list I'm sorry that sounds like an indoor request I keep doing that sorry you do keep doing that okay no is this compost really we're all compost if you think about it pretty much everything is made up of organic matter and will return", "confidence": 0.9251011 } ] } ] }
Go
Java
Node.js
Python
Idiomas adicionales
C#: Sigue las instrucciones de configuración de C# en la página de bibliotecas cliente y, luego, visita la documentación de referencia de Speech-to-Text para .NET
PHP: Sigue las instrucciones de configuración de PHP en la página de bibliotecas cliente y, luego, visita la documentación de referencia de Speech-to-Text para PHP.
Ruby: Sigue las instrucciones de configuración de Ruby en la página Bibliotecas cliente y, luego, visita la documentación de referencia de Speech-to-Text para Ruby.
Solicitud de archivo remoto
Java
Node.js
Python
Idiomas adicionales
C#: Sigue las instrucciones de configuración de C# en la página de bibliotecas cliente y, luego, visita la documentación de referencia de Speech-to-Text para .NET
PHP: Sigue las instrucciones de configuración de PHP en la página de bibliotecas cliente y, luego, visita la documentación de referencia de Speech-to-Text para PHP.
Ruby: Sigue las instrucciones de configuración de Ruby en la página Bibliotecas cliente y, luego, visita la documentación de referencia de Speech-to-Text para Ruby.
Limpia
Para evitar que se apliquen cargos a tu cuenta de Google Cloud por los recursos usados en este instructivo, borra el proyecto que contiene los recursos o conserva el proyecto y borra los recursos individuales.
Borra el proyecto
La manera más fácil de eliminar la facturación es borrar el proyecto que creaste para el instructivo.
Para borrar el proyecto, sigue estos pasos:
- En la consola de Cloud, ve a la página Administrar recursos.
- En la lista de proyectos, elige el proyecto que quieres borrar y haz clic en Borrar.
- En el diálogo, escribe el ID del proyecto y, luego, haz clic en Cerrar para borrar el proyecto.
Borra instancias
Para borrar una instancia de Compute Engine:
- En Cloud Console ve a la página Instancias de VM.
-
Selecciona tu instancia
en la casilla de verificación de es la instancia que deseas borrar.
- Para borrar la instancia, haz clic en Más acciones, haz clic en Borrar y, luego, sigue las instrucciones.
Borra reglas de firewall para la red predeterminada
Para borrar una regla de firewall, haz lo siguiente:
- In the Cloud console, go to the Firewall page.
- Select the checkbox for the firewall rule that you want to delete.
- To delete the firewall rule, click Delete.
¿Qué sigue?
- Obtén información sobre cómo obtener marcas de tiempo para audio.
- Identifica diferentes interlocutores en un archivo de audio.
Pruébalo tú mismo
Si es la primera vez que usas Google Cloud, crea una cuenta para evaluar el rendimiento de Speech-to-Text en situaciones reales. Los clientes nuevos también obtienen $300 en créditos gratuitos para ejecutar, probar y, además, implementar cargas de trabajo.
Probar Speech-to-Text gratis