Mensagens de erro

Esta página aborda os erros do Cloud Speech-to-Text cuja resolução requer mais passos do que os que podem ser descritos numa mensagem de erro.

"As credenciais padrão da aplicação não estão disponíveis"

Se receber esta mensagem:

The Application Default Credentials are not available. They are
available if running in Google Compute Engine. Otherwise, the
environment variable GOOGLE_APPLICATION_CREDENTIALS must be defined
pointing to a file defining the credentials.
See https://developers.google.com/accounts/docs/application-default-credentials
for more information.

O STT na nuvem usa Credenciais padrão da aplicação (ADC) para autenticação.

As credenciais para o ADC têm de estar disponíveis no contexto em que chama a Cloud Speech-to-Text API. Por exemplo, se configurar o ADC no seu terminal, mas executar o código no depurador do IDE, o contexto de execução do seu código pode não ter acesso às credenciais. Nesse caso, o seu pedido ao Cloud STT pode falhar.

Para saber como fornecer credenciais ao ADC, consulte o artigo Configure as Credenciais padrão da aplicação.

"O ficheiro … (indicado pela variável de ambiente GOOGLE_APPLICATION_CREDENTIALS) não existe!"

Se receber esta mensagem:

ERROR: (gcloud.auth.application-default.print-access-token) File /path/to/key.json
(pointed by GOOGLE_APPLICATION_CREDENTIALS environment variable) does not exist!
{
  "error": {
    "code": 403,
    "message": "The request is missing a valid API key.",
    "status": "PERMISSION_DENIED"
  }
}

Verifique se tem um ficheiro JSON de chave da conta de serviço válido na localização armazenada na variável de ambiente GOOGLE_APPLICATION_CREDENTIALS e se a variável aponta para o local correto.

Para diagnosticar este erro, experimente abrir o ficheiro de chave da conta de serviço a partir da pasta a partir da qual está a tentar chamar a Cloud Speech-to-Text API.

cat $GOOGLE_APPLICATION_CREDENTIALS

Proibido: 403 A API POST não foi usada ou está desativada

Se receber a mensagem:

Forbidden: 403 POST Cloud Speech-to-Text API has not been used in
project # before or it is disabled.
Enable it by visiting [url] then retry.
If you enabled this API recently, wait a few minutes for the action to
propagate to our systems and retry.

  1. Aceda ao link especificado na mensagem de erro e ative a API Cloud STT. Aguarde vários minutos e, em seguida, tente novamente.
  2. Verifique se tem um ficheiro JSON de chave de conta de serviço válido armazenado na variável de ambiente GOOGLE_APPLICATION_CREDENTIALS. Para diagnosticar este erro, experimente abrir o ficheiro da chave da conta de serviço a partir da pasta a partir da qual está a tentar chamar a API Cloud Speech-to-Text.
cat $GOOGLE_APPLICATION_CREDENTIALS

"Tem de usar áudio de canal único (mono)"

Se receber esta mensagem:

Must use single channel (mono) audio, but WAV header indicates 2
channels.

O ficheiro de áudio contém mais de um canal. Para transcrever este ficheiro de áudio, tem de declarar que o seu áudio tem vários canais.

"Must use 16 bit samples for LINEAR_PCM" (Tem de usar amostras de 16 bits para LINEAR_PCM)

Se receber esta mensagem:

INVALID_ARGUMENT: Must use 16 bit samples for LINEAR_PCM, but the WAV
header indicates 8 bits per sample

Pode ter de alterar a codificação especificada no seu RecognitionConfig. Para ler acerca das codificações suportadas no STT na nuvem, consulte o guia de codificações.

"Sincronizar entrada demasiado longa"

Se receber esta mensagem:

Sync input too long. For audio longer than 1 min use
LongRunningRecognize with a 'uri' parameter.

O método synchronous recognize para o Cloud STT só suporta a transcrição de dados de áudio com uma duração máxima de 1 minuto. Para dados de áudio mais longos, use asynchronous recognize.

"Invalid recognition 'config': bad encoding" (Configuração de reconhecimento inválida: codificação incorreta)

Se receber esta mensagem:

Invalid recognition 'config': bad encoding.

Os seus dados de áudio podem não estar codificados corretamente ou estão codificados com um codec diferente do que declarou no elemento RecognitionConfig. Verifique a entrada de áudio e certifique-se de que definiu o campo encoding corretamente.

"O tamanho do payload do pedido excede o limite"

Se receber uma destas mensagens:

Request payload size exceeds the limit.
Inline audio exceeds duration limit. Please use a GCS URI.

Excedeu o limite de tamanho de 10 MB para um único pedido enviado para a API através de um ficheiro local. Pode mover o seu ficheiro de áudio para um contentor do Cloud Storage para evitar o limite de 10 MB. Consulte a página Quotas e limites para mais informações.

"Quota excedida"

Se receber esta mensagem:

RESOURCE_EXHAUSTED: Quota exceeded.

Atingiu o limite da sua quota por minuto ou diária. Reveja as quotas e os limites de utilização do Cloud STT.

Pode pedir um aumento das suas quotas na Google Cloud consola.