Início rápido: reconhecer e converter fala em texto

Documentação de referência | Pacotes (NuGet) | Exemplos adicionais no GitHub

Neste guia de início rápido, você cria e executa um aplicativo para reconhecer e transcrever fala em texto em tempo real.

Dica

Você pode experimentar o reconhecimento de fala em tempo real no Speech Studio sem inscrever-se ou gravar qualquer código.

Para transcrever arquivos de áudio de forma assíncrona, confira O que é transcrição em lote. Se você não tiver certeza de qual solução de conversão de fala em texto é adequada para você, confira O que é conversão de fala em texto?

Pré-requisitos

Configurar o ambiente

O SDK de Fala está disponível como um pacote NuGet e implementa o .NET Standard 2.0. Instale o SDK de Fala mais adiante neste guia. Para quaisquer outros requisitos, consulte Instalar o SDK de Fala.

Definir variáveis de ambiente

O aplicativo deverá ser autenticado para acessar os recursos dos serviços de IA do Azure. Para produção, use uma maneira segura de armazenar e acessar suas credenciais. Por exemplo, após obter uma chave para o recurso Fala, grave-a em uma nova variável de ambiente no computador local que executa o aplicativo.

Dica

Não inclua a chave diretamente no código e nunca a divulgue publicamente. Confira Segurança dos serviços de IA do Azure para obter mais opções de autenticação, como o Azure Key Vault.

Para definir a variável de ambiente da chave de recurso de Fala, abra uma janela do console e siga as instruções para o seu sistema operacional e o ambiente de desenvolvimento.

  • Para definir a variável de ambiente SPEECH_KEY, substitua your-key por uma das chaves do recurso.
  • Para definir a variável de ambiente SPEECH_REGION, substitua your-region por uma das regiões do recurso.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region

Observação

Se precisar acessar as variáveis de ambiente apenas no console atual, você pode definir a variável de ambiente com set em vez de setx.

Depois de adicionar as variáveis de ambiente, talvez seja necessário reiniciar todos os programas que precisem ler a variável de ambiente, inclusive a janela do console. Por exemplo, se estiver usando o Visual Studio como editor, reinicie o Visual Studio antes de executar o exemplo.

Reconhecer fala de um microfone

Siga estas etapas para criar um aplicativo de console e instalar o SDK de Fala.

  1. Abra uma janela do prompt de comando na pasta em que você deseja o novo projeto. Execute este comando para criar um aplicativo de console com a CLI do .NET.

    dotnet new console
    

    Esse comando cria o arquivo Program.cs no diretório do projeto.

  2. Instale o SDK de Fala em seu novo projeto com a CLI do .NET.

    dotnet add package Microsoft.CognitiveServices.Speech
    
  3. Substitua o conteúdo do Program.cs pelo seguinte código:

    using System;
    using System.IO;
    using System.Threading.Tasks;
    using Microsoft.CognitiveServices.Speech;
    using Microsoft.CognitiveServices.Speech.Audio;
    
    class Program 
    {
        // This example requires environment variables named "SPEECH_KEY" and "SPEECH_REGION"
        static string speechKey = Environment.GetEnvironmentVariable("SPEECH_KEY");
        static string speechRegion = Environment.GetEnvironmentVariable("SPEECH_REGION");
    
        static void OutputSpeechRecognitionResult(SpeechRecognitionResult speechRecognitionResult)
        {
            switch (speechRecognitionResult.Reason)
            {
                case ResultReason.RecognizedSpeech:
                    Console.WriteLine($"RECOGNIZED: Text={speechRecognitionResult.Text}");
                    break;
                case ResultReason.NoMatch:
                    Console.WriteLine($"NOMATCH: Speech could not be recognized.");
                    break;
                case ResultReason.Canceled:
                    var cancellation = CancellationDetails.FromResult(speechRecognitionResult);
                    Console.WriteLine($"CANCELED: Reason={cancellation.Reason}");
    
                    if (cancellation.Reason == CancellationReason.Error)
                    {
                        Console.WriteLine($"CANCELED: ErrorCode={cancellation.ErrorCode}");
                        Console.WriteLine($"CANCELED: ErrorDetails={cancellation.ErrorDetails}");
                        Console.WriteLine($"CANCELED: Did you set the speech resource key and region values?");
                    }
                    break;
            }
        }
    
        async static Task Main(string[] args)
        {
            var speechConfig = SpeechConfig.FromSubscription(speechKey, speechRegion);        
            speechConfig.SpeechRecognitionLanguage = "en-US";
    
            using var audioConfig = AudioConfig.FromDefaultMicrophoneInput();
            using var speechRecognizer = new SpeechRecognizer(speechConfig, audioConfig);
    
            Console.WriteLine("Speak into your microphone.");
            var speechRecognitionResult = await speechRecognizer.RecognizeOnceAsync();
            OutputSpeechRecognitionResult(speechRecognitionResult);
        }
    }
    
  4. Para alterar o idioma de reconhecimento de fala, substitua en-US por outro en-US. Por exemplo, use es-ES para espanhol (Espanha). Se você não especificar um idioma, o padrão será en-US. Para obter detalhes sobre como identificar um dos vários idiomas que podem ser falados, consulte Identificação de idioma.

  5. Execute seu novo aplicativo de console para iniciar o reconhecimento de fala a partir de um microfone:

    dotnet run
    

    Importante

    Certifique-se de definir SPEECH_KEY e as SPEECH_REGIONvariáveis de ambiente. Se você não definir essas variáveis, a amostra falhará com uma mensagem de erro.

  6. Fale no microfone quando solicitado. O que você fala deve aparecer como texto:

    Speak into your microphone.
    RECOGNIZED: Text=I'm excited to try speech to text.
    

Comentários

Confira outras considerações:

  • Este exemplo usa a operação RecognizeOnceAsync para transcrever enunciados de até 30 segundos ou até que o silêncio seja detectado. Para obter informações sobre o reconhecimento contínuo de áudios mais longos, incluindo conversas multilíngues, consulte Como reconhecer a fala.

  • Para reconhecer a fala de um arquivo de áudio, use FromWavFileInput em vez de FromDefaultMicrophoneInput:

    using var audioConfig = AudioConfig.FromWavFileInput("YourAudioFile.wav");
    
  • Para arquivos de áudio compactados, como MP4, instale o GStreamer e use PullAudioInputStream ou PushAudioInputStream. Para saber mais, confira Como usar áudio de entrada compactado.

Limpar os recursos

Você pode usar o portal do Azure ou a CLI (interface de linha de comando) do Azure para remover o recurso de fala que você criou.

Documentação de referência | Pacotes (NuGet) | Exemplos adicionais no GitHub

Neste guia de início rápido, você cria e executa um aplicativo para reconhecer e transcrever fala em texto em tempo real.

Dica

Você pode experimentar o reconhecimento de fala em tempo real no Speech Studio sem inscrever-se ou gravar qualquer código.

Para transcrever arquivos de áudio de forma assíncrona, confira O que é transcrição em lote. Se você não tiver certeza de qual solução de conversão de fala em texto é adequada para você, confira O que é conversão de fala em texto?

Pré-requisitos

Configurar o ambiente

O SDK de Fala está disponível como um pacote NuGet e implementa o .NET Standard 2.0. Instale o SDK de Fala mais adiante neste guia. Para outros requisitos, consulte Instalar o SDK de Fala.

Definir variáveis de ambiente

