Início Rápido: converta texto em fala

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

Neste guia de início rápido, você executará um aplicativo que faz a sintetização de texto em fala.

Dica

Você pode experimentar a conversão de texto em fala na Galeria de Voz do Speech Studio Voice sem se inscrever ou escrever qualquer código.

Pré-requisitos

Configurar o ambiente

O Speech SDK está disponível como um pacote NuGet que implementa o .NET Standard 2.0. Instale o SDK de Fala mais adiante neste guia. Para obter os 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.

Sintetizar para saída em alto-Falante

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
    

    O comando cria um 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 de Program.cs pelo código a seguir.

    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 OutputSpeechSynthesisResult(SpeechSynthesisResult speechSynthesisResult, string text)
        {
            switch (speechSynthesisResult.Reason)
            {
                case ResultReason.SynthesizingAudioCompleted:
                    Console.WriteLine($"Speech synthesized for text: [{text}]");
                    break;
                case ResultReason.Canceled:
                    var cancellation = SpeechSynthesisCancellationDetails.FromResult(speechSynthesisResult);
                    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;
                default:
                    break;
            }
        }
    
        async static Task Main(string[] args)
        {
            var speechConfig = SpeechConfig.FromSubscription(speechKey, speechRegion);      
    
            // The neural multilingual voice can speak different languages based on the input text.
            speechConfig.SpeechSynthesisVoiceName = "en-US-AvaMultilingualNeural"; 
    
            using (var speechSynthesizer = new SpeechSynthesizer(speechConfig))
            {
                // Get text from the console and synthesize to the default speaker.
                Console.WriteLine("Enter some text that you want to speak >");
                string text = Console.ReadLine();
    
                var speechSynthesisResult = await speechSynthesizer.SpeakTextAsync(text);
                OutputSpeechSynthesisResult(speechSynthesisResult, text);
            }
    
            Console.WriteLine("Press any key to exit...");
            Console.ReadKey();
        }
    }
    
  4. Para alterar o idioma de síntese de fala, substitua en-US-AvaMultilingualNeural por outra voz com suporte.

    Todas as vozes neurais são multilíngues e fluentes em seu próprio idioma e inglês. Por exemplo, se o texto de entrada em inglês for "estou empolgado em experimentar a conversão de texto em fala" e você definir es-ES-ElviraNeural, o texto será falado em inglês com um sotaque espanhol. Se a voz não falar o idioma do texto de entrada, o serviço Speech não emitirá áudio sintetizado.

  5. Execute seu novo aplicativo de console para iniciar a síntese de fala para o alto-falante padrão.

    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. Insira um texto que você deseja falar. Por exemplo, digite Estou animado para experimentar a conversão de texto em fala. Selecione a tecla Enter para ouvir a fala sintetizada.

    Enter some text that you want to speak >
    I'm excited to try text to speech
    

Comentários

Mais opções de sintetização de voz

Este guia de início rápido usa a operação SpeakTextAsync para sintetizar um pequeno bloco de texto inserido. Você também pode usar um texto de formato longo de um arquivo e obter um controle mais preciso sobre estilos de voz, prosódia e outras configurações.

Vozes de conversão de texto em fala do OpenAI na Fala de IA do Azure

Também há suporte para vozes de conversão de texto em fala do OpenAI. Confira Vozes de conversão de texto em fala do OpenAI na Fala de IA do Azure e vozes multilíngues. Você pode substituir en-US-AvaMultilingualNeural por um nome de voz do OpenAI com suporte, como en-US-FableMultilingualNeural.

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ê executará um aplicativo que faz a sintetização de texto em fala.

Dica

Você pode experimentar a conversão de texto em fala na Galeria de Voz do Speech Studio Voice sem se inscrever ou escrever qualquer código.

Pré-requisitos

Configurar o ambiente

O Speech SDK está disponível como um pacote NuGet que implementa o .NET Standard 2.0. Instale o SDK de Fala mais adiante neste guia. Para obter os 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.

