En este instructivo, se muestra cómo transcribir la pista de audio de un archivo de video con Cloud 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 pista de audio incluida en un archivo de video.
Cloud STT puede usar uno de varios modelos de aprendizaje automático para transcribir el archivo de audio con el objetivo de que coincida lo mejor posible con la fuente original del audio. Para obtener mejores resultados de la transcripción de voz, especifica la fuente del audio original. Esto permite que Cloud STT procese los archivos de audio con un modelo de aprendizaje automático entrenado con datos similares al archivo de audio.
Objetivos
- Envía una solicitud de transcripción de audio para un archivo de video a Cloud STT.
Costos
En este documento, usarás los siguientes componentes facturables de Google Cloud:
- Cloud Speech-to-Text
Para obtener una estimación de costos en función del uso previsto,
usa la calculadora de precios.
Antes de empezar
Para completar este instructivo, debes cumplir varios requisitos que se indican a continuación:
- Debes haber configurado un proyecto de Cloud Speech-to-Text en la consola de Google Cloud .
- Debes haber configurado tu entorno con las credenciales predeterminadas de la aplicación en la consola de Google Cloud .
- Debes haber configurado el entorno de desarrollo para el lenguaje de programación que elegiste.
- Debes haber instalado la biblioteca cliente de Google Cloud para el lenguaje de programación que elegiste.
Prepara los datos de audio
Antes de que puedas transcribir el audio de un video, debes extraer los datos del archivo de video. Una vez que extraes los datos de audio, debes almacenarlos en un bucket de Cloud Storage o convertirlos en 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 bucket de Cloud Storage.
Usa el comando siguiente para subir el archivo de audio a un bucket de Cloud Storage existente con la Google Cloud CLI.
gcloud storage 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 comando siguiente para convertir un archivo de audio en uno de texto.
base64 audio-output-file -w 0 > audio-data-text
Envía una solicitud de transcripción
Usa el código siguiente para enviar una solicitud de transcripción a Cloud STT.
Solicitud de archivo local
Protocolo
Consulta el extremo de la API de speech:recognize para obtener todos los detalles.
Para reconocer voz de forma síncrona, 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 la Google Cloud CLI para generar un token de acceso. Para obtener instrucciones sobre cómo instalar
la gcloud CLI, 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/v2/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 conocer más
sobre la configuración del cuerpo de la solicitud.
Si la solicitud es exitosa, el servidor devuelve 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
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud STT, consulta Bibliotecas cliente de Cloud STT. Para obtener más información, consulta la documentación de referencia de la API de Cloud STT para Go.
Para autenticarte en Cloud STT, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Java
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud STT, consulta Bibliotecas cliente de Cloud STT. Para obtener más información, consulta la documentación de referencia de la API de Cloud STT para Java.
Para autenticarte en Cloud STT, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Node.js
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud STT, consulta Bibliotecas cliente de Cloud STT. Para obtener más información, consulta la documentación de referencia de la API de Cloud STT para Node.js.
Para autenticarte en Cloud STT, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Python
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud STT, consulta Bibliotecas cliente de Cloud STT. Para obtener más información, consulta la documentación de referencia de la API de Cloud STT para Python.
Para autenticarte en Cloud STT, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Lenguajes adicionales
C#: Sigue las instrucciones de configuración de C# en la página de bibliotecas cliente y, luego, consulta la documentación de referencia de Cloud STT para .NET.
PHP: Sigue las instrucciones de configuración de PHP en la página de bibliotecas cliente y, luego, consulta la documentación de referencia de Cloud STT para PHP.
Ruby: Sigue las instrucciones de configuración de Ruby en la página de bibliotecas cliente y, luego, consulta la documentación de referencia de Cloud STT para Ruby.
Solicitud de archivo remoto
Go
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud STT, consulta Bibliotecas cliente de Cloud STT. Para obtener más información, consulta la documentación de referencia de la API de Cloud STT para Go.
Para autenticarte en Cloud STT, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Java
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud STT, consulta Bibliotecas cliente de Cloud STT. Para obtener más información, consulta la documentación de referencia de la API de Cloud STT para Java.
Para autenticarte en Cloud STT, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Node.js
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud STT, consulta Bibliotecas cliente de Cloud STT. Para obtener más información, consulta la documentación de referencia de la API de Cloud STT para Node.js.
Para autenticarte en Cloud STT, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Python
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud STT, consulta bibliotecas cliente de Cloud STT. Para obtener más información, consulta la documentación de referencia de la API de Cloud STT para Python.
Para autenticarte en Cloud STT, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Lenguajes adicionales
C#: Sigue las instrucciones de configuración de C# en la página de bibliotecas cliente y, luego, consulta la documentación de referencia de Cloud STT para .NET.
PHP: Sigue las instrucciones de configuración de PHP en la página de bibliotecas cliente y, luego, consulta la documentación de referencia de Cloud STT para PHP.
Ruby: Sigue las instrucciones de configuración de Ruby en la página de bibliotecas cliente y, luego, consulta la documentación de referencia de Cloud STT para Ruby.
Realiza una limpieza
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 consérvalo 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 los pasos que se indican a continuación:
- In the Google Cloud console, go to the Manage resources page.
- In the project list, select the project that you want to delete, and then click Delete.
- In the dialog, type the project ID, and then click Shut down to delete the project.
Borra las instancias
Para borrar una instancia de Compute Engine, sigue los pasos que se indican a continuación:
- In the Google Cloud console, go to the VM instances page.
- Select the checkbox for the instance that you want to delete.
- To delete the instance, click More actions, click Delete, and then follow the instructions.
Borra reglas de firewall para la red predeterminada
Para borrar una regla de firewall, sigue los pasos que se indican a continuación:
- In the Google 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?
- Aprende a obtener marcas de tiempo para audio.
- Identifica diferentes interlocutores en un archivo de audio.
Pruébalo por tu cuenta
Si es la primera vez que usas Google Cloud, crea una cuenta para evaluar el rendimiento de Cloud STT en situaciones reales. Los clientes nuevos también obtienen $300 en créditos gratuitos para ejecutar, probar e implementar cargas de trabajo.
Probar Cloud STT gratis