O aplicativo deverá ser autenticado para acessar os recursos dos serviços de IA do Azure. Para produção, use uma maneira segura de armazenar e acessar suas credenciais. Por exemplo, após obter uma chave para o recurso Fala, grave-a em uma nova variável de ambiente no computador local que executa o aplicativo.

Dica

Não inclua a chave diretamente no código e nunca a divulgue publicamente. Confira Segurança dos serviços de IA do Azure para obter mais opções de autenticação, como o Azure Key Vault.

Para definir a variável de ambiente da chave de recurso de Fala, abra uma janela do console e siga as instruções para o seu sistema operacional e o ambiente de desenvolvimento.

  • Para definir a variável de ambiente SPEECH_KEY, substitua your-key por uma das chaves do recurso.
  • Para definir a variável de ambiente SPEECH_REGION, substitua your-region por uma das regiões do recurso.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region

Observação

Se precisar acessar as variáveis de ambiente apenas no console atual, você pode definir a variável de ambiente com set em vez de setx.

Depois de adicionar as variáveis de ambiente, talvez seja necessário reiniciar todos os programas que precisem ler a variável de ambiente, inclusive a janela do console. Por exemplo, se estiver usando o Visual Studio como editor, reinicie o Visual Studio antes de executar o exemplo.

Reconhecer fala de um microfone

Siga estas etapas para criar um aplicativo de console e instalar o SDK de Fala.

  1. Crie um novo projeto de console C++ no Visual Studio Community chamado SpeechRecognition.

  2. Selecione Ferramentas>Gerenciador de pacotes Nuget>Console do gerenciador de pacotes. No Console do gerenciador de pacotes, execute este comando:

    Install-Package Microsoft.CognitiveServices.Speech
    
  3. Substitua o conteúdo de SpeechRecognition.cpp pelo seguinte código:

    #include <iostream> 
    #include <stdlib.h>
    #include <speechapi_cxx.h>
    
    using namespace Microsoft::CognitiveServices::Speech;
    using namespace Microsoft::CognitiveServices::Speech::Audio;
    
    std::string GetEnvironmentVariable(const char* name);
    
    int main()
    {
        // This example requires environment variables named "SPEECH_KEY" and "SPEECH_REGION"
        auto speechKey = GetEnvironmentVariable("SPEECH_KEY");
        auto speechRegion = GetEnvironmentVariable("SPEECH_REGION");
    
        if ((size(speechKey) == 0) || (size(speechRegion) == 0)) {
            std::cout << "Please set both SPEECH_KEY and SPEECH_REGION environment variables." << std::endl;
            return -1;
        }
    
        auto speechConfig = SpeechConfig::FromSubscription(speechKey, speechRegion);
    
        speechConfig->SetSpeechRecognitionLanguage("en-US");
    
        auto audioConfig = AudioConfig::FromDefaultMicrophoneInput();
        auto speechRecognizer = SpeechRecognizer::FromConfig(speechConfig, audioConfig);
    
        std::cout << "Speak into your microphone.\n";
        auto result = speechRecognizer->RecognizeOnceAsync().get();
    
        if (result->Reason == ResultReason::RecognizedSpeech)
        {
            std::cout << "RECOGNIZED: Text=" << result->Text << std::endl;
        }
        else if (result->Reason == ResultReason::NoMatch)
        {
            std::cout << "NOMATCH: Speech could not be recognized." << std::endl;
        }
        else if (result->Reason == ResultReason::Canceled)
        {
            auto cancellation = CancellationDetails::FromResult(result);
            std::cout << "CANCELED: Reason=" << (int)cancellation->Reason << std::endl;
    
            if (cancellation->Reason == CancellationReason::Error)
            {
                std::cout << "CANCELED: ErrorCode=" << (int)cancellation->ErrorCode << std::endl;
                std::cout << "CANCELED: ErrorDetails=" << cancellation->ErrorDetails << std::endl;
                std::cout << "CANCELED: Did you set the speech resource key and region values?" << std::endl;
            }
        }
    }
    
    std::string GetEnvironmentVariable(const char* name)
    {
    #if defined(_MSC_VER)
        size_t requiredSize = 0;
        (void)getenv_s(&requiredSize, nullptr, 0, name);
        if (requiredSize == 0)
        {
            return "";
        }
        auto buffer = std::make_unique<char[]>(requiredSize);
        (void)getenv_s(&requiredSize, buffer.get(), requiredSize, name);
        return buffer.get();
    #else
        auto value = getenv(name);
        return value ? value : "";
    #endif
    }
    
  4. Para alterar o idioma de reconhecimento de fala, substitua en-US por outro en-US. Por exemplo, use es-ES para espanhol (Espanha). Se você não especificar um idioma, o padrão será en-US. Para obter detalhes sobre como identificar um dos vários idiomas que podem ser falados, consulte Identificação de idioma.

  5. Compile e execute seu novo aplicativo de console para iniciar o reconhecimento de fala a partir de um microfone.

    Importante

    Certifique-se de definir SPEECH_KEY e as SPEECH_REGIONvariáveis de ambiente. Se você não definir essas variáveis, a amostra falhará com uma mensagem de erro.

  6. Fale no microfone quando solicitado. O que você fala deve aparecer como texto:

    Speak into your microphone.
    RECOGNIZED: Text=I'm excited to try speech to text.
    

Comentários

Confira outras considerações:

  • Este exemplo usa a operação RecognizeOnceAsync para transcrever enunciados de até 30 segundos ou até que o silêncio seja detectado. Para obter informações sobre o reconhecimento contínuo de áudios mais longos, incluindo conversas multilíngues, consulte Como reconhecer a fala.

  • Para reconhecer a fala de um arquivo de áudio, use FromWavFileInput em vez de FromDefaultMicrophoneInput:

    auto audioConfig = AudioConfig::FromWavFileInput("YourAudioFile.wav");
    
  • Para arquivos de áudio compactados, como MP4, instale o GStreamer e use PullAudioInputStream ou PushAudioInputStream. Para saber mais, confira Como usar áudio de entrada compactado.

Limpar os recursos

Você pode usar o portal do Azure ou a CLI (interface de linha de comando) do Azure para remover o recurso de fala que você criou.

Documentação de referência | Pacotes (Go) | Exemplos adicionais no GitHub

Neste guia de início rápido, você cria e executa um aplicativo para reconhecer e transcrever fala em texto em tempo real.

Dica

Você pode experimentar o reconhecimento de fala em tempo real no Speech Studio sem inscrever-se ou gravar qualquer código.

Para transcrever arquivos de áudio de forma assíncrona, confira O que é transcrição em lote. Se você não tiver certeza de qual solução de conversão de fala em texto é adequada para você, confira O que é conversão de fala em texto?

Pré-requisitos

Configurar o ambiente

Instalar o SDK de Fala para Go. Para obter requisitos e instruções, consulte Instalar o SDK de Fala.

Definir variáveis de ambiente

O aplicativo deverá ser autenticado para acessar os recursos dos serviços de IA do Azure. Para produção, use uma maneira segura de armazenar e acessar suas credenciais. Por exemplo, após obter uma chave para o recurso Fala, grave-a em uma nova variável de ambiente no computador local que executa o aplicativo.

Dica

Não inclua a chave diretamente no código e nunca a divulgue publicamente. Confira Segurança dos serviços de IA do Azure para obter mais opções de autenticação, como o Azure Key Vault.