Sintetizar para saída em alto-Falante

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

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

  2. Substitua o conteúdo do SpeechSynthesis.cpp pelo código a seguir:

    #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);
    
        // The neural multilingual voice can speak different languages based on the input text.
        speechConfig->SetSpeechSynthesisVoiceName("en-US-AvaMultilingualNeural");
    
        auto speechSynthesizer = SpeechSynthesizer::FromConfig(speechConfig);
    
        // Get text from the console and synthesize to the default speaker.
        std::cout << "Enter some text that you want to speak >" << std::endl;
        std::string text;
        getline(std::cin, text);
    
        auto result = speechSynthesizer->SpeakTextAsync(text).get();
    
        // Checks result.
        if (result->Reason == ResultReason::SynthesizingAudioCompleted)
        {
            std::cout << "Speech synthesized to speaker for text [" << text << "]" << std::endl;
        }
        else if (result->Reason == ResultReason::Canceled)
        {
            auto cancellation = SpeechSynthesisCancellationDetails::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::cout << "Press enter to exit..." << std::endl;
        std::cin.get();
    }
    
    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
    }  
    
  3. 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
    
  4. Para alterar o idioma de síntese de fala, substitua en-US-AvaMultilingualNeural por outra voz com suporte.

    Todas as vozes neurais são multilíngues e fluentes em seu próprio idioma e inglês. Por exemplo, se o texto de entrada em inglês for "estou empolgado em experimentar a conversão de texto em fala" e você definir es-ES-ElviraNeural, o texto será falado em inglês com um sotaque espanhol. Se a voz não falar o idioma do texto de entrada, o serviço Speech não emitirá áudio sintetizado.

  5. Crie e execute o novo aplicativo de console para iniciar a sintetização de voz para o alto-falante padrão.

    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. Insira um texto que você deseja falar. Por exemplo, digite Estou animado para experimentar a conversão de texto em fala. Selecione a tecla Enter para ouvir a fala sintetizada.

    Enter some text that you want to speak >
    I'm excited to try text to speech
    

Comentários

Mais opções de sintetização de voz

Este guia de início rápido usa a operação SpeakTextAsync para sintetizar um pequeno bloco de texto inserido. Você também pode usar um texto de formato longo de um arquivo e obter um controle mais preciso sobre estilos de voz, prosódia e outras configurações.

Vozes de conversão de texto em fala do OpenAI na Fala de IA do Azure

Também há suporte para vozes de conversão de texto em fala do OpenAI. Confira Vozes de conversão de texto em fala do OpenAI na Fala de IA do Azure e vozes multilíngues. Você pode substituir en-US-AvaMultilingualNeural por um nome de voz do OpenAI com suporte, como en-US-FableMultilingualNeural.

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ê executará um aplicativo que faz a sintetização de texto em fala.

Dica

Você pode experimentar a conversão de texto em fala na Galeria de Voz do Speech Studio Voice sem se inscrever ou escrever qualquer código.

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.

Sintetizar para saída em alto-Falante

