Nesta página, descrevemos como selecionar um perfil de dispositivo para áudio criado pela Cloud Text-to-Speech.
Otimize a fala sintética produzida pelo Cloud Text-to-Speech para reprodução em diferentes tipos de hardware. Por exemplo, se o app é executado basicamente em dispositivos menores e "wearable", você pode criar uma fala sintética da API Cloud Text-to-Speech que é otimizada especificamente para alto-falantes menores.
Você também pode aplicar vários perfis de dispositivo à mesma fala sintética. A API Cloud Text-to-Speech aplica perfis de dispositivo ao áudio na
ordem fornecida na solicitação para o endpoint
text:synthesize. Evite especificar o mesmo perfil mais de uma vez porque você pode ter resultados indesejados.
O uso de perfis de áudio é opcional. Se você optar por usar um ou mais, o Cloud Text-to-Speech vai aplicar os perfis aos resultados de fala pós-sintetizados. Se optar por não usar um perfil de áudio, você receberá os resultados da fala sem modificações pós-síntese.
Para ouvir a diferença entre o áudio gerado de perfis diferentes, compare os dois clipes abaixo.
Exemplo 1. Áudio gerado com o perfil handset-class-device
Exemplo 2. Áudio gerado com o perfil telephony-class-application
Observação: cada perfil de áudio foi otimizado para um dispositivo específico, com o ajuste de uma gama de efeitos. No entanto, a marca e o modelo do dispositivo usado para ajustar o perfil podem não corresponder exatamente aos dispositivos de reprodução dos usuários. Talvez seja necessário experimentar diferentes perfis para encontrar a melhor saída de som para seu aplicativo.
Perfis de áudio disponíveis
A tabela a seguir fornece os códigos e exemplos dos perfis de dispositivos disponíveis para uso pela API Cloud Text-to-Speech.
| Código do perfil de áudio | Otimizado para |
|---|---|
wearable-class-device |
Smartwatches e outros wearables, como Apple Watch e Wear OS |
handset-class-device |
Smartphones, como Google Pixel, Samsung Galaxy e Apple iPhone |
headphone-class-device |
Fones de ouvido para reprodução de áudio, como os fones de ouvido Sennheiser |
small-bluetooth-speaker-class-device |
Alto-falantes domésticos pequenos, como o Google Home Mini |
medium-bluetooth-speaker-class-device |
Alto-falantes domésticos inteligentes, como o Google Home |
large-home-entertainment-class-device |
Sistemas de entretenimento doméstico ou smart TVs, como Google Home Max e LG TV |
large-automotive-class-device |
Alto-falantes para carro |
telephony-class-application |
Sistemas de resposta de voz interativa (IVR, na sigla em inglês) |
Especificar um perfil de áudio para usar
Para especificar um perfil de áudio a ser usado, defina o campo effectsProfileId para a solicitação de sintetização de fala.
Protocolo
Para gerar um arquivo de áudio, faça uma solicitação POST e forneça o corpo da solicitação apropriada. Veja a seguir um exemplo de uma solicitação POST usando curl. O exemplo usa a CLI do Google Cloud para recuperar um token de acesso para a solicitação.
Para instruções sobre como instalar a gcloud CLI, consulte
Autenticar no Cloud TTS.
O exemplo a seguir mostra como enviar uma solicitação para o
endpoint text:synthesize.
curl \ -H "Authorization: Bearer "$(gcloud auth print-access-token) \ -H "Content-Type: application/json; charset=utf-8" \ --data "{ 'input':{ 'text':'This is a sentence that helps test how audio profiles can change the way Cloud Text-to-Speech sounds.' }, 'voice':{ 'languageCode':'en-us', }, 'audioConfig':{ 'audioEncoding':'LINEAR16', 'effectsProfileId': ['telephony-class-application'] } }" "https://texttospeech.googleapis.com/v1beta1/text:synthesize" > audio-profile.txt
Se a solicitação for bem-sucedida, a API Cloud Text-to-Speech retornará o áudio sintetizado como dados codificados em base64 contidos na saída JSON. A saída JSON
no arquivo audio-profiles.txt tem esta aparência:
{ "audioContent": "//NExAASCCIIAAhEAGAAEMW4kAYPnwwIKw/BBTpwTvB+IAxIfghUfW.." }
Para decodificar os resultados da API Cloud Text-to-Speech como um arquivo de áudio MP3,
execute o seguinte comando no mesmo diretório do
arquivo audio-profiles.txt.
sed 's|audioContent| |' < audio-profile.txt > tmp-output.txt && \
tr -d '\n ":{}' < tmp-output.txt > tmp-output-2.txt && \
base64 tmp-output-2.txt --decode > audio-profile.wav && \
rm tmp-output*.txt
Go
Para saber como instalar e usar a biblioteca de cliente da Cloud TTS, consulte Bibliotecas de cliente da Cloud TTS. Saiba mais na documentação de referência da API Cloud TTS para Go.
Para se autenticar na Cloud TTS, configure o Application Default Credentials. Se quiser mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Java
Para saber como instalar e usar a biblioteca de cliente da Cloud TTS, consulte Bibliotecas de cliente da Cloud TTS. Saiba mais na documentação de referência da API Cloud TTS para Java.
Para se autenticar na Cloud TTS, configure o Application Default Credentials. Se quiser mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Node.js
Para saber como instalar e usar a biblioteca de cliente da Cloud TTS, consulte Bibliotecas de cliente da Cloud TTS. Saiba mais na documentação de referência da API Cloud TTS para Node.js.
Para se autenticar na Cloud TTS, configure o Application Default Credentials. Se quiser mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Python
Para saber como instalar e usar a biblioteca de cliente da Cloud TTS, consulte Bibliotecas de cliente da Cloud TTS. Saiba mais na documentação de referência da API Cloud TTS para Python.
Para se autenticar na Cloud TTS, configure o Application Default Credentials. Se quiser mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Linguagens adicionais
C#: siga as instruções de configuração do C# na página das bibliotecas de cliente e acesse a documentação de referência da Cloud TTS para .NET.
PHP: siga as instruções de configuração do PHP na página das bibliotecas de cliente e acesse a documentação de referência da Cloud TTS para PHP.
Ruby: siga as Instruções de configuração do Ruby na página das bibliotecas de cliente e acesse a Documentação de referência da Cloud TTS para Ruby.