Para definir a variável de ambiente da chave de recurso de Fala, abra uma janela do console e siga as instruções para o seu sistema operacional e o ambiente de desenvolvimento.

  • Para definir a variável de ambiente SPEECH_KEY, substitua your-key por uma das chaves do recurso.
  • Para definir a variável de ambiente SPEECH_REGION, substitua your-region por uma das regiões do recurso.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region

Observação

Se precisar acessar as variáveis de ambiente apenas no console atual, você pode definir a variável de ambiente com set em vez de setx.

Depois de adicionar as variáveis de ambiente, talvez seja necessário reiniciar todos os programas que precisem ler a variável de ambiente, inclusive a janela do console. Por exemplo, se estiver usando o Visual Studio como editor, reinicie o Visual Studio antes de executar o exemplo.

Reconhecer fala de um microfone

Siga estas etapas para criar um módulo GO.

  1. Abra uma janela do prompt de comando na pasta em que você deseja o novo projeto. Crie um novo arquivo chamado speech-recognition.go.

  2. Copie o seguinte código em speech-recognition.go:

    package main
    
    import (
        "bufio"
        "fmt"
        "os"
    
        "github.com/Microsoft/cognitive-services-speech-sdk-go/audio"
        "github.com/Microsoft/cognitive-services-speech-sdk-go/speech"
    )
    
    func sessionStartedHandler(event speech.SessionEventArgs) {
        defer event.Close()
        fmt.Println("Session Started (ID=", event.SessionID, ")")
    }
    
    func sessionStoppedHandler(event speech.SessionEventArgs) {
        defer event.Close()
        fmt.Println("Session Stopped (ID=", event.SessionID, ")")
    }
    
    func recognizingHandler(event speech.SpeechRecognitionEventArgs) {
        defer event.Close()
        fmt.Println("Recognizing:", event.Result.Text)
    }
    
    func recognizedHandler(event speech.SpeechRecognitionEventArgs) {
        defer event.Close()
        fmt.Println("Recognized:", event.Result.Text)
    }
    
    func cancelledHandler(event speech.SpeechRecognitionCanceledEventArgs) {
        defer event.Close()
        fmt.Println("Received a cancellation: ", event.ErrorDetails)
        fmt.Println("Did you set the speech resource key and region values?")
    }
    
    func main() {
        // This example requires environment variables named "SPEECH_KEY" and "SPEECH_REGION"
        speechKey :=  os.Getenv("SPEECH_KEY")
        speechRegion := os.Getenv("SPEECH_REGION")
    
        audioConfig, err := audio.NewAudioConfigFromDefaultMicrophoneInput()
        if err != nil {
            fmt.Println("Got an error: ", err)
            return
        }
        defer audioConfig.Close()
        speechConfig, err := speech.NewSpeechConfigFromSubscription(speechKey, speechRegion)
        if err != nil {
            fmt.Println("Got an error: ", err)
            return
        }
        defer speechConfig.Close()
        speechRecognizer, err := speech.NewSpeechRecognizerFromConfig(speechConfig, audioConfig)
        if err != nil {
            fmt.Println("Got an error: ", err)
            return
        }
        defer speechRecognizer.Close()
        speechRecognizer.SessionStarted(sessionStartedHandler)
        speechRecognizer.SessionStopped(sessionStoppedHandler)
        speechRecognizer.Recognizing(recognizingHandler)
        speechRecognizer.Recognized(recognizedHandler)
        speechRecognizer.Canceled(cancelledHandler)
        speechRecognizer.StartContinuousRecognitionAsync()
        defer speechRecognizer.StopContinuousRecognitionAsync()
        bufio.NewReader(os.Stdin).ReadBytes('\n')
    }
    
  3. Execute os comandos a seguir para criar um arquivo go.mod vinculado aos componentes hospedados no GitHub:

    go mod init speech-recognition
    go get github.com/Microsoft/cognitive-services-speech-sdk-go
    

    Importante

    Certifique-se de definir SPEECH_KEY e as SPEECH_REGIONvariáveis de ambiente. Se você não definir essas variáveis, a amostra falhará com uma mensagem de erro.

  4. Compile e execute o código:

    go build
    go run speech-recognition
    

Limpar os recursos

Você pode usar o portal do Azure ou a CLI (interface de linha de comando) do Azure para remover o recurso de fala que você criou.

Documentação de referência | Amostras adicionais no GitHub

Neste guia de início rápido, você cria e executa um aplicativo para reconhecer e transcrever fala em texto em tempo real.

Dica

Você pode experimentar o reconhecimento de fala em tempo real no Speech Studio sem inscrever-se ou gravar qualquer código.

Para transcrever arquivos de áudio de forma assíncrona, confira O que é transcrição em lote. Se você não tiver certeza de qual solução de conversão de fala em texto é adequada para você, confira O que é conversão de fala em texto?

Pré-requisitos

Configurar o ambiente

Para configurar o seu ambiente, instale o SDK de Fala. O exemplo deste guia de início rápido funciona com o Runtime Java.

  1. Instale o Apache Maven. Em seguida, execute mvn -v para confirmar a instalação bem-sucedida.

  2. Crie um novo arquivo pom.xml na raiz do projeto e copie nele o seguinte código:

    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
        <modelVersion>4.0.0</modelVersion>
        <groupId>com.microsoft.cognitiveservices.speech.samples</groupId>
        <artifactId>quickstart-eclipse</artifactId>
        <version>1.0.0-SNAPSHOT</version>
        <build>
            <sourceDirectory>src</sourceDirectory>
            <plugins>
            <plugin>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.7.0</version>
                <configuration>
                <source>1.8</source>
                <target>1.8</target>
                </configuration>
            </plugin>
            </plugins>
        </build>
        <dependencies>
            <dependency>
            <groupId>com.microsoft.cognitiveservices.speech</groupId>
            <artifactId>client-sdk</artifactId>
            <version>1.36.0</version>
            </dependency>
        </dependencies>
    </project>
    
  3. Instale o SDK de Fala e as dependências.

    mvn clean dependency:copy-dependencies
    

Definir variáveis de ambiente

O aplicativo deverá ser autenticado para acessar os recursos dos serviços de IA do Azure. Para produção, use uma maneira segura de armazenar e acessar suas credenciais. Por exemplo, após obter uma chave para o recurso Fala, grave-a em uma nova variável de ambiente no computador local que executa o aplicativo.

Dica

Não inclua a chave diretamente no código e nunca a divulgue publicamente. Confira Segurança dos serviços de IA do Azure para obter mais opções de autenticação, como o Azure Key Vault.

Para definir a variável de ambiente da chave de recurso de Fala, abra uma janela do console e siga as instruções para o seu sistema operacional e o ambiente de desenvolvimento.

  • Para definir a variável de ambiente SPEECH_KEY, substitua your-key por uma das chaves do recurso.
  • Para definir a variável de ambiente SPEECH_REGION, substitua your-region por uma das regiões do recurso.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region

Observação

Se precisar acessar as variáveis de ambiente apenas no console atual, você pode definir a variável de ambiente com set em vez de setx.

Depois de adicionar as variáveis de ambiente, talvez seja necessário reiniciar todos os programas que precisem ler a variável de ambiente, inclusive a janela do console. Por exemplo, se estiver usando o Visual Studio como editor, reinicie o Visual Studio antes de executar o exemplo.

Reconhecer fala de um microfone