Siga estas etapas para criar um módulo do Go.

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

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

    package main
    
    import (
        "bufio"
        "fmt"
        "os"
        "strings"
        "time"
    
        "github.com/Microsoft/cognitive-services-speech-sdk-go/audio"
        "github.com/Microsoft/cognitive-services-speech-sdk-go/common"
        "github.com/Microsoft/cognitive-services-speech-sdk-go/speech"
    )
    
    func synthesizeStartedHandler(event speech.SpeechSynthesisEventArgs) {
        defer event.Close()
        fmt.Println("Synthesis started.")
    }
    
    func synthesizingHandler(event speech.SpeechSynthesisEventArgs) {
        defer event.Close()
        fmt.Printf("Synthesizing, audio chunk size %d.\n", len(event.Result.AudioData))
    }
    
    func synthesizedHandler(event speech.SpeechSynthesisEventArgs) {
        defer event.Close()
        fmt.Printf("Synthesized, audio length %d.\n", len(event.Result.AudioData))
    }
    
    func cancelledHandler(event speech.SpeechSynthesisEventArgs) {
        defer event.Close()
        fmt.Println("Received a cancellation.")
    }
    
    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.NewAudioConfigFromDefaultSpeakerOutput()
        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()
    
        speechConfig.SetSpeechSynthesisVoiceName("en-US-AvaMultilingualNeural")
    
        speechSynthesizer, err := speech.NewSpeechSynthesizerFromConfig(speechConfig, audioConfig)
        if err != nil {
            fmt.Println("Got an error: ", err)
            return
        }
        defer speechSynthesizer.Close()
    
        speechSynthesizer.SynthesisStarted(synthesizeStartedHandler)
        speechSynthesizer.Synthesizing(synthesizingHandler)
        speechSynthesizer.SynthesisCompleted(synthesizedHandler)
        speechSynthesizer.SynthesisCanceled(cancelledHandler)
    
        for {
            fmt.Printf("Enter some text that you want to speak, or enter empty text to exit.\n> ")
            text, _ := bufio.NewReader(os.Stdin).ReadString('\n')
            text = strings.TrimSuffix(text, "\n")
            if len(text) == 0 {
                break
            }
    
            task := speechSynthesizer.SpeakTextAsync(text)
            var outcome speech.SpeechSynthesisOutcome
            select {
            case outcome = <-task:
            case <-time.After(60 * time.Second):
                fmt.Println("Timed out")
                return
            }
            defer outcome.Close()
            if outcome.Error != nil {
                fmt.Println("Got an error: ", outcome.Error)
                return
            }
    
            if outcome.Result.Reason == common.SynthesizingAudioCompleted {
                fmt.Printf("Speech synthesized to speaker for text [%s].\n", text)
            } else {
                cancellation, _ := speech.NewCancellationDetailsFromSpeechSynthesisResult(outcome.Result)
                fmt.Printf("CANCELED: Reason=%d.\n", cancellation.Reason)
    
                if cancellation.Reason == common.Error {
                    fmt.Printf("CANCELED: ErrorCode=%d\nCANCELED: ErrorDetails=[%s]\nCANCELED: Did you set the speech resource key and region values?\n",
                        cancellation.ErrorCode,
                        cancellation.ErrorDetails)
                }
            }
        }
    }
    
  3. Para alterar o idioma de síntese de fala, substitua en-US-AvaMultilingualNeural por outra voz com suporte.

    Todas as vozes neurais são multilíngues e fluentes em seu próprio idioma e inglês. Por exemplo, se o texto de entrada em inglês for "estou empolgado em experimentar a conversão de texto em fala" e você definir es-ES-ElviraNeural, o texto será falado em inglês com um sotaque espanhol. Se a voz não falar o idioma do texto de entrada, o serviço Speech não emitirá áudio sintetizado.

  4. Execute os comandos a seguir para criar um arquivo go.mod vinculado aos componentes hospedados no GitHub:

    go mod init speech-synthesis
    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.

  5. Agora compile e execute o código:

    go build
    go run speech-synthesis
    

Comentários

Vozes de conversão de texto em fala do OpenAI na Fala de IA do Azure

Também há suporte para vozes de conversão de texto em fala do OpenAI. Confira Vozes de conversão de texto em fala do OpenAI na Fala de IA do Azure e vozes multilíngues. Você pode substituir en-US-AvaMultilingualNeural por um nome de voz do OpenAI com suporte, como en-US-FableMultilingualNeural.

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ê executará um aplicativo que faz a sintetização de texto em fala.

Dica

Você pode experimentar a conversão de texto em fala na Galeria de Voz do Speech Studio Voice sem se inscrever ou escrever qualquer código.

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 arquivo pom.xml na raiz do projeto e copie o seguinte código nele:

    <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.37.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.

