Usar a API de Fala para Texto do Azure AI

Concluído

O serviço Azure AI Speech dá suporte ao reconhecimento de fala por meio de duas APIs REST:

  • A API de fala para texto , que é a principal maneira de executar o reconhecimento de fala.
  • A API de áudio curto de fala para texto, que é otimizada para fluxos curtos de áudio (até 60 segundos).

Você pode usar qualquer API para reconhecimento de fala interativo, dependendo do comprimento esperado da entrada falada. Você também pode usar a API de fala para texto para transcrição em lote, transcrevendo vários arquivos de áudio para texto como uma operação em lote.

Você pode saber mais sobre as APIs REST na documentação da API REST de fala em texto. Na prática, a maioria dos aplicativos habilitados para fala interativa usa o serviço de fala por meio de um SDK específico da linguagem (programação).

Usando o SDK de Fala do Azure AI

Embora os detalhes específicos variem, dependendo do SDK que está sendo usado (Python, C# e assim por diante); há um padrão consistente para usar a API de fala para texto :

A diagram showing how a SpeechRecognizer object is created from a SpeechConfig and AudioConfig, and its RecognizeOnceAsync method is used to call the Speech API.

  1. Use um objeto SpeechConfig para encapsular as informações necessárias para se conectar ao seu recurso Azure AI Speech. Especificamente, a sua localização e chave.
  2. Opcionalmente, use um AudioConfig para definir a fonte de entrada para o áudio a ser transcrito. Por padrão, esse é o microfone padrão do sistema, mas você também pode especificar um arquivo de áudio.
  3. Use o SpeechConfig e o AudioConfig para criar um objeto SpeechRecognizer. Este objeto é um cliente proxy para a API de fala para texto .
  4. Use os métodos do objeto SpeechRecognizer para chamar as funções subjacentes da API. Por exemplo, o método RecognizeOnceAsync() usa o serviço de Fala do Azure AI para transcrever de forma assíncrona um único enunciado falado.
  5. Processe a resposta do serviço Azure AI Speech. No caso do método RecognizeOnceAsync(), o resultado é um objeto SpeechRecognitionResult que inclui as seguintes propriedades:
    • Duração
    • OffsetInTicks
    • Propriedades
    • Razão
    • ResultId
    • Texto

Se a operação foi bem-sucedida, a propriedade Reason tem o valor enumerado RecognizedSpeech e a propriedade Text contém a transcrição. Outros valores possíveis para Result incluem NoMatch (indicando que o áudio foi analisado com êxito, mas nenhuma fala foi reconhecida) ou Canceled, indicando que ocorreu um erro (nesse caso, você pode verificar a coleção Properties para a propriedade CancellationReason para determinar o que deu errado).