Siga estas etapas para criar um aplicativo de console para reconhecimento de fala.

  1. Crie um novo arquivo chamado SpeechRecognition.java no mesmo diretório raiz do projeto.

  2. Copie o seguinte código em SpeechRecognition.java:

    import com.microsoft.cognitiveservices.speech.*;
    import com.microsoft.cognitiveservices.speech.audio.AudioConfig;
    
    import java.util.concurrent.ExecutionException;
    import java.util.concurrent.Future;
    
    public class SpeechRecognition {
        // This example requires environment variables named "SPEECH_KEY" and "SPEECH_REGION"
        private static String speechKey = System.getenv("SPEECH_KEY");
        private static String speechRegion = System.getenv("SPEECH_REGION");
    
        public static void main(String[] args) throws InterruptedException, ExecutionException {
            SpeechConfig speechConfig = SpeechConfig.fromSubscription(speechKey, speechRegion);
            speechConfig.setSpeechRecognitionLanguage("en-US");
            recognizeFromMicrophone(speechConfig);
        }
    
        public static void recognizeFromMicrophone(SpeechConfig speechConfig) throws InterruptedException, ExecutionException {
            AudioConfig audioConfig = AudioConfig.fromDefaultMicrophoneInput();
            SpeechRecognizer speechRecognizer = new SpeechRecognizer(speechConfig, audioConfig);
    
            System.out.println("Speak into your microphone.");
            Future<SpeechRecognitionResult> task = speechRecognizer.recognizeOnceAsync();
            SpeechRecognitionResult speechRecognitionResult = task.get();
    
            if (speechRecognitionResult.getReason() == ResultReason.RecognizedSpeech) {
                System.out.println("RECOGNIZED: Text=" + speechRecognitionResult.getText());
            }
            else if (speechRecognitionResult.getReason() == ResultReason.NoMatch) {
                System.out.println("NOMATCH: Speech could not be recognized.");
            }
            else if (speechRecognitionResult.getReason() == ResultReason.Canceled) {
                CancellationDetails cancellation = CancellationDetails.fromResult(speechRecognitionResult);
                System.out.println("CANCELED: Reason=" + cancellation.getReason());
    
                if (cancellation.getReason() == CancellationReason.Error) {
                    System.out.println("CANCELED: ErrorCode=" + cancellation.getErrorCode());
                    System.out.println("CANCELED: ErrorDetails=" + cancellation.getErrorDetails());
                    System.out.println("CANCELED: Did you set the speech resource key and region values?");
                }
            }
    
            System.exit(0);
        }
    }
    
  3. Para alterar o idioma de reconhecimento de fala, substitua en-US por outro en-US. Por exemplo, use es-ES para espanhol (Espanha). Se você não especificar um idioma, o padrão será en-US. Para obter detalhes sobre como identificar um dos vários idiomas que podem ser falados, consulte Identificação de idioma.

  4. Execute seu novo aplicativo de console para iniciar o reconhecimento de fala a partir de um microfone:

    javac SpeechRecognition.java -cp ".;target\dependency\*"
    java -cp ".;target\dependency\*" SpeechRecognition
    

    Importante

    Certifique-se de definir SPEECH_KEY e as SPEECH_REGIONvariáveis de ambiente. Se você não definir essas variáveis, a amostra falhará com uma mensagem de erro.

  5. Fale no microfone quando solicitado. O que você fala deve aparecer como texto:

    Speak into your microphone.
    RECOGNIZED: Text=I'm excited to try speech to text.
    

Comentários

Confira outras considerações:

  • Este exemplo usa a operação RecognizeOnceAsync para transcrever enunciados de até 30 segundos ou até que o silêncio seja detectado. Para obter informações sobre o reconhecimento contínuo de áudios mais longos, incluindo conversas multilíngues, consulte Como reconhecer a fala.

  • Para reconhecer a fala de um arquivo de áudio, use fromWavFileInput em vez de fromDefaultMicrophoneInput:

    AudioConfig audioConfig = AudioConfig.fromWavFileInput("YourAudioFile.wav");
    
  • Para arquivos de áudio compactados, como MP4, instale o GStreamer e use PullAudioInputStream ou PushAudioInputStream. Para saber mais, confira Como usar áudio de entrada compactado.

Limpar os recursos

Você pode usar o portal do Azure ou a CLI (interface de linha de comando) do Azure para remover o recurso de fala que você criou.

Documentação de referência | Pacote (npm) | Exemplos adicionais no GitHub | Código-fonte de biblioteca

Neste guia de início rápido, você cria e executa um aplicativo para reconhecer e transcrever fala em texto em tempo real.

Dica

Você pode experimentar o reconhecimento de fala em tempo real no Speech Studio sem inscrever-se ou gravar qualquer código.

Para transcrever arquivos de áudio de forma assíncrona, confira O que é transcrição em lote. Se você não tiver certeza de qual solução de conversão de fala em texto é adequada para você, confira O que é conversão de fala em texto?

Pré-requisitos

Você também precisa de um arquivo de áudio .wav em seu computador local. Você pode usar seu próprio arquivo .wav (de até 30 segundos) ou baixar o arquivo de exemplo https://crbn.us/whatstheweatherlike.wav.

Configurar o ambiente

Para configurar o seu ambiente, instale o SDK de Fala para JavaScript. Execute este comando: npm install microsoft-cognitiveservices-speech-sdk. Para obter instruções de instalação guiadas, consulte Instalar o SDK de Fala.

Definir variáveis de ambiente

O aplicativo deverá ser autenticado para acessar os recursos dos serviços de IA do Azure. Para produção, use uma maneira segura de armazenar e acessar suas credenciais. Por exemplo, após obter uma chave para o recurso Fala, grave-a em uma nova variável de ambiente no computador local que executa o aplicativo.

Dica

Não inclua a chave diretamente no código e nunca a divulgue publicamente. Confira Segurança dos serviços de IA do Azure para obter mais opções de autenticação, como o Azure Key Vault.

Para definir a variável de ambiente da chave de recurso de Fala, abra uma janela do console e siga as instruções para o seu sistema operacional e o ambiente de desenvolvimento.

  • Para definir a variável de ambiente SPEECH_KEY, substitua your-key por uma das chaves do recurso.
  • Para definir a variável de ambiente SPEECH_REGION, substitua your-region por uma das regiões do recurso.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region

Observação

Se precisar acessar as variáveis de ambiente apenas no console atual, você pode definir a variável de ambiente com set em vez de setx.

Depois de adicionar as variáveis de ambiente, talvez seja necessário reiniciar todos os programas que precisem ler a variável de ambiente, inclusive a janela do console. Por exemplo, se estiver usando o Visual Studio como editor, reinicie o Visual Studio antes de executar o exemplo.

Reconhecer a fala de um arquivo