Sintetizar para saída em alto-Falante

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

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

  2. Copie o código a seguir em SpeechSynthesis.java:

    import com.microsoft.cognitiveservices.speech.*;
    import com.microsoft.cognitiveservices.speech.audio.*;
    
    import java.util.Scanner;
    import java.util.concurrent.ExecutionException;
    
    public class SpeechSynthesis {
        // 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.setSpeechSynthesisVoiceName("en-US-AvaMultilingualNeural"); 
    
            SpeechSynthesizer speechSynthesizer = new SpeechSynthesizer(speechConfig);
    
            // Get text from the console and synthesize to the default speaker.
            System.out.println("Enter some text that you want to speak >");
            String text = new Scanner(System.in).nextLine();
            if (text.isEmpty())
            {
                return;
            }
    
            SpeechSynthesisResult speechSynthesisResult = speechSynthesizer.SpeakTextAsync(text).get();
    
            if (speechSynthesisResult.getReason() == ResultReason.SynthesizingAudioCompleted) {
                System.out.println("Speech synthesized to speaker for text [" + text + "]");
            }
            else if (speechSynthesisResult.getReason() == ResultReason.Canceled) {
                SpeechSynthesisCancellationDetails cancellation = SpeechSynthesisCancellationDetails.fromResult(speechSynthesisResult);
                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 síntese de fala, substitua en-US-AvaMultilingualNeural por outra voz com suporte.

    Todas as vozes neurais são multilíngues e fluentes em seu próprio idioma e inglês. Por exemplo, se o texto de entrada em inglês for "estou empolgado em experimentar a conversão de texto em fala" e você definir es-ES-ElviraNeural, o texto será falado em inglês com um sotaque espanhol. Se a voz não falar o idioma do texto de entrada, o serviço Speech não emitirá áudio sintetizado.

  4. Execute seu aplicativo de console para iniciar a síntese de fala no alto-falante padrão.

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

    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. Insira um texto que você deseja falar. Por exemplo, digite Estou animado para experimentar a conversão de texto em fala. Selecione a tecla Enter para ouvir a fala sintetizada.

    Enter some text that you want to speak >
    I'm excited to try text to speech
    

Comentários

Mais opções de sintetização de voz

Este guia de início rápido usa a operação SpeakTextAsync para sintetizar um pequeno bloco de texto inserido. Você também pode usar um texto de formato longo de um arquivo e obter um controle mais preciso sobre estilos de voz, prosódia e outras configurações.

Vozes de conversão de texto em fala do OpenAI na Fala de IA do Azure

Também há suporte para vozes de conversão de texto em fala do OpenAI. Confira Vozes de conversão de texto em fala do OpenAI na Fala de IA do Azure e vozes multilíngues. Você pode substituir en-US-AvaMultilingualNeural por um nome de voz do OpenAI com suporte, como en-US-FableMultilingualNeural.

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ê executará um aplicativo que faz a sintetização de texto em fala.

Dica

Você pode experimentar a conversão de texto em fala na Galeria de Voz do Speech Studio Voice sem se inscrever ou escrever qualquer código.

Pré-requisitos

Configurar o ambiente

Para configurar o seu ambiente, instale o SDK de Fala para JavaScript. Se você quiser apenas o nome do pacote a ser instalado, execute 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.

Sintetizar para saída de arquivo

Siga estas etapas para criar um aplicativo de console Node.js para síntese de fala.

  1. Abra uma janela de console onde deseja o novo projeto e crie um arquivo chamado SpeechSynthesis.js.

  2. Instale o SDK de Fala para JavaScript:

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

    (function() {
    
        "use strict";
    
        var sdk = require("microsoft-cognitiveservices-speech-sdk");
        var readline = require("readline");
    
        var audioFile = "YourAudioFile.wav";
        // This example requires environment variables named "SPEECH_KEY" and "SPEECH_REGION"
        const speechConfig = sdk.SpeechConfig.fromSubscription(process.env.SPEECH_KEY, process.env.SPEECH_REGION);
        const audioConfig = sdk.AudioConfig.fromAudioFileOutput(audioFile);
    
        // The language of the voice that speaks.
        speechConfig.speechSynthesisVoiceName = "en-US-AvaMultilingualNeural"; 
    
        // Create the speech synthesizer.
        var synthesizer = new sdk.SpeechSynthesizer(speechConfig, audioConfig);
    
        var rl = readline.createInterface({
          input: process.stdin,
          output: process.stdout
        });
    
        rl.question("Enter some text that you want to speak >\n> ", function (text) {
          rl.close();
          // Start the synthesizer and wait for a result.
          synthesizer.speakTextAsync(text,
              function (result) {
            if (result.reason === sdk.ResultReason.SynthesizingAudioCompleted) {
              console.log("synthesis finished.");
            } else {
              console.error("Speech synthesis canceled, " + result.errorDetails +
                  "\nDid you set the speech resource key and region values?");
            }
            synthesizer.close();
            synthesizer = null;
          },
              function (err) {
            console.trace("err - " + err);
            synthesizer.close();
            synthesizer = null;
          });
          console.log("Now synthesizing to: " + audioFile);
        });
    }());
    
  4. No arquivo SpeechSynthesis.js, opcionalmente, você pode renomear YourAudioFile.wav com outro nome de arquivo de saída.

  5. Para alterar o idioma de síntese de fala, substitua en-US-AvaMultilingualNeural por outra voz com suporte.

    Todas as vozes neurais são multilíngues e fluentes em seu próprio idioma e inglês. Por exemplo, se o texto de entrada em inglês for "estou empolgado em experimentar a conversão de texto em fala" e você definir es-ES-ElviraNeural, o texto será falado em inglês com um sotaque espanhol. Se a voz não falar o idioma do texto de entrada, o serviço Speech não emitirá áudio sintetizado.

  6. Execute seu aplicativo de console para iniciar a síntese de fala em um arquivo:

    node SpeechSynthesis.js
    

    Importante

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

  7. O texto fornecido deve estar em um arquivo de áudio:

    Enter some text that you want to speak >
    > I'm excited to try text to speech
    Now synthesizing to: YourAudioFile.wav
    synthesis finished.
    

Comentários

Mais opções de sintetização de voz

Este guia de início rápido usa a operação SpeakTextAsync para sintetizar um pequeno bloco de texto inserido. Você também pode usar um texto de formato longo de um arquivo e obter um controle mais preciso sobre estilos de voz, prosódia e outras configurações.

Vozes de conversão de texto em fala do OpenAI na Fala de IA do Azure

Também há suporte para vozes de conversão de texto em fala do OpenAI. Confira Vozes de conversão de texto em fala do OpenAI na Fala de IA do Azure e vozes multilíngues. Você pode substituir en-US-AvaMultilingualNeural por um nome de voz do OpenAI com suporte, como en-US-FableMultilingualNeural.

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ê executará um aplicativo que faz a sintetização de texto em fala.

Dica

Você pode experimentar a conversão de texto em fala na Galeria de Voz do Speech Studio Voice sem se inscrever ou escrever qualquer código.

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.

Sintetizar para saída em alto-Falante

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

  1. Clone o repositório Azure-Samples/cognitive-services-speech-sdk para obter o projeto de amostra Sintetizar áudio em Objective-C no macOS usando o SDK de Fala. O repositório também tem exemplos de iOS.

  2. Abra o diretório do aplicativo de amostra baixado (helloworld) em um terminal.

  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"];
    
        SPXSpeechConfiguration *speechConfig = [[SPXSpeechConfiguration alloc] initWithSubscription:speechKey region:serviceRegion];
        speechConfig.speechSynthesisVoiceName = @"en-US-AvaMultilingualNeural";
        SPXSpeechSynthesizer *speechSynthesizer = [[SPXSpeechSynthesizer alloc] init:speechConfig];
    
        NSLog(@"Start synthesizing...");
    
        SPXSpeechSynthesisResult *speechResult = [speechSynthesizer speakText:[self.textField stringValue]];
    
        // Checks result.
        if (SPXResultReason_Canceled == speechResult.reason) {
            SPXSpeechSynthesisCancellationDetails *details = [[SPXSpeechSynthesisCancellationDetails alloc] initFromCanceledSynthesisResult:speechResult];
            NSLog(@"Speech synthesis was canceled: %@. Did you set the speech resource key and region values?", details.errorDetails);
        } else if (SPXResultReason_SynthesizingAudioCompleted == speechResult.reason) {
            NSLog(@"Speech synthesis was completed");
        } else {
            NSLog(@"There was an error.");
        }
    }
    
  6. Em AppDelegate.m, use as variáveis de ambiente que o senhor definiu anteriormente para a chave e a região do recurso Speech.

    NSString *speechKey = [[[NSProcessInfo processInfo] environment] objectForKey:@"SPEECH_KEY"];
    NSString *serviceRegion = [[[NSProcessInfo processInfo] environment] objectForKey:@"SPEECH_REGION"];
    
  7. Opcionalmente, no AppDelegate.m, inclua um nome de voz de síntese de fala, conforme mostrado aqui:

    speechConfig.speechSynthesisVoiceName = @"en-US-AvaMultilingualNeural";
    
  8. Para alterar o idioma de síntese de fala, substitua en-US-AvaMultilingualNeural por outra voz com suporte.

    Todas as vozes neurais são multilíngues e fluentes em seu próprio idioma e inglês. Por exemplo, se o texto de entrada em inglês for "estou empolgado em experimentar a conversão de texto em fala" e você definir es-ES-ElviraNeural, o texto será falado em inglês com um sotaque espanhol. Se a voz não falar o idioma do texto de entrada, o serviço Speech não emitirá áudio sintetizado.

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

  10. 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 inserir algum texto e selecionar o botão no aplicativo, você deverá ouvir o áudio sintetizado ser reproduzido.

Comentários

Mais opções de sintetização de voz

Este guia de início rápido usa a operação SpeakText para sintetizar um pequeno bloco de texto inserido. Você também pode usar um texto de formato longo de um arquivo e obter um controle mais preciso sobre estilos de voz, prosódia e outras configurações.

Vozes de conversão de texto em fala do OpenAI na Fala de IA do Azure

Também há suporte para vozes de conversão de texto em fala do OpenAI. Confira Vozes de conversão de texto em fala do OpenAI na Fala de IA do Azure e vozes multilíngues. Você pode substituir en-US-AvaMultilingualNeural por um nome de voz do OpenAI com suporte, como en-US-FableMultilingualNeural.

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ê executará um aplicativo que faz a sintetização de texto em fala.

Dica

Você pode experimentar a conversão de texto em fala na Galeria de Voz do Speech Studio Voice sem se inscrever ou escrever qualquer código.

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.

Sintetizar para saída em alto-Falante

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

  1. Clone o repositório Azure-Samples/cognitive-services-speech-sdk para obter o projeto de amostra Sintetizar áudio em Swift no macOS usando o SDK de Fala. 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 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.swift e localize os métodos applicationDidFinishLaunching e synthesize como mostrado aqui.

    import Cocoa
    
    @NSApplicationMain
    class AppDelegate: NSObject, NSApplicationDelegate, NSTextFieldDelegate {
        var textField: NSTextField!
        var synthesisButton: NSButton!
    
        var inputText: String!
    
        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"]
    
            inputText = ""
    
            textField = NSTextField(frame: NSRect(x: 100, y: 200, width: 200, height: 50))
            textField.textColor = NSColor.black
            textField.lineBreakMode = .byWordWrapping
    
            textField.placeholderString = "Type something to synthesize."
            textField.delegate = self
    
            self.window.contentView?.addSubview(textField)
    
            synthesisButton = NSButton(frame: NSRect(x: 100, y: 100, width: 200, height: 30))
            synthesisButton.title = "Synthesize"
            synthesisButton.target = self
            synthesisButton.action = #selector(synthesisButtonClicked)
            self.window.contentView?.addSubview(synthesisButton)
        }
    
        @objc func synthesisButtonClicked() {
            DispatchQueue.global(qos: .userInitiated).async {
                self.synthesize()
            }
        }
    
        func synthesize() {
            var speechConfig: SPXSpeechConfiguration?
            do {
                try speechConfig = SPXSpeechConfiguration(subscription: sub, region: region)
            } catch {
                print("error \(error) happened")
                speechConfig = nil
            }
    
            speechConfig?.speechSynthesisVoiceName = "en-US-AvaMultilingualNeural";
    
            let synthesizer = try! SPXSpeechSynthesizer(speechConfig!)
            let result = try! synthesizer.speakText(inputText)
            if result.reason == SPXResultReason.canceled
            {
                let cancellationDetails = try! SPXSpeechSynthesisCancellationDetails(fromCanceledSynthesisResult: result)
                print("cancelled, error code: \(cancellationDetails.errorCode) detail: \(cancellationDetails.errorDetails!) ")
                print("Did you set the speech resource key and region values?");
                return
            }
        }
    
        func controlTextDidChange(_ obj: Notification) {
            let textFiled = obj.object as! NSTextField
            inputText = textFiled.stringValue
        }
    }
    
  6. Em AppDelegate.m, use as variáveis de ambiente que o senhor definiu anteriormente para a chave e a região do recurso Speech.

    sub = ProcessInfo.processInfo.environment["SPEECH_KEY"]
    region = ProcessInfo.processInfo.environment["SPEECH_REGION"]
    
  7. Opcionalmente, no AppDelegate.m, inclua um nome de voz de síntese de fala, conforme mostrado aqui:

    speechConfig?.speechSynthesisVoiceName = "en-US-AvaMultilingualNeural";
    
  8. Para alterar o idioma de síntese de fala, substitua en-US-AvaMultilingualNeural por outra voz com suporte.

    Todas as vozes neurais são multilíngues e fluentes em seu próprio idioma e inglês. Por exemplo, se o texto de entrada em inglês for "estou empolgado em experimentar a conversão de texto em fala" e você definir es-ES-ElviraNeural, o texto será falado em inglês com um sotaque espanhol. Se a voz não falar o idioma do texto de entrada, o serviço Speech não emitirá áudio sintetizado.

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

  10. 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 inserir algum texto e selecionar o botão no aplicativo, você deverá ouvir o áudio sintetizado ser reproduzido.

