Usar a API de Conversão de Fala em Texto do Azure
O serviço de Fala do Azure dá suporte ao reconhecimento de fala por meio dos seguintes recursos:
- Transcrição em tempo real: transcrição instantânea com resultados intermediários para entradas de áudio ao vivo.
- Transcrição rápida: Saída síncrona mais rápida para situações com latência previsível.
- Transcrição em lote: Processamento eficiente para grandes volumes de áudio pré-gravado.
- Fala personalizada: Modelos com precisão aprimorada para domínios e condições específicos.
Usando o SDK de Fala do Azure
Embora os detalhes específicos variem, dependendo do SDK sendo usado (Python, C#e assim por diante); há um padrão consistente para usar a API de Fala para texto :
- Use um objeto SpeechConfig para encapsular as informações necessárias para se conectar ao recurso de Fala do Azure. Especificamente, sua localização e chave.
- Como alternativa, use um AudioConfig para definir a fonte de entrada para o áudio a ser transcrito. Por padrão, a entrada é o microfone padrão do sistema, mas você também pode especificar um arquivo de áudio.
- Utilize SpeechConfig e AudioConfig para criar um objeto SpeechRecognizer. Esse objeto é um cliente proxy para a API de Conversão de Fala em Texto .
- Use os métodos do objeto SpeechRecognizer para chamar as funções de API subjacentes. Por exemplo, o método RecognizeOnceAsync() usa o serviço de Fala do Azure para transcrever de forma assíncrona um único enunciado falado.
- Processe a resposta do serviço de Fala do Azure. No caso do método RecognizeOnceAsync(), o resultado é um objeto SpeechRecognitionResult que inclui as seguintes propriedades:
- Duração
- OffsetInTicks
- Propriedades
- Motivo
- ResultId
- Texto
Se a operação tiver sido bem-sucedida, a propriedade Reason terá o valor enumerado RecognizedSpeech e a propriedade Text conterá a transcrição. Outros valores possíveis para Resultado incluem NoMatch (indicando que o áudio foi analisado com êxito, mas nenhuma fala foi reconhecida) ou Cancelado, indicando que ocorreu um erro (nesse caso, você pode verificar a coleção Properties da propriedade CancellationReason para determinar o que deu errado).