Siga estas etapas para criar um aplicativo de console Node.js para reconhecimento de fala.

  1. Abra uma janela do prompt de comando em que você deseja o novo projeto e crie um novo arquivo chamado SpeechRecognition.js.

  2. Instale o SDK de Fala para JavaScript:

    npm install microsoft-cognitiveservices-speech-sdk
    
  3. Copie o seguinte código em SpeechRecognition.js:

    const fs = require("fs");
    const sdk = require("microsoft-cognitiveservices-speech-sdk");
    
    // This example requires environment variables named "SPEECH_KEY" and "SPEECH_REGION"
    const speechConfig = sdk.SpeechConfig.fromSubscription(process.env.SPEECH_KEY, process.env.SPEECH_REGION);
    speechConfig.speechRecognitionLanguage = "en-US";
    
    function fromFile() {
        let audioConfig = sdk.AudioConfig.fromWavFileInput(fs.readFileSync("YourAudioFile.wav"));
        let speechRecognizer = new sdk.SpeechRecognizer(speechConfig, audioConfig);
    
        speechRecognizer.recognizeOnceAsync(result => {
            switch (result.reason) {
                case sdk.ResultReason.RecognizedSpeech:
                    console.log(`RECOGNIZED: Text=${result.text}`);
                    break;
                case sdk.ResultReason.NoMatch:
                    console.log("NOMATCH: Speech could not be recognized.");
                    break;
                case sdk.ResultReason.Canceled:
                    const cancellation = sdk.CancellationDetails.fromResult(result);
                    console.log(`CANCELED: Reason=${cancellation.reason}`);
    
                    if (cancellation.reason == sdk.CancellationReason.Error) {
                        console.log(`CANCELED: ErrorCode=${cancellation.ErrorCode}`);
                        console.log(`CANCELED: ErrorDetails=${cancellation.errorDetails}`);
                        console.log("CANCELED: Did you set the speech resource key and region values?");
                    }
                    break;
            }
            speechRecognizer.close();
        });
    }
    fromFile();
    
  4. Em SpeechRecognition.js, substitua YourAudioFile.wav pelo seu próprio arquivo .wav. Este exemplo só reconhece a fala de um arquivo .wav. Para obter informações sobre outros formatos de áudio, confira Como usar áudio de entrada compactado. Este exemplo dá suporte a um áudio de até 30 segundos.

  5. Para alterar o idioma de reconhecimento de fala, substitua en-US por outro en-US. Por exemplo, use es-ES para espanhol (Espanha). Se você não especificar um idioma, o padrão será en-US. Para obter detalhes sobre como identificar um dos vários idiomas que podem ser falados, consulte Identificação de idioma.

  6. Execute seu novo aplicativo de console para iniciar o reconhecimento de fala a partir de um arquivo:

    node.exe SpeechRecognition.js
    

    Importante

    Certifique-se de definir SPEECH_KEY e as SPEECH_REGIONvariáveis de ambiente. Se você não definir essas variáveis, a amostra falhará com uma mensagem de erro.

    A fala do arquivo de áudio deve sair como texto:

    RECOGNIZED: Text=I'm excited to try speech to text.
    

Comentários

Este exemplo usa a operação recognizeOnceAsync para transcrever enunciados de até 30 segundos ou até que o silêncio seja detectado. Para obter informações sobre o reconhecimento contínuo de áudios mais longos, incluindo conversas multilíngues, consulte Como reconhecer a fala.

Observação

Não há suporte para reconhecer a fala a partir de um microfone no Node.js. Há suporte apenas em um ambiente JavaScript baseado em navegador. Para obter mais informações, confira o exemplo de React e a implementação de conversão de fala em texto a partir de um microfone no GitHub.

O exemplo de React mostra padrões de design para a troca e o gerenciamento de tokens de autenticação. Ele também mostra a captura de áudio de um microfone ou arquivo para conversões de fala em texto.

Limpar os recursos

Você pode usar o portal do Azure ou a CLI (interface de linha de comando) do Azure para remover o recurso de fala que você criou.

Documentação de referência | Pacotes (Download) | Exemplos adicionais no GitHub

Neste guia de início rápido, você cria e executa um aplicativo para reconhecer e transcrever fala em texto em tempo real.

Dica

Você pode experimentar o reconhecimento de fala em tempo real no Speech Studio sem inscrever-se ou gravar qualquer código.

Para transcrever arquivos de áudio de forma assíncrona, confira O que é transcrição em lote. Se você não tiver certeza de qual solução de conversão de fala em texto é adequada para você, confira O que é conversão de fala em texto?

Pré-requisitos

Configurar o ambiente

O SDK de Fala para Objective-C é distribuído como um pacote de estrutura. A estrutura dá suporte a Objective-C e Swift no iOS e no macOS.

O SDK de Fala pode ser usado em projetos do Xcode como um CocoaPod, ou baixado diretamente e vinculado manualmente. Este guia usa um CocoaPod. Instale o gerenciador de dependência do CocoaPod conforme descrito nas instruções de instalação.

Definir variáveis de ambiente

O aplicativo deverá ser autenticado para acessar os recursos dos serviços de IA do Azure. Para produção, use uma maneira segura de armazenar e acessar suas credenciais. Por exemplo, após obter uma chave para o recurso Fala, grave-a em uma nova variável de ambiente no computador local que executa o aplicativo.

Dica

Não inclua a chave diretamente no código e nunca a divulgue publicamente. Confira Segurança dos serviços de IA do Azure para obter mais opções de autenticação, como o Azure Key Vault.

Para definir a variável de ambiente da chave de recurso de Fala, abra uma janela do console e siga as instruções para o seu sistema operacional e o ambiente de desenvolvimento.

  • Para definir a variável de ambiente SPEECH_KEY, substitua your-key por uma das chaves do recurso.
  • Para definir a variável de ambiente SPEECH_REGION, substitua your-region por uma das regiões do recurso.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region

Observação

Se precisar acessar as variáveis de ambiente apenas no console atual, você pode definir a variável de ambiente com set em vez de setx.

Depois de adicionar as variáveis de ambiente, talvez seja necessário reiniciar todos os programas que precisem ler a variável de ambiente, inclusive a janela do console. Por exemplo, se estiver usando o Visual Studio como editor, reinicie o Visual Studio antes de executar o exemplo.

Reconhecer fala de um microfone

Siga estas etapas para reconhecer a fala em um aplicativo macOS.

  1. Clone o repositório Azure-Samples/cognitive-services-speech-sdk para obter o projeto de exemplo Reconhecer fala a partir de um microfone em Objective-C no MacOS. O repositório também tem exemplos de iOS.

  2. Em uma janela do console, navegue até o diretório do aplicativo de exemplo baixado, helloworld.

  3. Execute o comando pod install. Esse comando gera um workspace do Xcode helloworld.xcworkspace que contém o aplicativo de exemplo e o SDK de Fala como uma dependência.

  4. Abra o workspace helloworld.xcworkspace no Xcode.

  5. Abra o arquivo chamado AppDelegate.m e localize o método buttonPressed como mostrado aqui.

    - (void)buttonPressed:(NSButton *)button {
        // Creates an instance of a speech config with specified subscription key and service region.
        NSString *speechKey = [[[NSProcessInfo processInfo] environment] objectForKey:@"SPEECH_KEY"];
        NSString *serviceRegion = [[[NSProcessInfo processInfo] environment] objectForKey:@"SPEECH_REGION"];
    
        SPXAudioConfiguration *audioConfig = [[SPXAudioConfiguration alloc] initWithMicrophone:nil];
        SPXSpeechConfiguration *speechConfig = [[SPXSpeechConfiguration alloc] initWithSubscription:speechKey region:serviceRegion];
        SPXSpeechRecognizer *speechRecognizer = [[SPXSpeechRecognizer alloc] initWithSpeechConfiguration:speechConfig language:@"en-US" audioConfiguration:audioConfig];
    
        NSLog(@"Speak into your microphone.");
    
        SPXSpeechRecognitionResult *speechResult = [speechRecognizer recognizeOnce];
    
        // Checks result.
        if (SPXResultReason_Canceled == speechResult.reason) {
            SPXCancellationDetails *details = [[SPXCancellationDetails alloc] initFromCanceledRecognitionResult:speechResult];
            NSLog(@"Speech recognition was canceled: %@. Did you set the speech resource key and region values?", details.errorDetails);
            [self.label setStringValue:([NSString stringWithFormat:@"Canceled: %@", details.errorDetails])];
        } else if (SPXResultReason_RecognizedSpeech == speechResult.reason) {
            NSLog(@"Speech recognition result received: %@", speechResult.text);
            [self.label setStringValue:(speechResult.text)];
        } else {
            NSLog(@"There was an error.");
            [self.label setStringValue:(@"Speech Recognition Error")];
        }
    }
    
  6. Em AppDelegate.m, use as variáveis de ambiente que você definiu anteriormente para a chave de recurso de Fala e região.

    NSString *speechKey = [[[NSProcessInfo processInfo] environment] objectForKey:@"SPEECH_KEY"];
    NSString *serviceRegion = [[[NSProcessInfo processInfo] environment] objectForKey:@"SPEECH_REGION"];
    
  7. Para alterar o idioma de reconhecimento de fala, substitua en-US por outro en-US. Por exemplo, use es-ES para espanhol (Espanha). Se você não especificar um idioma, o padrão será en-US. Para obter detalhes sobre como identificar um dos vários idiomas que podem ser falados, consulte Identificação de idioma.

  8. Para tornar a saída de depuração visível, selecione Exibir>Área de Depuração>Ativar Console.

  9. Para criar e executar o código de exemplo, selecione Produto>Executar no menu ou selecione o botão Executar.