Comentários

Mais opções de sintetização de voz

Este guia de início rápido usa a operação SpeakText para sintetizar um pequeno bloco de texto inserido. Você também pode usar um texto de formato longo de um arquivo e obter um controle mais preciso sobre estilos de voz, prosódia e outras configurações.

Vozes de conversão de texto em fala do OpenAI na Fala de IA do Azure

Também há suporte para vozes de conversão de texto em fala do OpenAI. Confira Vozes de conversão de texto em fala do OpenAI na Fala de IA do Azure e vozes multilíngues. Você pode substituir en-US-AvaMultilingualNeural por um nome de voz do OpenAI com suporte, como en-US-FableMultilingualNeural.

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ê executará um aplicativo que faz a sintetização de texto em fala.

Dica

Você pode experimentar a conversão de texto em fala na Galeria de Voz do Speech Studio Voice sem se inscrever ou escrever qualquer código.

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 quaisquer 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.

Sintetizar para saída em alto-Falante

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 arquivo chamado speech_synthesis.py.

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

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

    import os
    import azure.cognitiveservices.speech as speechsdk
    
    # 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'))
    audio_config = speechsdk.audio.AudioOutputConfig(use_default_speaker=True)
    
    # The neural multilingual voice can speak different languages based on the input text.
    speech_config.speech_synthesis_voice_name='en-US-AvaMultilingualNeural'
    
    speech_synthesizer = speechsdk.SpeechSynthesizer(speech_config=speech_config, audio_config=audio_config)
    
    # Get text from the console and synthesize to the default speaker.
    print("Enter some text that you want to speak >")
    text = input()
    
    speech_synthesis_result = speech_synthesizer.speak_text_async(text).get()
    
    if speech_synthesis_result.reason == speechsdk.ResultReason.SynthesizingAudioCompleted:
        print("Speech synthesized for text [{}]".format(text))
    elif speech_synthesis_result.reason == speechsdk.ResultReason.Canceled:
        cancellation_details = speech_synthesis_result.cancellation_details
        print("Speech synthesis canceled: {}".format(cancellation_details.reason))
        if cancellation_details.reason == speechsdk.CancellationReason.Error:
            if cancellation_details.error_details:
                print("Error details: {}".format(cancellation_details.error_details))
                print("Did you set the speech resource key and region values?")
    
  4. Para alterar o idioma de síntese de fala, substitua en-US-AvaMultilingualNeural por outra voz com suporte.

    Todas as vozes neurais são multilíngues e fluentes em seu próprio idioma e inglês. Por exemplo, se o texto de entrada em inglês for "estou empolgado em experimentar a conversão de texto em fala" e você definir es-ES-ElviraNeural, o texto será falado em inglês com um sotaque espanhol. Se a voz não falar o idioma do texto de entrada, o serviço Speech não emitirá áudio sintetizado.

  5. Execute seu novo aplicativo de console para iniciar a síntese de fala para o alto-falante padrão.

    python speech_synthesis.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. Insira um texto que você deseja falar. Por exemplo, digite Estou animado para experimentar a conversão de texto em fala. Selecione a tecla Enter para ouvir a fala sintetizada.

    Enter some text that you want to speak > 
    I'm excited to try text to speech
    

