Início Rápido: converta texto em fala

Documentação de referênciaPacotes (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 no Speech Studio sem inscrever-se ou gravar qualquer código.

Pré-requisitos

Configurar o ambiente

O SDK de Fala está disponível como um pacote NuGet e implementa o .NET Standard 2.0. Você instalará o SDK de Fala posteriormente neste guia, mas primeiro verifique o guia de instalação do SDK para conhecer os demais requisitos.

Definir variáveis de ambiente

O aplicativo deverá ser autenticado para acessar os recursos dos Serviços Cognitivos. Para produção, use uma maneira segura de armazenar e acessar suas credenciais. Por exemplo, após você obter uma chave para , Recurso de 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. Consulte o artigo de segurança dos Serviços Cognitivos 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.

setx SPEECH_KEY your-key

Observação

Se for necessário somente acessar a variável de ambiente no console em execução atual, você poderá definir a variável de ambiente com set em vez de setx.

Depois de adicionar a variável de ambiente, talvez seja necessário reiniciar todos os programas em execução que precisarem ler a variável de ambiente, incluindo a janela do console. Por exemplo, se estiver usando o Visual Studio como seu editor, reinicie-o antes de executar o exemplo.

Para definir a variável de ambiente para sua região de recursos de Fala, siga as mesmas etapas. Defina SPEECH_REGION para a região do seu recurso. Por exemplo, westus.

Sintetizar para saída em alto-Falante

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

  1. Abra um prompt de comando no qual você deseja criar o novo projeto e crie um aplicativo de console com a CLI do .NET. O arquivo Program.cs deverá ser criado no diretório do projeto.

    dotnet new console
    
  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 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 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 language of the voice that speaks.
            speechConfig.SpeechSynthesisVoiceName = "en-US-JennyNeural"; 
    
            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-JennyNeural 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 de Fala não produzirá áudio sintetizado.

Crie e execute seu novo aplicativo de console para iniciar a síntese de fala para o alto-falante padrão.

dotnet run

Importante

Defina as variáveis de ambiente SPEECH__KEY e SPEECH__REGION conforme descrito acima. Se você não definir essas variáveis, o exemplo falhará com uma mensagem de erro.

Insira um texto que você deseja falar. Por exemplo, digite "Estou entusiasmado em experimentar a conversão de texto em fala". Pressione a tecla Enter para ouvir a fala sintetizada.

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

Aviso

Há um problema conhecido no Windows 11 que pode afetar alguns tipos de conexões de protocolo SSL e de protocolo TLS. Para obter mais informações, confira o guia de solução de problemas.

Comentários

Agora que você concluiu o início rápido, aqui estão algumas considerações adicionais:

Este guia de início rápido usa a operação SpeakTextAsync para sintetizar um pequeno bloco de texto inserido. Você também pode obter texto de arquivos conforme descrito nestes guias:

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ênciaPacotes (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 no Speech Studio sem inscrever-se ou gravar qualquer código.

Pré-requisitos

Configurar o ambiente

O SDK de Fala está disponível como um pacote NuGet e implementa o .NET Standard 2.0. Você instalará o SDK de Fala posteriormente neste guia, mas primeiro verifique o guia de instalação do SDK para conhecer os demais requisitos.

Definir variáveis de ambiente

O aplicativo deverá ser autenticado para acessar os recursos dos Serviços Cognitivos. Para produção, use uma maneira segura de armazenar e acessar suas credenciais. Por exemplo, após você obter uma chave para , Recurso de 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. Consulte o artigo de segurança dos Serviços Cognitivos 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.

setx SPEECH_KEY your-key

Observação

Se for necessário somente acessar a variável de ambiente no console em execução atual, você poderá definir a variável de ambiente com set em vez de setx.

Depois de adicionar a variável de ambiente, talvez seja necessário reiniciar todos os programas em execução que precisarem ler a variável de ambiente, incluindo a janela do console. Por exemplo, se estiver usando o Visual Studio como seu editor, reinicie-o antes de executar o exemplo.

Para definir a variável de ambiente para sua região de recursos de Fala, siga as mesmas etapas. Defina SPEECH_REGION para a região do seu recurso. Por exemplo, westus.

Sintetizar para saída em alto-Falante

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

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

  2. Instale o SDK de Fala em seu novo projeto com o gerenciador de pacotes NuGet.

    Install-Package Microsoft.CognitiveServices.Speech
    
  3. Substitua o conteúdo de main.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);
    
        // The language of the voice that speaks.
        speechConfig->SetSpeechSynthesisVoiceName("en-US-JennyNeural");
    
        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
    }  
    
  4. Para alterar o idioma de síntese de fala, substitua en-US-JennyNeural 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 de Fala não produzirá áudio sintetizado.

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