Importante

Certifique-se de definir SPEECH_KEY e as SPEECH_REGIONvariáveis de ambiente. Se você não definir essas variáveis, a amostra falhará com uma mensagem de erro.

Depois de selecionar o botão no aplicativo e dizer algumas palavras, você deverá ver o texto que falou na parte inferior da tela. Quando você executa o aplicativo pela primeira vez, ele solicita que você conceda acesso ao microfone do seu computador.

Comentários

Confira outras considerações:

  • Este exemplo usa a operação recognizeOnce para transcrever enunciados de até 30 segundos ou até que o silêncio seja detectado. Para obter informações sobre o reconhecimento contínuo de áudios mais longos, incluindo conversas multilíngues, consulte Como reconhecer a fala.

  • Para reconhecer a fala de um arquivo de áudio, use initWithWavFileInput em vez de initWithMicrophone:

    SPXAudioConfiguration *audioConfig = [[SPXAudioConfiguration alloc] initWithWavFileInput:YourAudioFile];
    

Limpar os recursos

Você pode usar o portal do Azure ou a CLI (interface de linha de comando) do Azure para remover o recurso de fala que você criou.

Documentação de referência | Pacotes (Download) | Exemplos adicionais no GitHub

Neste guia de início rápido, você cria e executa um aplicativo para reconhecer e transcrever fala em texto em tempo real.

Dica

Você pode experimentar o reconhecimento de fala em tempo real no Speech Studio sem inscrever-se ou gravar qualquer código.

Para transcrever arquivos de áudio de forma assíncrona, confira O que é transcrição em lote. Se você não tiver certeza de qual solução de conversão de fala em texto é adequada para você, confira O que é conversão de fala em texto?

Pré-requisitos

Configurar o ambiente

O SDK de Fala para Swift é distribuído como um pacote de estrutura. A estrutura dá suporte a Objective-C e Swift no iOS e no macOS.

O SDK de Fala pode ser usado em projetos do Xcode como um CocoaPod, ou baixado diretamente e vinculado manualmente. Este guia usa um CocoaPod. Instale o gerenciador de dependência do CocoaPod conforme descrito nas instruções de instalação.

Definir variáveis de ambiente

O aplicativo deverá ser autenticado para acessar os recursos dos serviços de IA do Azure. Para produção, use uma maneira segura de armazenar e acessar suas credenciais. Por exemplo, após obter uma chave para o recurso Fala, grave-a em uma nova variável de ambiente no computador local que executa o aplicativo.

Dica

Não inclua a chave diretamente no código e nunca a divulgue publicamente. Confira Segurança dos serviços de IA do Azure para obter mais opções de autenticação, como o Azure Key Vault.

Para definir a variável de ambiente da chave de recurso de Fala, abra uma janela do console e siga as instruções para o seu sistema operacional e o ambiente de desenvolvimento.

  • Para definir a variável de ambiente SPEECH_KEY, substitua your-key por uma das chaves do recurso.
  • Para definir a variável de ambiente SPEECH_REGION, substitua your-region por uma das regiões do recurso.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region

Observação

Se precisar acessar as variáveis de ambiente apenas no console atual, você pode definir a variável de ambiente com set em vez de setx.

Depois de adicionar as variáveis de ambiente, talvez seja necessário reiniciar todos os programas que precisem ler a variável de ambiente, inclusive a janela do console. Por exemplo, se estiver usando o Visual Studio como editor, reinicie o Visual Studio antes de executar o exemplo.

Reconhecer fala de um microfone

Siga estas etapas para reconhecer a fala em um aplicativo macOS.

  1. Clone o repositório Azure-Samples/cognitive-services-speech-sdk para obter o projeto de exemplo Reconhecer fala a partir de um microfone em Swift no MacOS. O repositório também tem exemplos de iOS.

  2. Navegue até o diretório do aplicativo de exemplo baixado (helloworld) em um terminal.

  3. Execute o comando pod install. Esse comando gera um espaço de trabalho do Xcode helloworld.xcworkspace que contém o aplicativo de amostra e o SDK de Fala como uma dependência.

  4. Abra o workspace helloworld.xcworkspace no Xcode.

  5. Abra o arquivo chamado AppDelegate.swift e localize os métodos applicationDidFinishLaunching e recognizeFromMic como mostrado aqui.

    import Cocoa
    
    @NSApplicationMain
    class AppDelegate: NSObject, NSApplicationDelegate {
        var label: NSTextField!
        var fromMicButton: NSButton!
    
        var sub: String!
        var region: String!
    
        @IBOutlet weak var window: NSWindow!
    
        func applicationDidFinishLaunching(_ aNotification: Notification) {
            print("loading")
            // load subscription information
            sub = ProcessInfo.processInfo.environment["SPEECH_KEY"]
            region = ProcessInfo.processInfo.environment["SPEECH_REGION"]
    
            label = NSTextField(frame: NSRect(x: 100, y: 50, width: 200, height: 200))
            label.textColor = NSColor.black
            label.lineBreakMode = .byWordWrapping
    
            label.stringValue = "Recognition Result"
            label.isEditable = false
    
            self.window.contentView?.addSubview(label)
    
            fromMicButton = NSButton(frame: NSRect(x: 100, y: 300, width: 200, height: 30))
            fromMicButton.title = "Recognize"
            fromMicButton.target = self
            fromMicButton.action = #selector(fromMicButtonClicked)
            self.window.contentView?.addSubview(fromMicButton)
        }
    
        @objc func fromMicButtonClicked() {
            DispatchQueue.global(qos: .userInitiated).async {
                self.recognizeFromMic()
            }
        }
    
        func recognizeFromMic() {
            var speechConfig: SPXSpeechConfiguration?
            do {
                try speechConfig = SPXSpeechConfiguration(subscription: sub, region: region)
            } catch {
                print("error \(error) happened")
                speechConfig = nil
            }
            speechConfig?.speechRecognitionLanguage = "en-US"
    
            let audioConfig = SPXAudioConfiguration()
    
            let reco = try! SPXSpeechRecognizer(speechConfiguration: speechConfig!, audioConfiguration: audioConfig)
    
            reco.addRecognizingEventHandler() {reco, evt in
                print("intermediate recognition result: \(evt.result.text ?? "(no result)")")
                self.updateLabel(text: evt.result.text, color: .gray)
            }
    
            updateLabel(text: "Listening ...", color: .gray)
            print("Listening...")
    
            let result = try! reco.recognizeOnce()
            print("recognition result: \(result.text ?? "(no result)"), reason: \(result.reason.rawValue)")
            updateLabel(text: result.text, color: .black)
    
            if result.reason != SPXResultReason.recognizedSpeech {
                let cancellationDetails = try! SPXCancellationDetails(fromCanceledRecognitionResult: result)
                print("cancelled: \(result.reason), \(cancellationDetails.errorDetails)")
                print("Did you set the speech resource key and region values?")
                updateLabel(text: "Error: \(cancellationDetails.errorDetails)", color: .red)
            }
        }
    
        func updateLabel(text: String?, color: NSColor) {
            DispatchQueue.main.async {
                self.label.stringValue = text!
                self.label.textColor = color
            }
        }
    }
    
  6. Em AppDelegate.m, use as variáveis de ambiente que você definiu anteriormente para a chave de recurso de Fala e região.

    sub = ProcessInfo.processInfo.environment["SPEECH_KEY"]
    region = ProcessInfo.processInfo.environment["SPEECH_REGION"]
    
  7. Para alterar o idioma de reconhecimento de fala, substitua en-US por outro en-US. Por exemplo, use es-ES para espanhol (Espanha). Se você não especificar um idioma, o padrão será en-US. Para obter detalhes sobre como identificar um dos vários idiomas que podem ser falados, consulte Identificação de idioma.

  8. Para tornar a saída de depuração visível, selecione Exibir>Área de Depuração>Ativar Console.

  9. Compile e execute o código de exemplo selecionando Produto>Executar no menu ou selecionando o botão Reproduzir.

    Importante

    Certifique-se de definir SPEECH_KEY e as SPEECH_REGIONvariáveis de ambiente. Se você não definir essas variáveis, a amostra falhará com uma mensagem de erro.