Comentários

Mais opções de sintetização de voz

Este guia de início rápido usa a operação speak_text_async para sintetizar um pequeno bloco de texto inserido. Você também pode usar um texto de formato longo de um arquivo e obter um controle mais preciso sobre estilos de voz, prosódia e outras configurações.

Vozes de conversão de texto em fala do OpenAI na Fala de IA do Azure

Também há suporte para vozes de conversão de texto em fala do OpenAI. Confira Vozes de conversão de texto em fala do OpenAI na Fala de IA do Azure e vozes multilíngues. Você pode substituir en-US-AvaMultilingualNeural por um nome de voz do OpenAI com suporte, como en-US-FableMultilingualNeural.

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 | Amostras Adicionais no GitHub

Neste guia de início rápido, você executará um aplicativo que faz a sintetização de texto em fala.

Dica

Você pode experimentar a conversão de texto em fala na Galeria de Voz do Speech Studio Voice sem se inscrever ou escrever qualquer código.

Pré-requisitos

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.

Sintetizar em um arquivo

No prompt de comando, execute o comando cURL a seguir. Opcionalmente, você pode renomear output.mp3 com outro nome de arquivo de saída.

curl --location --request POST "https://%SPEECH_REGION%.tts.speech.microsoft.com/cognitiveservices/v1" ^
--header "Ocp-Apim-Subscription-Key: %SPEECH_KEY%" ^
--header "Content-Type: application/ssml+xml" ^
--header "X-Microsoft-OutputFormat: audio-16khz-128kbitrate-mono-mp3" ^
--header "User-Agent: curl" ^
--data-raw "<speak version='1.0' xml:lang='en-US'><voice xml:lang='en-US' xml:gender='Female' name='en-US-AvaMultilingualNeural'>my voice is my passport verify me</voice></speak>" --output output.mp3

