Transcribir la voz a texto con la API

En esta página, se muestra cómo enviar una solicitud de reconocimiento de voz a Speech-to-Text mediante la interfaz de REST y el comando curl.

Con Speech-to-Text, se puede realizar una integración sencilla de las tecnologías de reconocimiento de voz de Google en las aplicaciones de los desarrolladores. Puedes enviar datos de audio a la API de Speech-to-Text que, a su vez, muestra una transcripción de texto de ese archivo de audio. Para obtener más información sobre el servicio, consulta Conceptos básicos de Speech-to-Text.

Antes de comenzar

Antes de enviar una solicitud a la API de Speech-to-Text, debes completar las siguientes acciones. Consulta la página antes de comenzar para obtener más detalles.

  • Habilitar Speech-to-Text en un proyecto.
    1. Asegúrate de que la facturación esté habilitada para Speech-to-Text.
  • Instala Google Cloud CLI y, luego, inicializa la ejecución del siguiente comando:

    gcloud init
  • Crea un bucket de Google Cloud Storage nuevo para almacenar tus datos de audio (opcional).

Realiza una solicitud de transcripción de audio

Ahora puedes usar Speech-to-Text para transcribir un archivo de audio a texto. Usa la siguiente muestra de código para enviar una solicitud de REST recognize a la API de Speech-to-Text.

  1. Crea un archivo de solicitud JSON con el siguiente texto y guárdalo como un archivo de texto sin formato sync-request.json:

    {
      "config": {
          "encoding":"FLAC",
          "sampleRateHertz": 16000,
          "languageCode": "en-US",
          "enableWordTimeOffsets": false
      },
      "audio": {
          "uri":"gs://cloud-samples-tests/speech/brooklyn.flac"
      }
    }
      

    Este fragmento JSON indica que el archivo de audio tiene un formato de codificación FLAC y una tasa de muestreo de 16,000 Hz, y que el archivo de audio está almacenado en Google Cloud Storage en el URI determinado. El archivo de audio es de acceso público, por lo que no necesitas credenciales de autenticación para acceder al archivo.

  2. Usa curl para hacer una solicitud speech:recognize y pasa el nombre de archivo de la solicitud JSON que configuraste en el paso 1:

    El comando curl de muestra usa el comando gcloud auth print-access-token para obtener un token de autenticación.

    curl -s -H "Content-Type: application/json" \
        -H "Authorization: Bearer "$(gcloud auth print-access-token) \
        https://speech.googleapis.com/v1/speech:recognize \
        -d @sync-request.json
      

    Ten en cuenta que, para pasar un nombre de archivo a curl, se usa la opción -d (de “datos”) y se incluye un signo @ antes del nombre. Este archivo debe estar en el mismo directorio en el que ejecutaste el comando curl.

    Deberías ver una respuesta similar a la siguiente:

    {
      "results": [
        {
          "alternatives": [
            {
              "transcript": "how old is the Brooklyn Bridge",
              "confidence": 0.98267895
            }
          ]
        }
      ]
    }
      

¡Felicitaciones! Enviaste tu primera solicitud a Speech-to-Text.

Si recibes un error o una respuesta vacía de Speech-to-Text, consulta los pasos de Solución de problemas y Mensajes de error.

Limpia

Sigue estos pasos para evitar que se apliquen cargos a tu cuenta de Google Cloud por los recursos que usaste en esta página.

¿Qué sigue?