Depois de selecionar o botão no aplicativo e dizer algumas palavras, você deverá ver o texto que falou na parte inferior da tela. Quando você executa o aplicativo pela primeira vez, ele solicita que você conceda acesso ao microfone do seu computador.

Comentários

Este exemplo usa a operação recognizeOnce para transcrever enunciados de até 30 segundos ou até que o silêncio seja detectado. Para obter informações sobre o reconhecimento contínuo de áudios mais longos, incluindo conversas multilíngues, consulte Como reconhecer a fala.

Limpar os recursos

Você pode usar o portal do Azure ou a CLI (interface de linha de comando) do Azure para remover o recurso de fala que você criou.

Documentação de referência | Pacotes (PyPi) | Exemplos adicionais no GitHub

Neste guia de início rápido, você cria e executa um aplicativo para reconhecer e transcrever fala em texto em tempo real.

Dica

Você pode experimentar o reconhecimento de fala em tempo real no Speech Studio sem inscrever-se ou gravar qualquer código.

Para transcrever arquivos de áudio de forma assíncrona, confira O que é transcrição em lote. Se você não tiver certeza de qual solução de conversão de fala em texto é adequada para você, confira O que é conversão de fala em texto?

Pré-requisitos

Configurar o ambiente

O SDK de fala para Python está disponível como um módulo PyPI (índice de pacote do Python). O SDK de Fala para Python é compatível com Windows, Linux e macOS.

Instale uma versão do Python a partir da versão 3.7 ou posterior. Para outros requisitos, consulte Instalar o SDK de Fala.

Definir variáveis de ambiente

O aplicativo deverá ser autenticado para acessar os recursos dos serviços de IA do Azure. Para produção, use uma maneira segura de armazenar e acessar suas credenciais. Por exemplo, após obter uma chave para o recurso Fala, grave-a em uma nova variável de ambiente no computador local que executa o aplicativo.

Dica

Não inclua a chave diretamente no código e nunca a divulgue publicamente. Confira Segurança dos serviços de IA do Azure para obter mais opções de autenticação, como o Azure Key Vault.

Para definir a variável de ambiente da chave de recurso de Fala, abra uma janela do console e siga as instruções para o seu sistema operacional e o ambiente de desenvolvimento.

  • Para definir a variável de ambiente SPEECH_KEY, substitua your-key por uma das chaves do recurso.
  • Para definir a variável de ambiente SPEECH_REGION, substitua your-region por uma das regiões do recurso.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region

Observação

Se precisar acessar as variáveis de ambiente apenas no console atual, você pode definir a variável de ambiente com set em vez de setx.

Depois de adicionar as variáveis de ambiente, talvez seja necessário reiniciar todos os programas que precisem ler a variável de ambiente, inclusive a janela do console. Por exemplo, se estiver usando o Visual Studio como editor, reinicie o Visual Studio antes de executar o exemplo.

Reconhecer fala de um microfone

Siga estas etapas para criar um aplicativo de console.

  1. Abra uma janela do prompt de comando na pasta em que você deseja o novo projeto. Crie um novo arquivo chamado speech_recognition.py.

  2. Execute este comando para instalar o SDK de Fala:

    pip install azure-cognitiveservices-speech
    
  3. Copie o seguinte código em speech_recognition.py:

    import os
    import azure.cognitiveservices.speech as speechsdk
    
    def recognize_from_microphone():
        # This example requires environment variables named "SPEECH_KEY" and "SPEECH_REGION"
        speech_config = speechsdk.SpeechConfig(subscription=os.environ.get('SPEECH_KEY'), region=os.environ.get('SPEECH_REGION'))
        speech_config.speech_recognition_language="en-US"
    
        audio_config = speechsdk.audio.AudioConfig(use_default_microphone=True)
        speech_recognizer = speechsdk.SpeechRecognizer(speech_config=speech_config, audio_config=audio_config)
    
        print("Speak into your microphone.")
        speech_recognition_result = speech_recognizer.recognize_once_async().get()
    
        if speech_recognition_result.reason == speechsdk.ResultReason.RecognizedSpeech:
            print("Recognized: {}".format(speech_recognition_result.text))
        elif speech_recognition_result.reason == speechsdk.ResultReason.NoMatch:
            print("No speech could be recognized: {}".format(speech_recognition_result.no_match_details))
        elif speech_recognition_result.reason == speechsdk.ResultReason.Canceled:
            cancellation_details = speech_recognition_result.cancellation_details
            print("Speech Recognition canceled: {}".format(cancellation_details.reason))
            if cancellation_details.reason == speechsdk.CancellationReason.Error:
                print("Error details: {}".format(cancellation_details.error_details))
                print("Did you set the speech resource key and region values?")
    
    recognize_from_microphone()
    
  4. Para alterar o idioma de reconhecimento de fala, substitua en-US por outro en-US. Por exemplo, use es-ES para espanhol (Espanha). Se você não especificar um idioma, o padrão será en-US. Para obter detalhes sobre como identificar um dos vários idiomas que podem ser falados, consulte identificação do idioma.

  5. Execute seu novo aplicativo de console para iniciar o reconhecimento de fala a partir de um microfone:

    python speech_recognition.py
    

    Importante

    Certifique-se de definir SPEECH_KEY e as SPEECH_REGIONvariáveis de ambiente. Se você não definir essas variáveis, a amostra falhará com uma mensagem de erro.

  6. Fale no microfone quando solicitado. O que você fala deve aparecer como texto:

    Speak into your microphone.
    RECOGNIZED: Text=I'm excited to try speech to text.
    

