Guia de início rápido: converter texto em fala
Pacote de documentação | de referência (NuGet) | Exemplos adicionais no GitHub
Com o Azure AI Speech, você pode executar um aplicativo que sintetiza uma voz semelhante à humana para ler texto. Você pode alterar a voz, inserir o texto a ser falado e ouvir a saída no alto-falante do seu computador.
Gorjeta
Você pode tentar conversão de texto em fala na Galeria de Voz do Speech Studio sem se inscrever ou escrever qualquer código.
Gorjeta
Experimente o Kit de Ferramentas de Fala da IA do Azure para criar e executar facilmente exemplos no Visual Studio Code.
Pré-requisitos
- Uma subscrição do Azure. Você pode criar um gratuitamente.
- Crie um recurso de Fala no portal do Azure.
- Obtenha a chave de recurso de Fala e a região. Depois que o recurso de Fala for implantado, selecione Ir para o recurso para exibir e gerenciar chaves.
Configurar o ambiente
O SDK de fala está disponível como um pacote NuGet que implementa o .NET Standard 2.0. Instale o SDK de fala mais adiante neste guia usando o console. Para obter instruções detalhadas de instalação, consulte Instalar o SDK de fala.
Definir variáveis de ambiente
Você precisa autenticar seu aplicativo para acessar os serviços de IA do Azure. Este artigo mostra como usar variáveis de ambiente para armazenar suas credenciais. Em seguida, você pode acessar as variáveis de ambiente do seu código para autenticar seu aplicativo. Para produção, use uma maneira mais segura de armazenar e acessar suas credenciais.
Importante
Recomendamos a autenticação do Microsoft Entra ID com identidades gerenciadas para recursos do Azure para evitar o armazenamento de credenciais com seus aplicativos executados na nuvem.
Se você usar uma chave de API, armazene-a com segurança em outro lugar, como no Cofre de Chaves do Azure. Não inclua a chave da API diretamente no seu código e nunca a publique publicamente.
Para obter mais informações sobre segurança de serviços de IA, consulte Autenticar solicitações para serviços de IA do Azure.
Para definir as variáveis de ambiente para sua chave de recurso de fala e região, abra uma janela de console e siga as instruções para seu sistema operacional e ambiente de desenvolvimento.
- Para definir a variável de ambiente, substitua
SPEECH_KEY
sua chave por uma das chaves do seu recurso. - Para definir a variável de ambiente, substitua
SPEECH_REGION
sua região por uma das regiões do seu recurso.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region
Nota
Se você só precisar acessar as variáveis de ambiente no console atual, poderá 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 precisam ler as variáveis de ambiente, incluindo a janela do console. Por exemplo, se você estiver usando o Visual Studio como editor, reinicie o Visual Studio antes de executar o exemplo.
Criar a aplicação
Siga estas etapas para criar um aplicativo de console e instalar o SDK de fala.
Abra uma janela de prompt de comando na pasta onde 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.
Instale o SDK de fala em seu novo projeto com a CLI do .NET.
dotnet add package Microsoft.CognitiveServices.Speech
Substitua o conteúdo do 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(); } }
Para alterar a linguagem de síntese de fala, substitua
en-US-AvaMultilingualNeural
por outra voz suportada.Todas as vozes neurais são multilingues e fluentes em seu próprio idioma e inglês. Por exemplo, se o texto de entrada em inglês é Estou animado para tentar texto para fala e você definir
es-ES-ElviraNeural
como o idioma, o texto é falado em inglês com sotaque espanhol. Se a voz não falar o idioma do texto de entrada, o serviço de Fala não emite áudio sintetizado.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 as
SPEECH_KEY
variáveis eSPEECH_REGION
de ambiente. Se você não definir essas variáveis, o exemplo falhará com uma mensagem de erro.Introduza algum texto que pretenda falar. Por exemplo, digite Estou animado para tentar 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
Observações
Mais opções de síntese de fala
Este guia de início rápido usa a SpeakTextAsync
operação para sintetizar um pequeno bloco de texto que você digita. Você também pode usar texto de formato longo de um arquivo e obter um controle mais fino sobre estilos de voz, prosódia e outras configurações.
- Veja como sintetizar fala e visão geral do SSML (Speech Synthesis Markup Language) para obter informações sobre síntese de fala a partir de um arquivo e controle mais fino sobre estilos de voz, prosódia e outras configurações.
- Consulte API de síntese em lote para conversão de texto em fala para obter informações sobre como sintetizar texto de forma longa em fala.
Vozes de texto para fala do OpenAI no Azure AI Speech
Vozes de texto para fala OpenAI também são suportadas. Consulte Vozes de texto para fala do OpenAI no Azure AI Speech e vozes multilíngues. Você pode substituir en-US-AvaMultilingualNeural
por um nome de voz OpenAI suportado, como en-US-FableMultilingualNeural
.
Clean up resources (Limpar recursos)
Você pode usar o portal do Azure ou a CLI (Interface de Linha de Comando) do Azure para remover o recurso de Fala criado.
Pacote de documentação | de referência (NuGet) | Exemplos adicionais no GitHub
Com o Azure AI Speech, você pode executar um aplicativo que sintetiza uma voz semelhante à humana para ler texto. Você pode alterar a voz, inserir o texto a ser falado e ouvir a saída no alto-falante do seu computador.
Gorjeta
Você pode tentar conversão de texto em fala na Galeria de Voz do Speech Studio sem se inscrever ou escrever qualquer código.
Gorjeta
Experimente o Kit de Ferramentas de Fala da IA do Azure para criar e executar facilmente exemplos no Visual Studio Code.
Pré-requisitos
- Uma subscrição do Azure. Você pode criar um gratuitamente.
- Crie um recurso de Fala no portal do Azure.
- Obtenha a chave de recurso de Fala e a região. Depois que o recurso de Fala for implantado, selecione Ir para o recurso para exibir e gerenciar chaves.
Configurar o ambiente
O SDK de fala 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 instruções detalhadas de instalação, consulte Instalar o SDK de fala.
Definir variáveis de ambiente
Você precisa autenticar seu aplicativo para acessar os serviços de IA do Azure. Este artigo mostra como usar variáveis de ambiente para armazenar suas credenciais. Em seguida, você pode acessar as variáveis de ambiente do seu código para autenticar seu aplicativo. Para produção, use uma maneira mais segura de armazenar e acessar suas credenciais.
Importante
Recomendamos a autenticação do Microsoft Entra ID com identidades gerenciadas para recursos do Azure para evitar o armazenamento de credenciais com seus aplicativos executados na nuvem.
Se você usar uma chave de API, armazene-a com segurança em outro lugar, como no Cofre de Chaves do Azure. Não inclua a chave da API diretamente no seu código e nunca a publique publicamente.
Para obter mais informações sobre segurança de serviços de IA, consulte Autenticar solicitações para serviços de IA do Azure.
Para definir as variáveis de ambiente para sua chave de recurso de fala e região, abra uma janela de console e siga as instruções para seu sistema operacional e ambiente de desenvolvimento.
- Para definir a variável de ambiente, substitua
SPEECH_KEY
sua chave por uma das chaves do seu recurso. - Para definir a variável de ambiente, substitua
SPEECH_REGION
sua região por uma das regiões do seu recurso.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region
Nota
Se você só precisar acessar as variáveis de ambiente no console atual, poderá 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 precisam ler as variáveis de ambiente, incluindo a janela do console. Por exemplo, se você estiver usando o Visual Studio como editor, reinicie o Visual Studio antes de executar o exemplo.
Criar a aplicação
Siga estas etapas para criar um aplicativo de console e instalar o SDK de fala.
Crie um projeto de console C++ na Comunidade do Visual Studio chamado
SpeechSynthesis
.Substitua o conteúdo do SpeechSynthesis.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 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 }
Selecione Ferramentas>Nuget Package Manager Package Manager Console (Ferramentas Nuget Package Manager>PackageManager Console). No Console do Gerenciador de Pacotes, execute este comando:
Install-Package Microsoft.CognitiveServices.Speech
Para alterar a linguagem de síntese de fala, substitua
en-US-AvaMultilingualNeural
por outra voz suportada.Todas as vozes neurais são multilingues e fluentes em seu próprio idioma e inglês. Por exemplo, se o texto de entrada em inglês é Estou animado para tentar texto para fala e você definir
es-ES-ElviraNeural
, o texto é falado em inglês com sotaque espanhol. Se a voz não falar o idioma do texto de entrada, o serviço de Fala não emite áudio sintetizado.Crie e execute seu novo aplicativo de console para iniciar a síntese de fala para o alto-falante padrão.
Importante
Certifique-se de definir as
SPEECH_KEY
variáveis eSPEECH_REGION
de ambiente. Se você não definir essas variáveis, o exemplo falhará com uma mensagem de erro.Introduza algum texto que pretenda falar. Por exemplo, digite Estou animado para tentar 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
Observações
Mais opções de síntese de fala
Este guia de início rápido usa a SpeakTextAsync
operação para sintetizar um pequeno bloco de texto que você digita. Você também pode usar texto de formato longo de um arquivo e obter um controle mais fino sobre estilos de voz, prosódia e outras configurações.
- Veja como sintetizar fala e visão geral do SSML (Speech Synthesis Markup Language) para obter informações sobre síntese de fala a partir de um arquivo e controle mais fino sobre estilos de voz, prosódia e outras configurações.
- Consulte API de síntese em lote para conversão de texto em fala para obter informações sobre como sintetizar texto de forma longa em fala.
Vozes de texto para fala do OpenAI no Azure AI Speech
Vozes de texto para fala OpenAI também são suportadas. Consulte Vozes de texto para fala do OpenAI no Azure AI Speech e vozes multilíngues. Você pode substituir en-US-AvaMultilingualNeural
por um nome de voz OpenAI suportado, como en-US-FableMultilingualNeural
.
Clean up resources (Limpar recursos)
Você pode usar o portal do Azure ou a CLI (Interface de Linha de Comando) do Azure para remover o recurso de Fala criado.
Pacote de documentação | de referência (Go) | Amostras adicionais no GitHub
Com o Azure AI Speech, você pode executar um aplicativo que sintetiza uma voz semelhante à humana para ler texto. Você pode alterar a voz, inserir o texto a ser falado e ouvir a saída no alto-falante do seu computador.
Gorjeta
Você pode tentar conversão de texto em fala na Galeria de Voz do Speech Studio sem se inscrever ou escrever qualquer código.
Gorjeta
Experimente o Kit de Ferramentas de Fala da IA do Azure para criar e executar facilmente exemplos no Visual Studio Code.
Pré-requisitos
- Uma subscrição do Azure. Você pode criar um gratuitamente.
- Crie um recurso de Fala no portal do Azure.
- Obtenha a chave de recurso de Fala e a região. Depois que o recurso de Fala for implantado, selecione Ir para o recurso para exibir e gerenciar chaves.
Configurar o ambiente
Instale o SDK de fala para o idioma Go. Para obter instruções detalhadas de instalação, consulte Instalar o SDK de fala.
Definir variáveis de ambiente
Você precisa autenticar seu aplicativo para acessar os serviços de IA do Azure. Este artigo mostra como usar variáveis de ambiente para armazenar suas credenciais. Em seguida, você pode acessar as variáveis de ambiente do seu código para autenticar seu aplicativo. Para produção, use uma maneira mais segura de armazenar e acessar suas credenciais.
Importante
Recomendamos a autenticação do Microsoft Entra ID com identidades gerenciadas para recursos do Azure para evitar o armazenamento de credenciais com seus aplicativos executados na nuvem.
Se você usar uma chave de API, armazene-a com segurança em outro lugar, como no Cofre de Chaves do Azure. Não inclua a chave da API diretamente no seu código e nunca a publique publicamente.
Para obter mais informações sobre segurança de serviços de IA, consulte Autenticar solicitações para serviços de IA do Azure.
Para definir as variáveis de ambiente para sua chave de recurso de fala e região, abra uma janela de console e siga as instruções para seu sistema operacional e ambiente de desenvolvimento.
- Para definir a variável de ambiente, substitua
SPEECH_KEY
sua chave por uma das chaves do seu recurso. - Para definir a variável de ambiente, substitua
SPEECH_REGION
sua região por uma das regiões do seu recurso.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region
Nota
Se você só precisar acessar as variáveis de ambiente no console atual, poderá 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 precisam ler as variáveis de ambiente, incluindo a janela do console. Por exemplo, se você estiver usando o Visual Studio como editor, reinicie o Visual Studio antes de executar o exemplo.
Criar a aplicação
Siga estas etapas para criar um módulo Go.
Abra uma janela de prompt de comando na pasta onde você deseja o novo projeto. Crie um novo arquivo chamado speech-synthesis.go.
Copie o seguinte código para 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) } } } }
Para alterar a linguagem de síntese de fala, substitua
en-US-AvaMultilingualNeural
por outra voz suportada.Todas as vozes neurais são multilingues e fluentes em seu próprio idioma e inglês. Por exemplo, se o texto de entrada em inglês é Estou animado para tentar texto para fala e você definir
es-ES-ElviraNeural
, o texto é falado em inglês com sotaque espanhol. Se a voz não falar o idioma do texto de entrada, o serviço de Fala não emite áudio sintetizado.Execute os seguintes comandos para criar um arquivo go.mod vinculado a componentes hospedados no GitHub:
go mod init speech-synthesis go get github.com/Microsoft/cognitive-services-speech-sdk-go
Importante
Certifique-se de definir as
SPEECH_KEY
variáveis eSPEECH_REGION
de ambiente. 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
Observações
Vozes de texto para fala do OpenAI no Azure AI Speech
Vozes de texto para fala OpenAI também são suportadas. Consulte Vozes de texto para fala do OpenAI no Azure AI Speech e vozes multilíngues. Você pode substituir en-US-AvaMultilingualNeural
por um nome de voz OpenAI suportado, como en-US-FableMultilingualNeural
.
Clean up resources (Limpar recursos)
Você pode usar o portal do Azure ou a CLI (Interface de Linha de Comando) do Azure para remover o recurso de Fala criado.
Documentação | de referência Exemplos adicionais no GitHub
Com o Azure AI Speech, você pode executar um aplicativo que sintetiza uma voz semelhante à humana para ler texto. Você pode alterar a voz, inserir o texto a ser falado e ouvir a saída no alto-falante do seu computador.
Gorjeta
Você pode tentar conversão de texto em fala na Galeria de Voz do Speech Studio sem se inscrever ou escrever qualquer código.
Gorjeta
Experimente o Kit de Ferramentas de Fala da IA do Azure para criar e executar facilmente exemplos no Visual Studio Code.
Pré-requisitos
- Uma subscrição do Azure. Você pode criar um gratuitamente.
- Crie um recurso de Fala no portal do Azure.
- Obtenha a chave de recurso de Fala e a região. Depois que o recurso de Fala for implantado, selecione Ir para o recurso para exibir e gerenciar chaves.
Configurar o ambiente
Para configurar seu ambiente, instale o SDK de fala. O exemplo neste início rápido funciona com o Java Runtime.
Instale o Apache Maven. Em seguida, execute
mvn -v
para confirmar a instalação bem-sucedida.Crie um arquivo pom.xml na raiz do seu projeto e copie o seguinte código para ele:
<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.42.0</version> </dependency> </dependencies> </project>
Instale o SDK de fala e as dependências.
mvn clean dependency:copy-dependencies
Definir variáveis de ambiente
Você precisa autenticar seu aplicativo para acessar os serviços de IA do Azure. Este artigo mostra como usar variáveis de ambiente para armazenar suas credenciais. Em seguida, você pode acessar as variáveis de ambiente do seu código para autenticar seu aplicativo. Para produção, use uma maneira mais segura de armazenar e acessar suas credenciais.
Importante
Recomendamos a autenticação do Microsoft Entra ID com identidades gerenciadas para recursos do Azure para evitar o armazenamento de credenciais com seus aplicativos executados na nuvem.
Se você usar uma chave de API, armazene-a com segurança em outro lugar, como no Cofre de Chaves do Azure. Não inclua a chave da API diretamente no seu código e nunca a publique publicamente.
Para obter mais informações sobre segurança de serviços de IA, consulte Autenticar solicitações para serviços de IA do Azure.
Para definir as variáveis de ambiente para sua chave de recurso de fala e região, abra uma janela de console e siga as instruções para seu sistema operacional e ambiente de desenvolvimento.
- Para definir a variável de ambiente, substitua
SPEECH_KEY
sua chave por uma das chaves do seu recurso. - Para definir a variável de ambiente, substitua
SPEECH_REGION
sua região por uma das regiões do seu recurso.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region
Nota
Se você só precisar acessar as variáveis de ambiente no console atual, poderá 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 precisam ler as variáveis de ambiente, incluindo a janela do console. Por exemplo, se você estiver usando o Visual Studio como editor, reinicie o Visual Studio antes de executar o exemplo.
Criar a aplicação
Siga estas etapas para criar um aplicativo de console para reconhecimento de fala.
Crie um arquivo chamado SpeechSynthesis.java no mesmo diretório raiz do projeto.
Copie o seguinte código para 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); } }
Para alterar a linguagem de síntese de fala, substitua
en-US-AvaMultilingualNeural
por outra voz suportada.Todas as vozes neurais são multilingues e fluentes em seu próprio idioma e inglês. Por exemplo, se o texto de entrada em inglês é Estou animado para tentar texto para fala e você definir
es-ES-ElviraNeural
, o texto é falado em inglês com sotaque espanhol. Se a voz não falar o idioma do texto de entrada, o serviço de Fala não emite áudio sintetizado.Execute o aplicativo de console para exportar a síntese de fala para o alto-falante padrão.
javac SpeechSynthesis.java -cp ".;target\dependency\*" java -cp ".;target\dependency\*" SpeechSynthesis
Importante
Certifique-se de definir as
SPEECH_KEY
variáveis eSPEECH_REGION
de ambiente. Se você não definir essas variáveis, o exemplo falhará com uma mensagem de erro.Introduza algum texto que pretenda falar. Por exemplo, digite Estou animado para tentar 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
Observações
Mais opções de síntese de fala
Este guia de início rápido usa a SpeakTextAsync
operação para sintetizar um pequeno bloco de texto que você digita. Você também pode usar texto de formato longo de um arquivo e obter um controle mais fino sobre estilos de voz, prosódia e outras configurações.
- Veja como sintetizar fala e visão geral do SSML (Speech Synthesis Markup Language) para obter informações sobre síntese de fala a partir de um arquivo e controle mais fino sobre estilos de voz, prosódia e outras configurações.
- Consulte API de síntese em lote para conversão de texto em fala para obter informações sobre como sintetizar texto de forma longa em fala.
Vozes de texto para fala do OpenAI no Azure AI Speech
Vozes de texto para fala OpenAI também são suportadas. Consulte Vozes de texto para fala do OpenAI no Azure AI Speech e vozes multilíngues. Você pode substituir en-US-AvaMultilingualNeural
por um nome de voz OpenAI suportado, como en-US-FableMultilingualNeural
.
Clean up resources (Limpar recursos)
Você pode usar o portal do Azure ou a CLI (Interface de Linha de Comando) do Azure para remover o recurso de Fala criado.
Pacote de documentação | de referência (npm) | Exemplos adicionais no código-fonte da Biblioteca GitHub |
Com o Azure AI Speech, você pode executar um aplicativo que sintetiza uma voz semelhante à humana para ler texto. Você pode alterar a voz, inserir o texto a ser falado e ouvir a saída no alto-falante do seu computador.
Gorjeta
Você pode tentar conversão de texto em fala na Galeria de Voz do Speech Studio sem se inscrever ou escrever qualquer código.
Gorjeta
Experimente o Kit de Ferramentas de Fala da IA do Azure para criar e executar facilmente exemplos no Visual Studio Code.
Pré-requisitos
- Uma subscrição do Azure. Você pode criar um gratuitamente.
- Crie um recurso de Fala no portal do Azure.
- Obtenha a chave de recurso de Fala e a região. Depois que o recurso de Fala for implantado, selecione Ir para o recurso para exibir e gerenciar chaves.
Configurar o ambiente
Para configurar seu ambiente, instale o SDK de fala para JavaScript. Se você quiser apenas que o nome do pacote seja instalado, execute npm install microsoft-cognitiveservices-speech-sdk
. Para obter instruções detalhadas de instalação, consulte Instalar o SDK de fala.
Definir variáveis de ambiente
Você precisa autenticar seu aplicativo para acessar os serviços de IA do Azure. Este artigo mostra como usar variáveis de ambiente para armazenar suas credenciais. Em seguida, você pode acessar as variáveis de ambiente do seu código para autenticar seu aplicativo. Para produção, use uma maneira mais segura de armazenar e acessar suas credenciais.
Importante
Recomendamos a autenticação do Microsoft Entra ID com identidades gerenciadas para recursos do Azure para evitar o armazenamento de credenciais com seus aplicativos executados na nuvem.
Se você usar uma chave de API, armazene-a com segurança em outro lugar, como no Cofre de Chaves do Azure. Não inclua a chave da API diretamente no seu código e nunca a publique publicamente.
Para obter mais informações sobre segurança de serviços de IA, consulte Autenticar solicitações para serviços de IA do Azure.
Para definir as variáveis de ambiente para sua chave de recurso de fala e região, abra uma janela de console e siga as instruções para seu sistema operacional e ambiente de desenvolvimento.
- Para definir a variável de ambiente, substitua
SPEECH_KEY
sua chave por uma das chaves do seu recurso. - Para definir a variável de ambiente, substitua
SPEECH_REGION
sua região por uma das regiões do seu recurso.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region
Nota
Se você só precisar acessar as variáveis de ambiente no console atual, poderá 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 precisam ler as variáveis de ambiente, incluindo a janela do console. Por exemplo, se você estiver usando o Visual Studio como editor, reinicie o Visual Studio antes de executar o exemplo.
Criar a aplicação
Siga estas etapas para criar um aplicativo de console Node.js para síntese de fala.
Abra uma janela de console onde você deseja o novo projeto e crie um arquivo chamado SpeechSynthesis.js.
Instale o SDK de fala para JavaScript:
npm install microsoft-cognitiveservices-speech-sdk
Copie o seguinte código para 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); }); }());
No SpeechSynthesis.js, opcionalmente, você pode renomear YourAudioFile.wav para outro nome de arquivo de saída.
Para alterar a linguagem de síntese de fala, substitua
en-US-AvaMultilingualNeural
por outra voz suportada.Todas as vozes neurais são multilingues e fluentes em seu próprio idioma e inglês. Por exemplo, se o texto de entrada em inglês é Estou animado para tentar texto para fala e você definir
es-ES-ElviraNeural
, o texto é falado em inglês com sotaque espanhol. Se a voz não falar o idioma do texto de entrada, o serviço de Fala não emite áudio sintetizado.Execute o aplicativo de console para iniciar a síntese de fala em um arquivo:
node SpeechSynthesis.js
Importante
Certifique-se de definir as
SPEECH_KEY
variáveis eSPEECH_REGION
de ambiente. Se você não definir essas variáveis, o exemplo falhará com uma mensagem de erro.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.
Observações
Mais opções de síntese de fala
Este guia de início rápido usa a SpeakTextAsync
operação para sintetizar um pequeno bloco de texto que você digita. Você também pode usar texto de formato longo de um arquivo e obter um controle mais fino sobre estilos de voz, prosódia e outras configurações.
- Veja como sintetizar fala e visão geral do SSML (Speech Synthesis Markup Language) para obter informações sobre síntese de fala a partir de um arquivo e controle mais fino sobre estilos de voz, prosódia e outras configurações.
- Consulte API de síntese em lote para conversão de texto em fala para obter informações sobre como sintetizar texto de forma longa em fala.
Vozes de texto para fala do OpenAI no Azure AI Speech
Vozes de texto para fala OpenAI também são suportadas. Consulte Vozes de texto para fala do OpenAI no Azure AI Speech e vozes multilíngues. Você pode substituir en-US-AvaMultilingualNeural
por um nome de voz OpenAI suportado, como en-US-FableMultilingualNeural
.
Clean up resources (Limpar recursos)
Você pode usar o portal do Azure ou a CLI (Interface de Linha de Comando) do Azure para remover o recurso de Fala criado.
Pacote de documentação | de referência (download) | Exemplos adicionais no GitHub
Com o Azure AI Speech, você pode executar um aplicativo que sintetiza uma voz semelhante à humana para ler texto. Você pode alterar a voz, inserir o texto a ser falado e ouvir a saída no alto-falante do seu computador.
Gorjeta
Você pode tentar conversão de texto em fala na Galeria de Voz do Speech Studio sem se inscrever ou escrever qualquer código.
Gorjeta
Experimente o Kit de Ferramentas de Fala da IA do Azure para criar e executar facilmente exemplos no Visual Studio Code.
Pré-requisitos
- Uma subscrição do Azure. Você pode criar um gratuitamente.
- Crie um recurso de Fala no portal do Azure.
- Obtenha a chave de recurso de Fala e a região. Depois que o recurso de Fala for implantado, selecione Ir para o recurso para exibir e gerenciar chaves.
Configurar o ambiente
O Speech SDK for Objective-C é distribuído como um pacote de estrutura. A estrutura suporta Objective-C e Swift no iOS e macOS.
O Speech SDK pode ser usado em projetos 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 em suas instruções de instalação.
Definir variáveis de ambiente
Você precisa autenticar seu aplicativo para acessar os serviços de IA do Azure. Este artigo mostra como usar variáveis de ambiente para armazenar suas credenciais. Em seguida, você pode acessar as variáveis de ambiente do seu código para autenticar seu aplicativo. Para produção, use uma maneira mais segura de armazenar e acessar suas credenciais.
Importante
Recomendamos a autenticação do Microsoft Entra ID com identidades gerenciadas para recursos do Azure para evitar o armazenamento de credenciais com seus aplicativos executados na nuvem.
Se você usar uma chave de API, armazene-a com segurança em outro lugar, como no Cofre de Chaves do Azure. Não inclua a chave da API diretamente no seu código e nunca a publique publicamente.
Para obter mais informações sobre segurança de serviços de IA, consulte Autenticar solicitações para serviços de IA do Azure.
Para definir as variáveis de ambiente para sua chave de recurso de fala e região, abra uma janela de console e siga as instruções para seu sistema operacional e ambiente de desenvolvimento.
- Para definir a variável de ambiente, substitua
SPEECH_KEY
sua chave por uma das chaves do seu recurso. - Para definir a variável de ambiente, substitua
SPEECH_REGION
sua região por uma das regiões do seu recurso.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region
Nota
Se você só precisar acessar as variáveis de ambiente no console atual, poderá 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 precisam ler as variáveis de ambiente, incluindo a janela do console. Por exemplo, se você estiver usando o Visual Studio como editor, reinicie o Visual Studio antes de executar o exemplo.
Criar a aplicação
Siga estas etapas para sintetizar a fala em um aplicativo macOS.
Clone o repositório Azure-Samples/cognitive-services-speech-sdk para obter o áudio Synthesize em Objective-C no macOS usando o projeto de exemplo Speech SDK . O repositório também tem amostras do iOS.
Abra o diretório do aplicativo de exemplo baixado (
helloworld
) em um terminal.Execute o comando
pod install
. Este comando gera um espaço dehelloworld.xcworkspace
trabalho Xcode que contém o aplicativo de exemplo e o SDK de Fala como uma dependência.Abra o
helloworld.xcworkspace
espaço de trabalho no Xcode.Abra o arquivo chamado AppDelegate.m e localize o
buttonPressed
método 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."); } }
No AppDelegate.m, use as variáveis de ambiente que você definiu anteriormente para sua chave de recurso de fala e região.
NSString *speechKey = [[[NSProcessInfo processInfo] environment] objectForKey:@"SPEECH_KEY"]; NSString *serviceRegion = [[[NSProcessInfo processInfo] environment] objectForKey:@"SPEECH_REGION"];
Opcionalmente, no AppDelegate.m, inclua um nome de voz de síntese de fala, conforme mostrado aqui:
speechConfig.speechSynthesisVoiceName = @"en-US-AvaMultilingualNeural";
Para alterar a linguagem de síntese de fala, substitua
en-US-AvaMultilingualNeural
por outra voz suportada.Todas as vozes neurais são multilingues e fluentes em seu próprio idioma e inglês. Por exemplo, se o texto de entrada em inglês é Estou animado para tentar texto para fala e você definir
es-ES-ElviraNeural
, o texto é falado em inglês com sotaque espanhol. Se a voz não falar o idioma do texto de entrada, o serviço de Fala não emite áudio sintetizado.Para tornar visível a saída de depuração, selecione View>Debug Area>Activate Console.
Para criar e executar o código de exemplo, selecione Executar produto>no menu ou selecione o botão Reproduzir.
Importante
Certifique-se de definir as
SPEECH_KEY
variáveis eSPEECH_REGION
de ambiente. 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ê deve ouvir o áudio sintetizado reproduzido.
Observações
Mais opções de síntese de fala
Este guia de início rápido usa a SpeakText
operação para sintetizar um pequeno bloco de texto que você digita. Você também pode usar texto de formato longo de um arquivo e obter um controle mais fino sobre estilos de voz, prosódia e outras configurações.
- Veja como sintetizar fala e visão geral do SSML (Speech Synthesis Markup Language) para obter informações sobre síntese de fala a partir de um arquivo e controle mais fino sobre estilos de voz, prosódia e outras configurações.
- Consulte API de síntese em lote para conversão de texto em fala para obter informações sobre como sintetizar texto de forma longa em fala.
Vozes de texto para fala do OpenAI no Azure AI Speech
Vozes de texto para fala OpenAI também são suportadas. Consulte Vozes de texto para fala do OpenAI no Azure AI Speech e vozes multilíngues. Você pode substituir en-US-AvaMultilingualNeural
por um nome de voz OpenAI suportado, como en-US-FableMultilingualNeural
.
Clean up resources (Limpar recursos)
Você pode usar o portal do Azure ou a CLI (Interface de Linha de Comando) do Azure para remover o recurso de Fala criado.
Pacote de documentação | de referência (download) | Exemplos adicionais no GitHub
Com o Azure AI Speech, você pode executar um aplicativo que sintetiza uma voz semelhante à humana para ler texto. Você pode alterar a voz, inserir o texto a ser falado e ouvir a saída no alto-falante do seu computador.
Gorjeta
Você pode tentar conversão de texto em fala na Galeria de Voz do Speech Studio sem se inscrever ou escrever qualquer código.
Gorjeta
Experimente o Kit de Ferramentas de Fala da IA do Azure para criar e executar facilmente exemplos no Visual Studio Code.
Pré-requisitos
- Uma subscrição do Azure. Você pode criar um gratuitamente.
- Crie um recurso de Fala no portal do Azure.
- Obtenha a chave de recurso de Fala e a região. Depois que o recurso de Fala for implantado, selecione Ir para o recurso para exibir e gerenciar chaves.
Configurar o ambiente
O Speech SDK for Swift é distribuído como um pacote de estrutura. A estrutura suporta Objective-C e Swift no iOS e macOS.
O Speech SDK pode ser usado em projetos 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 em suas instruções de instalação.
Definir variáveis de ambiente
Você precisa autenticar seu aplicativo para acessar os serviços de IA do Azure. Este artigo mostra como usar variáveis de ambiente para armazenar suas credenciais. Em seguida, você pode acessar as variáveis de ambiente do seu código para autenticar seu aplicativo. Para produção, use uma maneira mais segura de armazenar e acessar suas credenciais.
Importante
Recomendamos a autenticação do Microsoft Entra ID com identidades gerenciadas para recursos do Azure para evitar o armazenamento de credenciais com seus aplicativos executados na nuvem.
Se você usar uma chave de API, armazene-a com segurança em outro lugar, como no Cofre de Chaves do Azure. Não inclua a chave da API diretamente no seu código e nunca a publique publicamente.
Para obter mais informações sobre segurança de serviços de IA, consulte Autenticar solicitações para serviços de IA do Azure.
Para definir as variáveis de ambiente para sua chave de recurso de fala e região, abra uma janela de console e siga as instruções para seu sistema operacional e ambiente de desenvolvimento.
- Para definir a variável de ambiente, substitua
SPEECH_KEY
sua chave por uma das chaves do seu recurso. - Para definir a variável de ambiente, substitua
SPEECH_REGION
sua região por uma das regiões do seu recurso.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region
Nota
Se você só precisar acessar as variáveis de ambiente no console atual, poderá 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 precisam ler as variáveis de ambiente, incluindo a janela do console. Por exemplo, se você estiver usando o Visual Studio como editor, reinicie o Visual Studio antes de executar o exemplo.
Criar a aplicação
Siga estas etapas para sintetizar a fala em um aplicativo macOS.
Clone o repositório Azure-Samples/cognitive-services-speech-sdk para obter o áudio Synthesize no Swift no macOS usando o projeto de exemplo Speech SDK . O repositório também tem amostras do iOS.
Navegue até o diretório do aplicativo de exemplo baixado (
helloworld
) em um terminal.Execute o comando
pod install
. Este comando gera um espaço dehelloworld.xcworkspace
trabalho Xcode que contém o aplicativo de exemplo e o SDK de Fala como uma dependência.Abra o
helloworld.xcworkspace
espaço de trabalho no Xcode.Abra o arquivo chamado AppDelegate.swift e localize os
applicationDidFinishLaunching
métodos esynthesize
conforme 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 } }
No AppDelegate.m, use as variáveis de ambiente que você definiu anteriormente para sua chave de recurso de fala e região.
sub = ProcessInfo.processInfo.environment["SPEECH_KEY"] region = ProcessInfo.processInfo.environment["SPEECH_REGION"]
Opcionalmente, no AppDelegate.m, inclua um nome de voz de síntese de fala, conforme mostrado aqui:
speechConfig?.speechSynthesisVoiceName = "en-US-AvaMultilingualNeural";
Para alterar a linguagem de síntese de fala, substitua
en-US-AvaMultilingualNeural
por outra voz suportada.Todas as vozes neurais são multilingues e fluentes em seu próprio idioma e inglês. Por exemplo, se o texto de entrada em inglês é Estou animado para tentar texto para fala e você definir
es-ES-ElviraNeural
, o texto é falado em inglês com sotaque espanhol. Se a voz não falar o idioma do texto de entrada, o serviço de Fala não emite áudio sintetizado.Para tornar visível a saída de depuração, selecione View>Debug Area>Activate Console.
Para criar e executar o código de exemplo, selecione Executar produto>no menu ou selecione o botão Reproduzir.
Importante
Certifique-se de definir as SPEECH_KEY
variáveis e SPEECH_REGION
de ambiente. 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ê deve ouvir o áudio sintetizado reproduzido.
Observações
Mais opções de síntese de fala
Este guia de início rápido usa a SpeakText
operação para sintetizar um pequeno bloco de texto que você digita. Você também pode usar texto de formato longo de um arquivo e obter um controle mais fino sobre estilos de voz, prosódia e outras configurações.
- Veja como sintetizar fala e visão geral do SSML (Speech Synthesis Markup Language) para obter informações sobre síntese de fala a partir de um arquivo e controle mais fino sobre estilos de voz, prosódia e outras configurações.
- Consulte API de síntese em lote para conversão de texto em fala para obter informações sobre como sintetizar texto de forma longa em fala.
Vozes de texto para fala do OpenAI no Azure AI Speech
Vozes de texto para fala OpenAI também são suportadas. Consulte Vozes de texto para fala do OpenAI no Azure AI Speech e vozes multilíngues. Você pode substituir en-US-AvaMultilingualNeural
por um nome de voz OpenAI suportado, como en-US-FableMultilingualNeural
.
Clean up resources (Limpar recursos)
Você pode usar o portal do Azure ou a CLI (Interface de Linha de Comando) do Azure para remover o recurso de Fala criado.
Pacote de documentação | de referência (PyPi) | Amostras adicionais no GitHub
Com o Azure AI Speech, você pode executar um aplicativo que sintetiza uma voz semelhante à humana para ler texto. Você pode alterar a voz, inserir o texto a ser falado e ouvir a saída no alto-falante do seu computador.
Gorjeta
Você pode tentar conversão de texto em fala na Galeria de Voz do Speech Studio sem se inscrever ou escrever qualquer código.
Gorjeta
Experimente o Kit de Ferramentas de Fala da IA do Azure para criar e executar facilmente exemplos no Visual Studio Code.
Pré-requisitos
- Uma subscrição do Azure. Você pode criar um gratuitamente.
- Crie um recurso de Fala no portal do Azure.
- Obtenha a chave de recurso de Fala e a região. Depois que o recurso de Fala for implantado, selecione Ir para o recurso para exibir e gerenciar chaves.
Configurar o ambiente
O Speech SDK for Python está disponível como um módulo Python Package Index (PyPI). O Speech SDK for Python é compatível com Windows, Linux e macOS.
- No Windows, instale o Microsoft Visual C++ Redistributable para Visual Studio 2015, 2017, 2019 e 2022 para sua plataforma. A instalação deste pacote pode exigir uma reinicialização.
- No Linux, você deve usar a arquitetura de destino x64.
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
Você precisa autenticar seu aplicativo para acessar os serviços de IA do Azure. Este artigo mostra como usar variáveis de ambiente para armazenar suas credenciais. Em seguida, você pode acessar as variáveis de ambiente do seu código para autenticar seu aplicativo. Para produção, use uma maneira mais segura de armazenar e acessar suas credenciais.
Importante
Recomendamos a autenticação do Microsoft Entra ID com identidades gerenciadas para recursos do Azure para evitar o armazenamento de credenciais com seus aplicativos executados na nuvem.
Se você usar uma chave de API, armazene-a com segurança em outro lugar, como no Cofre de Chaves do Azure. Não inclua a chave da API diretamente no seu código e nunca a publique publicamente.
Para obter mais informações sobre segurança de serviços de IA, consulte Autenticar solicitações para serviços de IA do Azure.
Para definir as variáveis de ambiente para sua chave de recurso de fala e região, abra uma janela de console e siga as instruções para seu sistema operacional e ambiente de desenvolvimento.
- Para definir a variável de ambiente, substitua
SPEECH_KEY
sua chave por uma das chaves do seu recurso. - Para definir a variável de ambiente, substitua
SPEECH_REGION
sua região por uma das regiões do seu recurso.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region
Nota
Se você só precisar acessar as variáveis de ambiente no console atual, poderá 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 precisam ler as variáveis de ambiente, incluindo a janela do console. Por exemplo, se você estiver usando o Visual Studio como editor, reinicie o Visual Studio antes de executar o exemplo.
Criar a aplicação
Siga estas etapas para criar um aplicativo de console.
Abra uma janela de prompt de comando na pasta onde você deseja o novo projeto. Crie um arquivo chamado speech_synthesis.py.
Execute este comando para instalar o SDK de fala:
pip install azure-cognitiveservices-speech
Copie o seguinte código para 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 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?")
Para alterar a linguagem de síntese de fala, substitua
en-US-AvaMultilingualNeural
por outra voz suportada.Todas as vozes neurais são multilingues e fluentes em seu próprio idioma e inglês. Por exemplo, se o texto de entrada em inglês é Estou animado para tentar texto para fala e você definir
es-ES-ElviraNeural
, o texto é falado em inglês com sotaque espanhol. Se a voz não falar o idioma do texto de entrada, o serviço de Fala não emite á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
Certifique-se de definir as
SPEECH_KEY
variáveis eSPEECH_REGION
de ambiente. Se você não definir essas variáveis, o exemplo falhará com uma mensagem de erro.Introduza algum texto que pretenda falar. Por exemplo, digite Estou animado para tentar 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
Observações
Mais opções de síntese de fala
Este guia de início rápido usa a speak_text_async
operação para sintetizar um pequeno bloco de texto que você digita. Você também pode usar texto de formato longo de um arquivo e obter um controle mais fino sobre estilos de voz, prosódia e outras configurações.
- Veja como sintetizar fala e visão geral do SSML (Speech Synthesis Markup Language) para obter informações sobre síntese de fala a partir de um arquivo e controle mais fino sobre estilos de voz, prosódia e outras configurações.
- Consulte API de síntese em lote para conversão de texto em fala para obter informações sobre como sintetizar texto de forma longa em fala.
Vozes de texto para fala do OpenAI no Azure AI Speech
Vozes de texto para fala OpenAI também são suportadas. Consulte Vozes de texto para fala do OpenAI no Azure AI Speech e vozes multilíngues. Você pode substituir en-US-AvaMultilingualNeural
por um nome de voz OpenAI suportado, como en-US-FableMultilingualNeural
.
Clean up resources (Limpar recursos)
Você pode usar o portal do Azure ou a CLI (Interface de Linha de Comando) do Azure para remover o recurso de Fala criado.
Referência | da API REST de fala para texto API REST de fala para texto para referência | de áudio curta Exemplos adicionais no GitHub
Com o Azure AI Speech, você pode executar um aplicativo que sintetiza uma voz semelhante à humana para ler texto. Você pode alterar a voz, inserir o texto a ser falado e ouvir a saída no alto-falante do seu computador.
Gorjeta
Você pode tentar conversão de texto em fala na Galeria de Voz do Speech Studio sem se inscrever ou escrever qualquer código.
Gorjeta
Experimente o Kit de Ferramentas de Fala da IA do Azure para criar e executar facilmente exemplos no Visual Studio Code.
Pré-requisitos
- Uma subscrição do Azure. Você pode criar um gratuitamente.
- Crie um recurso de Fala no portal do Azure.
- Obtenha a chave de recurso de Fala e a região. Depois que o recurso de Fala for implantado, selecione Ir para o recurso para exibir e gerenciar chaves.
Definir variáveis de ambiente
Você precisa autenticar seu aplicativo para acessar os serviços de IA do Azure. Este artigo mostra como usar variáveis de ambiente para armazenar suas credenciais. Em seguida, você pode acessar as variáveis de ambiente do seu código para autenticar seu aplicativo. Para produção, use uma maneira mais segura de armazenar e acessar suas credenciais.
Importante
Recomendamos a autenticação do Microsoft Entra ID com identidades gerenciadas para recursos do Azure para evitar o armazenamento de credenciais com seus aplicativos executados na nuvem.
Se você usar uma chave de API, armazene-a com segurança em outro lugar, como no Cofre de Chaves do Azure. Não inclua a chave da API diretamente no seu código e nunca a publique publicamente.
Para obter mais informações sobre segurança de serviços de IA, consulte Autenticar solicitações para serviços de IA do Azure.
Para definir as variáveis de ambiente para sua chave de recurso de fala e região, abra uma janela de console e siga as instruções para seu sistema operacional e ambiente de desenvolvimento.
- Para definir a variável de ambiente, substitua
SPEECH_KEY
sua chave por uma das chaves do seu recurso. - Para definir a variável de ambiente, substitua
SPEECH_REGION
sua região por uma das regiões do seu recurso.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region
Nota
Se você só precisar acessar as variáveis de ambiente no console atual, poderá 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 precisam ler as variáveis de ambiente, incluindo a janela do console. Por exemplo, se você estiver usando o Visual Studio como editor, reinicie o Visual Studio antes de executar o exemplo.
Sintetizar fala em um arquivo
Em um prompt de comando, execute o seguinte comando cURL. 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-AvaMultilingualNeural'>my voice is my passport verify me</voice></speak>" --output output.mp3
Importante
Certifique-se de definir as SPEECH_KEY
variáveis e SPEECH_REGION
de ambiente. Se você não definir essas variáveis, o exemplo falhará com uma mensagem de erro.
O texto fornecido deve ser enviado para um arquivo de áudio chamado output.mp3.
Para alterar a linguagem de síntese de fala, substitua en-US-AvaMultilingualNeural
por outra voz suportada.
Todas as vozes neurais são multilingues e fluentes em seu próprio idioma e inglês. Por exemplo, se o texto de entrada em inglês é Estou animado para tentar texto para fala e você definir es-ES-ElviraNeural
, o texto é falado em inglês com sotaque espanhol. Se a voz não falar o idioma do texto de entrada, o serviço de Fala não emite áudio sintetizado.
Para obter mais informações, consulte API REST de texto para fala.
Observações
Vozes de texto para fala do OpenAI no Azure AI Speech
Vozes de texto para fala OpenAI também são suportadas. Consulte Vozes de texto para fala do OpenAI no Azure AI Speech e vozes multilíngues. Você pode substituir en-US-AvaMultilingualNeural
por um nome de voz OpenAI suportado, como en-US-FableMultilingualNeural
.
Clean up resources (Limpar recursos)
Você pode usar o portal do Azure ou a CLI (Interface de Linha de Comando) do Azure para remover o recurso de Fala criado.
Com o Azure AI Speech, você pode executar um aplicativo que sintetiza uma voz semelhante à humana para ler texto. Você pode alterar a voz, inserir o texto a ser falado e ouvir a saída no alto-falante do seu computador.
Gorjeta
Você pode tentar conversão de texto em fala na Galeria de Voz do Speech Studio sem se inscrever ou escrever qualquer código.
Gorjeta
Experimente o Kit de Ferramentas de Fala da IA do Azure para criar e executar facilmente exemplos no Visual Studio Code.
Pré-requisitos
- Uma subscrição do Azure. Você pode criar um gratuitamente.
- Crie um recurso de Fala no portal do Azure.
- Obtenha a chave de recurso de Fala e a região. Depois que o recurso de Fala for implantado, selecione Ir para o recurso para exibir e gerenciar chaves.
Configurar o ambiente
Siga estas etapas e consulte o início rápido da CLI de fala para obter outros requisitos para sua plataforma.
Execute o seguinte comando da CLI do .NET para instalar a CLI de fala:
dotnet tool install --global Microsoft.CognitiveServices.Speech.CLI
Execute os comandos a seguir para configurar sua chave de recurso de fala e região. Substitua
SUBSCRIPTION-KEY
pela chave de recurso de Fala e substituaREGION
pela região de recurso de Fala.spx config @key --set SUBSCRIPTION-KEY spx config @region --set REGION
Enviar discurso ao orador
Execute o seguinte comando para produzir a síntese de fala para o alto-falante padrão. 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 você não definir um nome de voz, a voz padrão para en-US
fala.
Todas as vozes neurais são multilingues e fluentes em seu próprio idioma e inglês. Por exemplo, se o texto de entrada em inglês é Estou animado para tentar texto para fala e você definir --voice "es-ES-ElviraNeural"
, o texto é falado em inglês com sotaque espanhol. Se a voz não falar o idioma do texto de entrada, o serviço de Fala não emite áudio sintetizado.
Execute este comando para obter informações sobre mais opções de síntese de fala, como entrada e saída de arquivo:
spx help synthesize
Observações
Suporte SSML
Você pode ter um controle mais fino sobre estilos de voz, prosódia e outras configurações usando a SSML (Speech Synthesis Markup Language).
Vozes de texto para fala do OpenAI no Azure AI Speech
Vozes de texto para fala OpenAI também são suportadas. Consulte Vozes de texto para fala do OpenAI no Azure AI Speech e vozes multilíngues. Você pode substituir en-US-AvaMultilingualNeural
por um nome de voz OpenAI suportado, como en-US-FableMultilingualNeural
.
Clean up resources (Limpar recursos)
Você pode usar o portal do Azure ou a CLI (Interface de Linha de Comando) do Azure para remover o recurso de Fala criado.