A API Cloud Text-to-Speech permite-lhe converter palavras e frases em dados de áudio codificados em base64 de voz humana natural. Em seguida, pode converter os dados de áudio num ficheiro de áudio reproduzível, como um MP3, descodificando os dados base64. A Cloud Text-to-Speech API aceita a entrada como texto não processado ou Speech Synthesis Markup Language (SSML).
Este documento descreve como criar um ficheiro de áudio a partir de texto ou entrada SSML com o Cloud TTS. Também pode rever o artigo Noções básicas do TTS do Google Cloud se não estiver familiarizado com conceitos como a síntese de voz ou o SSML.
Estes exemplos requerem que tenha instalado e inicializado a CLI Google Cloud. Para obter informações sobre a configuração da CLI gcloud, consulte o artigo Autentique-se no Cloud TTS.
Converter texto em áudio de voz sintética
Os seguintes exemplos de código demonstram como converter uma string em dados de áudio.
Pode configurar a saída da síntese de voz de várias formas, incluindo selecionar uma voz única ou modular a saída em termos de tom, volume, velocidade de voz e taxa de amostragem.
Protocolo
Consulte o ponto final da API text:synthesize para ver os detalhes completos.
Para sintetizar áudio a partir de texto, faça um pedido HTTP POST ao ponto final text:synthesize. No corpo do seu pedido POST,
especifique o tipo de voz a sintetizar na secção de configuração voice,
especifique o texto a sintetizar no campo text da secção input e
especifique o tipo de áudio a criar na secção audioConfig.
O seguinte fragmento do código envia um pedido de síntese para o ponto final text:synthesize e guarda os resultados num ficheiro com o nome synthesize-text.txt. Substitua PROJECT_ID pelo ID do seu projeto.
curl -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "x-goog-user-project: <var>PROJECT_ID</var>" \ -H "Content-Type: application/json; charset=utf-8" \ --data "{ 'input':{ 'text':'Android is a mobile operating system developed by Google, based on the Linux kernel and designed primarily for touchscreen mobile devices such as smartphones and tablets.' }, 'voice':{ 'languageCode':'en-gb', 'name':'en-GB-Standard-A', 'ssmlGender':'FEMALE' }, 'audioConfig':{ 'audioEncoding':'MP3' } }" "https://texttospeech.googleapis.com/v1/text:synthesize" > synthesize-text.txt
A API Cloud Text-to-Speech devolve o áudio sintetizado como dados codificados em base64 contidos na saída JSON. A saída JSON no ficheiro synthesize-text.txt é semelhante ao seguinte fragmento do código.
{
"audioContent": "//NExAASCCIIAAhEAGAAEMW4kAYPnwwIKw/BBTpwTvB+IAxIfghUfW.."
}
Para descodificar os resultados da API Cloud Text-to-Speech como um ficheiro de áudio MP3, execute o seguinte comando a partir do mesmo diretório que o ficheiro synthesize-text.txt.
cat synthesize-text.txt | grep 'audioContent' | \ sed 's|audioContent| |' | tr -d '\n ":{},' > tmp.txt && \ base64 tmp.txt --decode > synthesize-text-audio.mp3 && \ rm tmp.txt
Go
Para saber como instalar e usar a biblioteca cliente do Cloud TTS, consulte as bibliotecas cliente do Cloud TTS. Para mais informações, consulte a documentação de referência da API GoCloud TTS.
Para se autenticar no Cloud TTS, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Java
Para saber como instalar e usar a biblioteca cliente do Cloud TTS, consulte as bibliotecas cliente do Cloud TTS. Para mais informações, consulte a documentação de referência da API JavaCloud TTS.
Para se autenticar no Cloud TTS, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Node.js
Para saber como instalar e usar a biblioteca cliente do Cloud TTS, consulte as bibliotecas cliente do Cloud TTS. Para mais informações, consulte a documentação de referência da API Node.jsCloud TTS.
Para se autenticar no Cloud TTS, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Python
Para saber como instalar e usar a biblioteca cliente do Cloud TTS, consulte as bibliotecas cliente do Cloud TTS. Para mais informações, consulte a documentação de referência da API PythonCloud TTS.
Para se autenticar no Cloud TTS, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Idiomas adicionais
C#: Siga as instruções de configuração do C# na página das bibliotecas de cliente e, em seguida, visite a documentação de referência do Cloud TTS para .NET.
PHP: Siga as instruções de configuração do PHP na página das bibliotecas cliente e, em seguida, visite a documentação de referência do Cloud TTS para PHP.
Ruby: Siga as instruções de configuração do Ruby na página das bibliotecas cliente e, em seguida, visite a documentação de referência do Cloud TTS para Ruby.
Converta SSML em áudio de voz sintética
A utilização de SSML no seu pedido de síntese de áudio pode produzir áudio mais semelhante à fala humana natural. Especificamente, a SSML oferece um controlo mais preciso sobre a forma como a saída de áudio representa as pausas na fala ou como o áudio pronuncia datas, horas, acrónimos e abreviaturas.
Para mais detalhes sobre os elementos SSML suportados pela API Cloud Text-to-Speech, consulte a referência SSML.
Protocolo
Consulte o ponto final da API text:synthesize para ver os detalhes completos.
Para sintetizar áudio a partir de SSML, faça um pedido HTTP POST ao ponto final text:synthesize. No corpo do pedido POST, especifique o tipo de voz a sintetizar na secção voice de configuração, especifique o SSML a sintetizar no campo ssml da secção input e especifique o tipo de áudio a criar na secção audioConfig.
O seguinte fragmento do código envia um pedido de síntese para o ponto final text:synthesize e guarda os resultados num ficheiro com o nome synthesize-ssml.txt. Substitua PROJECT_ID pelo ID do seu projeto.
curl -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "x-goog-user-project: <var>PROJECT_ID</var>" \ -H "Content-Type: application/json; charset=utf-8" --data "{ 'input':{ 'ssml':'<speak>The <say-as interpret-as=\"characters\">SSML</say-as> standard is defined by the <sub alias=\"World Wide Web Consortium\">W3C</sub>.</speak>' }, 'voice':{ 'languageCode':'en-us', 'name':'en-US-Standard-B', 'ssmlGender':'MALE' }, 'audioConfig':{ 'audioEncoding':'MP3' } }" "https://texttospeech.googleapis.com/v1/text:synthesize" > synthesize-ssml.txt
A API Text-to-Speech devolve o áudio sintetizado como dados codificados em base64 contidos na saída JSON. A saída JSON no ficheiro synthesize-ssml.txt é semelhante ao seguinte fragmento do código.
{
"audioContent": "//NExAASCCIIAAhEAGAAEMW4kAYPnwwIKw/BBTpwTvB+IAxIfghUfW.."
}
Para descodificar os resultados da API Text-to-Speech como um ficheiro de áudio MP3, execute o comando seguinte a partir do mesmo diretório que o ficheiro synthesize-ssml.txt.
cat synthesize-ssml.txt | grep 'audioContent' | \ sed 's|audioContent| |' | tr -d '\n ":{},' > tmp.txt && \ base64 tmp.txt --decode > synthesize-ssml-audio.mp3 && \ rm tmp.txt
Go
Para saber como instalar e usar a biblioteca cliente do Cloud TTS, consulte as bibliotecas cliente do Cloud TTS. Para mais informações, consulte a documentação de referência da API GoCloud TTS.
Para se autenticar no Cloud TTS, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Java
Para saber como instalar e usar a biblioteca cliente do Cloud TTS, consulte as bibliotecas cliente do Cloud TTS. Para mais informações, consulte a documentação de referência da API JavaCloud TTS.
Para se autenticar no Cloud TTS, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Node.js
Para saber como instalar e usar a biblioteca cliente do Cloud TTS, consulte as bibliotecas cliente do Cloud TTS. Para mais informações, consulte a documentação de referência da API Node.jsCloud TTS.
Para se autenticar no Cloud TTS, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Python
Para saber como instalar e usar a biblioteca cliente do Cloud TTS, consulte as bibliotecas cliente do Cloud TTS. Para mais informações, consulte a documentação de referência da API PythonCloud TTS.
Para se autenticar no Cloud TTS, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Idiomas adicionais
C#: Siga as instruções de configuração do C# na página das bibliotecas de cliente e, em seguida, visite a documentação de referência do Cloud TTS para .NET.
PHP: Siga as instruções de configuração do PHP na página das bibliotecas cliente e, em seguida, visite a documentação de referência do Cloud TTS para PHP.
Ruby: Siga as instruções de configuração do Ruby na página das bibliotecas cliente e, em seguida, visite a documentação de referência do Cloud TTS para Ruby.
Experimente
Se está a usar o Google Cloud pela primeira vez, crie uma conta para avaliar o desempenho do Cloud TTS em cenários reais. Os novos clientes também recebem 300 USD em créditos gratuitos para executar, testar e implementar cargas de trabalho.
Experimente o TTS na nuvem gratuitamente