Comentários

Confira outras considerações:

  • Este exemplo usa a operação recognize_once_async para transcrever enunciados de até 30 segundos ou até que o silêncio seja detectado. Para obter informações sobre o reconhecimento contínuo de áudios mais longos, incluindo conversas multilíngues, consulte Como reconhecer a fala.

  • Para reconhecer a fala de um arquivo de áudio, use filename em vez de use_default_microphone:

    audio_config = speechsdk.audio.AudioConfig(filename="YourAudioFile.wav")
    
  • Para arquivos de áudio compactados, como MP4, instale o GStreamer e use PullAudioInputStream ou PushAudioInputStream. Para saber mais, confira Como usar áudio de entrada compactado.

Limpar os recursos

Você pode usar o portal do Azure ou a CLI (interface de linha de comando) do Azure para remover o recurso de fala que você criou.

Referência da API REST de conversão de fala em texto | Referência da API REST de conversão de fala em texto para áudios curtos | Exemplos adicionais no GitHub

Neste guia de início rápido, você cria e executa um aplicativo para reconhecer e transcrever fala em texto em tempo real.

Dica

Você pode experimentar o reconhecimento de fala em tempo real no Speech Studio sem inscrever-se ou gravar qualquer código.

Para transcrever arquivos de áudio de forma assíncrona, confira O que é transcrição em lote. Se você não tiver certeza de qual solução de conversão de fala em texto é adequada para você, confira O que é conversão de fala em texto?

Pré-requisitos

Você também precisa de um arquivo de áudio .wav em seu computador local. Você pode usar seu próprio arquivo .wav de até 60 segundos ou baixar o arquivo de exemplo https://crbn.us/whatstheweatherlike.wav.

Definir variáveis de ambiente

O aplicativo deverá ser autenticado para acessar os recursos dos serviços de IA do Azure. Para produção, use uma maneira segura de armazenar e acessar suas credenciais. Por exemplo, após obter uma chave para o recurso Fala, grave-a em uma nova variável de ambiente no computador local que executa o aplicativo.

Dica

Não inclua a chave diretamente no código e nunca a divulgue publicamente. Confira Segurança dos serviços de IA do Azure para obter mais opções de autenticação, como o Azure Key Vault.

Para definir a variável de ambiente da chave de recurso de Fala, abra uma janela do console e siga as instruções para o seu sistema operacional e o ambiente de desenvolvimento.

  • Para definir a variável de ambiente SPEECH_KEY, substitua your-key por uma das chaves do recurso.
  • Para definir a variável de ambiente SPEECH_REGION, substitua your-region por uma das regiões do recurso.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region

Observação

Se precisar acessar as variáveis de ambiente apenas no console atual, você pode definir a variável de ambiente com set em vez de setx.

Depois de adicionar as variáveis de ambiente, talvez seja necessário reiniciar todos os programas que precisem ler a variável de ambiente, inclusive a janela do console. Por exemplo, se estiver usando o Visual Studio como editor, reinicie o Visual Studio antes de executar o exemplo.

Reconhecer a fala de um arquivo

Abra uma janela do console e execute o seguinte comando cURL. Substitua YourAudioFile.wav pelo caminho e nome do seu arquivo de áudio.

curl --location --request POST "https://%SPEECH_REGION%.stt.speech.microsoft.com/speech/recognition/conversation/cognitiveservices/v1?language=en-US&format=detailed" ^
--header "Ocp-Apim-Subscription-Key: %SPEECH_KEY%" ^
--header "Content-Type: audio/wav" ^
--data-binary "@YourAudioFile.wav"

Importante

Certifique-se de definir SPEECH_KEY e as SPEECH_REGIONvariáveis de ambiente. Se você não definir essas variáveis, a amostra falhará com uma mensagem de erro.

Você deve receber uma resposta semelhante ao que é mostrado aqui. O DisplayText deve ser o texto que foi reconhecido do arquivo de áudio. O comando reconhece até 60 segundos de áudio e o converte em texto.

{
    "RecognitionStatus": "Success",
    "DisplayText": "My voice is my passport, verify me.",
    "Offset": 6600000,
    "Duration": 32100000
}

Para obter mais informações, confira a API REST de conversão de fala em texto para áudios curtos.

Limpar os recursos

Você pode usar o portal do Azure ou a CLI (interface de linha de comando) do Azure para remover o recurso de fala que você criou.

Neste guia de início rápido, você cria e executa um aplicativo para reconhecer e transcrever fala em texto em tempo real.

Dica

Você pode experimentar o reconhecimento de fala em tempo real no Speech Studio sem inscrever-se ou gravar qualquer código.

Para transcrever arquivos de áudio de forma assíncrona, confira O que é transcrição em lote. Se você não tiver certeza de qual solução de conversão de fala em texto é adequada para você, confira O que é conversão de fala em texto?

Pré-requisitos

Configurar o ambiente

Siga estas etapas e consulte o início rápido da CLI de Fala para obter outros requisitos para sua plataforma.

  1. Execute o seguinte comando da CLI do .NET para instalar a CLI de Fala:

    dotnet tool install --global Microsoft.CognitiveServices.Speech.CLI
    
  2. Execute os comandos a seguir para configurar a chave e a região do recurso Fala. Substitua SUBSCRIPTION-KEY pela sua chave do recurso de Fala e substitua REGION pela sua região do recurso de Fala.

    spx config @key --set SUBSCRIPTION-KEY
    spx config @region --set REGION
    

Reconhecer fala de um microfone

  1. Execute o comando a seguir para iniciar o reconhecimento de fala a partir de um microfone:

    spx recognize --microphone --source en-US
    
  2. Fale próximo ao microfone e você verá a transcrição de suas palavras em texto em tempo real. A CLI de Fala é interrompida após um período de silêncio, 30 segundos ou ao selecionar Ctrl+C.

    Connection CONNECTED...
    RECOGNIZED: I'm excited to try speech to text.
    

Comentários

Confira outras considerações:

  • Para reconhecer a fala de um arquivo de áudio, use --file em vez de --microphone. Para arquivos de áudio compactados, como MP4, instale o GStreamer e use --format. Para saber mais, confira Como usar áudio de entrada compactado.

    spx recognize --file YourAudioFile.wav
    spx recognize --file YourAudioFile.mp4 --format any
    
  • Para melhorar a precisão do reconhecimento de palavras específicas ou enunciados, use uma lista de frases. Você inclui uma lista de frases em linha ou com um arquivo de texto junto com o comando recognize:

    spx recognize --microphone --phrases "Contoso;Jessie;Rehaan;"
    spx recognize --microphone --phrases @phrases.txt
    
  • Para alterar o idioma de reconhecimento de fala, substitua en-US por outro en-US. Por exemplo, use es-ES para espanhol (Espanha). Se você não especificar um idioma, o padrão será en-US.

    spx recognize --microphone --source es-ES
    
  • Para reconhecimento contínuo de áudio por mais de 30 segundos, acrescente --continuous:

    spx recognize --microphone --source es-ES --continuous
    
  • Execute este comando para obter informações sobre mais opções de reconhecimento de fala, como entrada e saída de arquivo:

    spx help recognize
    

Limpar os recursos

Você pode usar o portal do Azure ou a CLI (interface de linha de comando) do Azure para remover o recurso de fala que você criou.

Próxima etapa