Importante

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

O texto fornecido deve ser de saída para um arquivo de áudio nomeado output.mp3.

Para alterar o idioma de síntese de fala, substitua en-US-AvaMultilingualNeural por outra voz com suporte.

Todas as vozes neurais são multilíngues e fluentes em seu próprio idioma e inglês. Por exemplo, se o texto de entrada em inglês for "estou empolgado em experimentar a conversão de texto em fala" e você definir es-ES-ElviraNeural, o texto será falado em inglês com um sotaque espanhol. Se a voz não falar o idioma do texto de entrada, o serviço Speech não emitirá áudio sintetizado.

Para obter mais informações, consulte API REST de Conversão de texto em fala.

Comentários

Vozes de conversão de texto em fala do OpenAI na Fala de IA do Azure

Também há suporte para vozes de conversão de texto em fala do OpenAI. Confira Vozes de conversão de texto em fala do OpenAI na Fala de IA do Azure e vozes multilíngues. Você pode substituir en-US-AvaMultilingualNeural por um nome de voz do OpenAI com suporte, como en-US-FableMultilingualNeural.

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ê executará um aplicativo que faz a sintetização de texto em fala.

Dica

Você pode experimentar a conversão de texto em fala na Galeria de Voz do Speech Studio Voice sem se inscrever ou escrever qualquer código.

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
    

