En este tutorial se muestra cómo transcribir la pista de audio de un archivo de vídeo con Speech-to-Text.
Los archivos de audio pueden proceder de muchas fuentes diferentes. Los datos de audio pueden proceder de un teléfono (como el buzón de voz) o de la banda sonora incluida en un archivo de vídeo.
Transcripción de voz puede usar uno de los varios modelos de aprendizaje automático para transcribir tu archivo de audio y que se ajuste lo mejor posible a la fuente original del audio. Puedes obtener mejores resultados de la transcripción de voz si especificas la fuente del audio original. De esta forma, Speech-to-Text puede procesar tus archivos de audio con un modelo de aprendizaje automático entrenado con datos similares a los de tu archivo de audio.
Preparar los datos de audio
Para transcribir el audio de un vídeo, primero debes extraer los datos del archivo de vídeo. Una vez que hayas extraído los datos de audio, debes almacenarlos en un segmento de Cloud Storage o convertirlos a codificación base64.
Extraer los datos de audio
Puedes usar cualquier herramienta de conversión de archivos que gestione archivos de audio y vídeo, como FFmpeg.
Usa el siguiente fragmento de código para convertir un archivo de vídeo en un archivo de audio con ffmpeg
.
ffmpeg -i video-input-file audio-output-file
Almacenar o convertir los datos de audio
Puedes transcribir un archivo de audio almacenado en tu máquina local o en un segmento de Cloud Storage.
Usa el siguiente comando para subir tu archivo de audio a un segmento de Cloud Storage con la CLI de Google Cloud.
gcloud storage cp audio-output-file storage-bucket-uri
Si usas un archivo local y tienes previsto 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
Enviar una solicitud de transcripción
Usa el siguiente código para enviar una solicitud de transcripción a Speech-to-Text.
Solicitud de archivo local
Protocolo
Consulta todos los detalles en el endpoint de la API speech:recognize
.
Para realizar el reconocimiento de voz síncrono, haz una solicitud POST
y proporciona el cuerpo de la solicitud adecuado. A continuación, se muestra un ejemplo de una solicitud POST
que utiliza curl
. En el ejemplo se usa Google Cloud CLI para generar un token de acceso. Para obtener instrucciones sobre cómo instalar 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/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 cómo configurar el cuerpo de la solicitud.
Si la solicitud se realiza de forma correcta, 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 saber cómo instalar y usar la biblioteca de cliente de Speech-to-Text, consulta el artículo Bibliotecas de cliente de Speech-to-Text. Para obtener más información, consulta la documentación de referencia de la API Go Speech-to-Text.
Para autenticarte en Speech-to-Text, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación en un entorno de desarrollo local.
Java
Para saber cómo instalar y usar la biblioteca de cliente de Speech-to-Text, consulta el artículo Bibliotecas de cliente de Speech-to-Text. Para obtener más información, consulta la documentación de referencia de la API Java Speech-to-Text.
Para autenticarte en Speech-to-Text, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación en un entorno de desarrollo local.
Node.js
Para saber cómo instalar y usar la biblioteca de cliente de Speech-to-Text, consulta el artículo Bibliotecas de cliente de Speech-to-Text. Para obtener más información, consulta la documentación de referencia de la API Node.js Speech-to-Text.
Para autenticarte en Speech-to-Text, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación en un entorno de desarrollo local.
Python
Para saber cómo instalar y usar la biblioteca de cliente de Speech-to-Text, consulta el artículo Bibliotecas de cliente de Speech-to-Text. Para obtener más información, consulta la documentación de referencia de la API Python Speech-to-Text.
Para autenticarte en Speech-to-Text, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación en un entorno de desarrollo local.
Idiomas adicionales
C#: Sigue las instrucciones de configuración de C# en la página de bibliotecas de cliente y, a continuación, consulta 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 de cliente y, a continuación, consulta la documentación de referencia de Speech-to-Text para PHP.
Ruby: Sigue las instrucciones de configuración de Ruby en la página de bibliotecas de cliente y, a continuación, consulta la documentación de referencia de Speech-to-Text para Ruby.
Solicitud de archivo remoto
Go
Para saber cómo instalar y usar la biblioteca de cliente de Speech-to-Text, consulta el artículo Bibliotecas de cliente de Speech-to-Text. Para obtener más información, consulta la documentación de referencia de la API Go Speech-to-Text.
Para autenticarte en Speech-to-Text, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación en un entorno de desarrollo local.
Java
Para saber cómo instalar y usar la biblioteca de cliente de Speech-to-Text, consulta el artículo Bibliotecas de cliente de Speech-to-Text. Para obtener más información, consulta la documentación de referencia de la API Java Speech-to-Text.
Para autenticarte en Speech-to-Text, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación en un entorno de desarrollo local.
Node.js
Para saber cómo instalar y usar la biblioteca de cliente de Speech-to-Text, consulta el artículo Bibliotecas de cliente de Speech-to-Text. Para obtener más información, consulta la documentación de referencia de la API Node.js Speech-to-Text.
Para autenticarte en Speech-to-Text, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación en un entorno de desarrollo local.
Python
Para saber cómo instalar y usar la biblioteca de cliente de Speech-to-Text, consulta el artículo Bibliotecas de cliente de Speech-to-Text. Para obtener más información, consulta la documentación de referencia de la API Python Speech-to-Text.
Para autenticarte en Speech-to-Text, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación en un entorno de desarrollo local.
Idiomas adicionales
C#: Sigue las instrucciones de configuración de C# en la página de bibliotecas de cliente y, a continuación, consulta 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 de cliente y, a continuación, consulta la documentación de referencia de Speech-to-Text para PHP.
Ruby: Sigue las instrucciones de configuración de Ruby en la página de bibliotecas de cliente y, a continuación, consulta la documentación de referencia de Speech-to-Text para Ruby.