Importante

Defina as variáveis de ambiente SPEECH__KEY e SPEECH__REGION conforme descrito acima. Se você não definir essas variáveis, o exemplo falhará com uma mensagem de erro.

Insira um texto que você deseja falar. Por exemplo, digite "Estou entusiasmado em experimentar a conversão de texto em fala". Pressione a tecla Enter para ouvir a fala sintetizada.

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

Aviso

Há um problema conhecido no Windows 11 que pode afetar alguns tipos de conexões de protocolo SSL e de protocolo TLS. Para obter mais informações, confira o guia de solução de problemas.

Comentários

Agora que você concluiu o início rápido, aqui estão algumas considerações adicionais:

Este guia de início rápido usa a operação SpeakTextAsync para sintetizar um pequeno bloco de texto inserido. Você também pode obter texto de arquivos conforme descrito nestes guias:

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ênciaPacotes (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 no Speech Studio sem inscrever-se ou gravar qualquer código.

Pré-requisitos

Configurar o ambiente

Instalar o SDK de Fala para Go. Verifique o Guia de instalação do SDK para conhecer os demais requisitos.

Definir variáveis de ambiente

O aplicativo deverá ser autenticado para acessar os recursos dos Serviços Cognitivos. Para produção, use uma maneira segura de armazenar e acessar suas credenciais. Por exemplo, após você obter uma chave para , Recurso de 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. Consulte o artigo de segurança dos Serviços Cognitivos 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.

setx SPEECH_KEY your-key

Observação

Se for necessário somente acessar a variável de ambiente no console em execução atual, você poderá definir a variável de ambiente com set em vez de setx.

Depois de adicionar a variável de ambiente, talvez seja necessário reiniciar todos os programas em execução que precisarem ler a variável de ambiente, incluindo a janela do console. Por exemplo, se estiver usando o Visual Studio como seu editor, reinicie-o antes de executar o exemplo.

Para definir a variável de ambiente para sua região de recursos de Fala, siga as mesmas etapas. Defina SPEECH_REGION para a região do seu recurso. Por exemplo, westus.

Sintetizar para saída em alto-Falante

Siga estas etapas para criar um novo módulo GO.

  1. Abra um prompt de comando onde você deseja criar o novo módulo e crie um novo arquivo chamado speech-synthesis.go.

  2. Copie o seguinte código dentro de 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-JennyNeural")
    
    	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-JennyNeural 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 de Fala não produzirá áudio sintetizado.

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

Defina as variáveis de ambiente SPEECH__KEY e SPEECH__REGION conforme descrito acima. Se você não definir essas variáveis, o exemplo falhará com uma mensagem de erro.

Agora compile e execute o código:

go build
go run speech-synthesis

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 no Speech Studio sem inscrever-se ou gravar qualquer código.

Pré-requisitos

Configurar o ambiente

Antes de fazer qualquer coisa, você precisará instalar o SDK de Fala. O exemplo deste guia de início rápido funciona com o Runtime Java.

  1. Instalar o Apache Maven
  2. Crie um arquivo pom.xml na raiz do projeto e copie nele o seguinte:
    <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>
        <repositories>
            <repository>
            <id>maven-cognitiveservices-speech</id>
            <name>Microsoft Cognitive Services Speech Maven Repository</name>
            <url>https://azureai.azureedge.net/maven/</url>
            </repository>
        </repositories>
        <dependencies>
            <dependency>
            <groupId>com.microsoft.cognitiveservices.speech</groupId>
            <artifactId>client-sdk</artifactId>
            <version>1.23.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 Cognitivos. Para produção, use uma maneira segura de armazenar e acessar suas credenciais. Por exemplo, após você obter uma chave para , Recurso de 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. Consulte o artigo de segurança dos Serviços Cognitivos 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.

setx SPEECH_KEY your-key

Observação

Se for necessário somente acessar a variável de ambiente no console em execução atual, você poderá definir a variável de ambiente com set em vez de setx.

Depois de adicionar a variável de ambiente, talvez seja necessário reiniciar todos os programas em execução que precisarem ler a variável de ambiente, incluindo a janela do console. Por exemplo, se estiver usando o Visual Studio como seu editor, reinicie-o antes de executar o exemplo.

Para definir a variável de ambiente para sua região de recursos de Fala, siga as mesmas etapas. Defina SPEECH_REGION para a região do seu recurso. Por exemplo, westus.

Sintetizar para saída em alto-Falante

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

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

  2. Copie o seguinte código dentro de 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-JennyNeural"); 
    
            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-JennyNeural 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 de Fala não produzirá áudio sintetizado.

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

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

Importante

Defina as variáveis de ambiente SPEECH__KEY e SPEECH__REGION conforme descrito acima. Se você não definir essas variáveis, o exemplo falhará com uma mensagem de erro.

Insira um texto que você deseja falar. Por exemplo, digite "Estou entusiasmado em experimentar a conversão de texto em fala". Pressione a tecla Enter para ouvir a fala sintetizada.

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

Aviso

Há um problema conhecido no Windows 11 que pode afetar alguns tipos de conexões de protocolo SSL e de protocolo TLS. Para obter mais informações, confira o guia de solução de problemas.

Comentários

Agora que você concluiu o início rápido, aqui estão algumas considerações adicionais:

Este guia de início rápido usa a operação SpeakTextAsync para sintetizar um pequeno bloco de texto inserido. Você também pode obter texto de arquivos conforme descrito nestes guias:

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ênciaPacote (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 no Speech Studio sem inscrever-se ou gravar qualquer código.

Pré-requisitos

Configurar o ambiente

Para fazer qualquer coisa, 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, confira o Guia de instalação do SDK.

Definir variáveis de ambiente

O aplicativo deverá ser autenticado para acessar os recursos dos Serviços Cognitivos. Para produção, use uma maneira segura de armazenar e acessar suas credenciais. Por exemplo, após você obter uma chave para , Recurso de 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. Consulte o artigo de segurança dos Serviços Cognitivos 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.

setx SPEECH_KEY your-key

Observação

Se for necessário somente acessar a variável de ambiente no console em execução atual, você poderá definir a variável de ambiente com set em vez de setx.

Depois de adicionar a variável de ambiente, talvez seja necessário reiniciar todos os programas em execução que precisarem ler a variável de ambiente, incluindo a janela do console. Por exemplo, se estiver usando o Visual Studio como seu editor, reinicie-o antes de executar o exemplo.

Para definir a variável de ambiente para sua região de recursos de Fala, siga as mesmas etapas. Defina SPEECH_REGION para a região do seu recurso. Por exemplo, westus.

Sintetizar para saída de arquivo

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

  1. Abra um prompt de comando onde você deseja criar o novo projeto e crie um novo arquivo chamado SpeechSynthesis.js.

  2. Instale o SDK de Fala para JavaScript:

    npm install microsoft-cognitiveservices-speech-sdk
    
  3. Copie o seguinte código dentro de 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-JennyNeural"; 
    
        // 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. Em SpeechSynthesis.js, você tem a opção de renomear YourAudioFile.wav com outro nome de arquivo de saída.

  5. Para alterar o idioma de síntese de fala, substitua en-US-JennyNeural 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 de Fala não produzirá áudio sintetizado.

Execute seu novo aplicativo de console para iniciar a síntese de fala para um arquivo:

node.exe SpeechSynthesis.js

Importante

Defina as variáveis de ambiente SPEECH__KEY e SPEECH__REGION conforme descrito acima. Se você não definir essas variáveis, o exemplo falhará com uma mensagem de erro.

O texto fornecido deve ser de saída para 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.

Aviso

Há um problema conhecido no Windows 11 que pode afetar alguns tipos de conexões de protocolo SSL e de protocolo TLS. Para obter mais informações, confira o guia de solução de problemas.

Comentários

Agora que você concluiu o início rápido, aqui estão algumas considerações adicionais:

Este guia de início rápido usa a operação SpeakTextAsync para sintetizar um pequeno bloco de texto inserido. Você também pode obter texto de arquivos conforme descrito nestes guias:

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ênciaPacotes (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 no Speech Studio sem inscrever-se ou gravar 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 aqui 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 Cognitivos. Para produção, use uma maneira segura de armazenar e acessar suas credenciais. Por exemplo, após você obter uma chave para , Recurso de 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. Consulte o artigo de segurança dos Serviços Cognitivos 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.

setx SPEECH_KEY your-key

Observação

Se for necessário somente acessar a variável de ambiente no console em execução atual, você poderá definir a variável de ambiente com set em vez de setx.

Depois de adicionar a variável de ambiente, talvez seja necessário reiniciar todos os programas em execução que precisarem ler a variável de ambiente, incluindo a janela do console. Por exemplo, se estiver usando o Visual Studio como seu editor, reinicie-o antes de executar o exemplo.

Para definir a variável de ambiente para sua região de recursos de Fala, siga as mesmas etapas. Defina SPEECH_REGION para a região do seu recurso. Por exemplo, westus.

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. Navegue até o diretório do aplicativo de exemplo baixado (helloworld) em um terminal.

  3. Execute o comando pod install. Isso gerará 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-JennyNeural";
        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 você definiu anteriormente para a chave e a região do recurso de Fala.

    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-JennyNeural";
    
  8. Para alterar o idioma de síntese de fala, substitua en-US-JennyNeural 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 de Fala não produzirá áudio sintetizado.

  9. Torne a saída de depuração visível (ExibiçãoÁrea de DepuraçãoAtivar Console).

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

Importante

Defina as variáveis de ambiente SPEECH__KEY e SPEECH__REGION conforme descrito acima. Se você não definir essas variáveis, o exemplo 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

Agora que você concluiu o início rápido, aqui estão algumas considerações adicionais:

Este guia de início rápido usa a operação SpeakText para sintetizar um pequeno bloco de texto inserido. Você também pode obter texto de arquivos conforme descrito nestes guias:

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ênciaPacotes (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 no Speech Studio sem inscrever-se ou gravar 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 aqui 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 Cognitivos. Para produção, use uma maneira segura de armazenar e acessar suas credenciais. Por exemplo, após você obter uma chave para , Recurso de 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. Consulte o artigo de segurança dos Serviços Cognitivos 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.

setx SPEECH_KEY your-key

Observação

Se for necessário somente acessar a variável de ambiente no console em execução atual, você poderá definir a variável de ambiente com set em vez de setx.

Depois de adicionar a variável de ambiente, talvez seja necessário reiniciar todos os programas em execução que precisarem ler a variável de ambiente, incluindo a janela do console. Por exemplo, se estiver usando o Visual Studio como seu editor, reinicie-o antes de executar o exemplo.

Para definir a variável de ambiente para sua região de recursos de Fala, siga as mesmas etapas. Defina SPEECH_REGION para a região do seu recurso. Por exemplo, westus.

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. Isso gerará 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-JennyNeural";
    
            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 você definiu anteriormente para a chave e a região do recurso de Fala.

    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-JennyNeural";
    
  8. Para alterar o idioma de síntese de fala, substitua en-US-JennyNeural 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 de Fala não produzirá áudio sintetizado.

  9. Torne a saída de depuração visível selecionando ExibiçãoÁrea de DepuraçãoAtivar Console.

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

Importante

Defina as variáveis de ambiente SPEECH__KEY e SPEECH__REGION conforme descrito acima. Se você não definir essas variáveis, o exemplo 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

Agora que você concluiu o início rápido, aqui estão algumas considerações adicionais:

Este guia de início rápido usa a operação SpeakText para sintetizar um pequeno bloco de texto inserido. Você também pode obter texto de arquivos conforme descrito nestes guias:

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ênciaPacotes (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 no Speech Studio sem inscrever-se ou gravar 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 entre a versão 3.7 à 3.10. Primeiro, verifique o Guia de instalação do SDK para conhecer os demais requisitos

Definir variáveis de ambiente

O aplicativo deverá ser autenticado para acessar os recursos dos Serviços Cognitivos. Para produção, use uma maneira segura de armazenar e acessar suas credenciais. Por exemplo, após você obter uma chave para , Recurso de 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. Consulte o artigo de segurança dos Serviços Cognitivos 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.

setx SPEECH_KEY your-key

Observação

Se for necessário somente acessar a variável de ambiente no console em execução atual, você poderá definir a variável de ambiente com set em vez de setx.

Depois de adicionar a variável de ambiente, talvez seja necessário reiniciar todos os programas em execução que precisarem ler a variável de ambiente, incluindo a janela do console. Por exemplo, se estiver usando o Visual Studio como seu editor, reinicie-o antes de executar o exemplo.

Para definir a variável de ambiente para sua região de recursos de Fala, siga as mesmas etapas. Defina SPEECH_REGION para a região do seu recurso. Por exemplo, westus.

Sintetizar para saída em alto-Falante

Siga estas etapas para criar um novo aplicativo de console.

  1. Abra um prompt de comando onde você deseja criar o novo projeto e crie um novo 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 dentro de speech_synthesis.py:

    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 language of the voice that speaks.
    speech_config.speech_synthesis_voice_name='en-US-JennyNeural'
    
    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-JennyNeural 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 de Fala não produzirá áudio sintetizado.

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

python speech_synthesis.py

Importante

Defina as variáveis de ambiente SPEECH__KEY e SPEECH__REGION conforme descrito acima. Se você não definir essas variáveis, o exemplo falhará com uma mensagem de erro.

Insira um texto que você deseja falar. Por exemplo, digite "Estou entusiasmado em experimentar a conversão de texto em fala". Pressione a tecla Enter para ouvir a fala sintetizada.

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

Aviso

Há um problema conhecido no Windows 11 que pode afetar alguns tipos de conexões de protocolo SSL e de protocolo TLS. Para obter mais informações, confira o guia de solução de problemas.

Comentários

Agora que você concluiu o início rápido, aqui estão algumas considerações adicionais:

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 obter texto de arquivos conforme descrito nestes guias:

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 | API REST de conversão de fala em texto para referência de áudio curto | 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 no Speech Studio sem inscrever-se ou gravar qualquer código.

Pré-requisitos

Definir variáveis de ambiente

O aplicativo deverá ser autenticado para acessar os recursos dos Serviços Cognitivos. Para produção, use uma maneira segura de armazenar e acessar suas credenciais. Por exemplo, após você obter uma chave para , Recurso de 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. Consulte o artigo de segurança dos Serviços Cognitivos 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.

setx SPEECH_KEY your-key

Observação

Se for necessário somente acessar a variável de ambiente no console em execução atual, você poderá definir a variável de ambiente com set em vez de setx.

Depois de adicionar a variável de ambiente, talvez seja necessário reiniciar todos os programas em execução que precisarem ler a variável de ambiente, incluindo a janela do console. Por exemplo, se estiver usando o Visual Studio como seu editor, reinicie-o antes de executar o exemplo.

Para definir a variável de ambiente para sua região de recursos de Fala, siga as mesmas etapas. Defina SPEECH_REGION para a região do seu recurso. Por exemplo, westus.

Sintetizar em um arquivo

No prompt de comando, execute o comando cURL a seguir. Opcionalmente, você pode renomear output.mp3 para 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-JennyNeural'\''>
        my voice is my passport verify me
    </voice>
</speak>' > output.mp3

Importante

Defina as variáveis de ambiente SPEECH__KEY e SPEECH__REGION conforme descrito acima. Se você não definir essas variáveis, o exemplo falhará com uma mensagem de erro.

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

Aviso

Há um problema conhecido no Windows 11 que pode afetar alguns tipos de conexões de protocolo SSL e de protocolo TLS. Para obter mais informações, confira o guia de solução de problemas.

Para alterar o idioma de síntese de fala, substitua en-US-JennyNeural 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 de Fala não produzirá áudio sintetizado.

Para obter mais informações, confira API REST de conversão de texto em 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.

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 no Speech Studio sem inscrever-se ou gravar qualquer código.

Pré-requisitos

Configurar o ambiente

Siga estas etapas e confira o Guia de início rápido da CLI de Fala para obter os requisitos adicionais da sua plataforma.

  1. Instale a CLI de Fala usando a CLI do .NET inserindo este comando:

    dotnet tool install --global Microsoft.CognitiveServices.Speech.CLI
    
  2. Configure a chave e a região do recurso de Fala executando os comandos a seguir. 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 o texto a ser sintetizado e a voz.

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

Aviso

Há um problema conhecido no Windows 11 que pode afetar alguns tipos de conexões de protocolo SSL e de protocolo TLS. Para obter mais informações, confira o guia de solução de problemas.

Se você 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 de Fala não produzirá áudio sintetizado.

Comentários

Agora que você concluiu o início rápido, aqui estão algumas considerações adicionais:

É 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).

No exemplo a seguir, a voz e o estilo ('animado') são fornecidos no bloco de SSML.

spx synthesize --ssml "<speak version='1.0' xmlns='http://www.w3.org/2001/10/synthesis' xmlns:mstts='https://www.w3.org/2001/mstts' xml:lang='en-US'><voice name='en-US-JennyNeural'><mstts:express-as style='excited'>I'm excited to try text to speech</mstts:express-as></voice></speak>"

Execute este comando para obter informações sobre opções adicionais de síntese de fala, como entrada e saída de arquivo:

spx help synthesize

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óximas etapas