Sintetizar para saída em alto-Falante

Execute o comando a seguir para síntese de fala para a saída padrão em alto-falante. Você pode modificar a voz e o texto a ser sintetizado.

spx synthesize --text "I'm excited to try text to speech" --voice "en-US-AvaMultilingualNeural"

Se o senhor não definir um nome de voz, a voz padrão para en-US será falada.

Todas as vozes neurais são multilíngues e fluentes em seu próprio idioma e inglês. Por exemplo, se o texto de entrada em inglês for "estou empolgado em experimentar a conversão de texto em fala" e você definir --voice "es-ES-ElviraNeural", o texto será falado em inglês com um sotaque espanhol. Se a voz não falar o idioma do texto de entrada, o serviço Speech não emitirá áudio sintetizado.

Execute esse comando para obter informações sobre mais opções de síntese de fala, como entrada e saída de arquivos:

spx help synthesize

Comentários

Suporte a SSML

É possível melhorar o controle sobre estilos de voz, prosódia e outras configurações usando a SSML (Linguagem de Marcação de Sintetização de Voz).

Vozes de conversão de texto em fala do OpenAI na Fala de IA do Azure

Também há suporte para vozes de conversão de texto em fala do OpenAI. Confira Vozes de conversão de texto em fala do OpenAI na Fala de IA do Azure e vozes multilíngues. Você pode substituir en-US-AvaMultilingualNeural por um nome de voz do OpenAI com suporte, como en-US-FableMultilingualNeural.

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