Migrar código da API de áudio longo para a API de síntese em lotes
A API de síntese em lote fornece síntese assíncrona de conversão de texto em fala de formato longo. Este artigo descreve os benefícios da atualização da API de áudio longo para a API de síntese em lote e detalhes sobre como fazer isso.
Importante
A API de síntese em lote está disponível para o público geral. a API Long Audio será desativada em 1º de abril de 2027.
Caminho base e versão
Atualize o ponto de extremidade de https://YourSpeechRegion.customvoice.api.speech.microsoft.com
para ou https://YourSpeechRegion.api.cognitive.microsoft.com
você pode usar o domínio personalizado: https://{customDomainName}.cognitiveservices.azure.com/
.
Atualize o caminho base em seu código de /texttospeech/v3.0/longaudiosynthesis
para ./texttospeech/batchsyntheses
Atualize a versão do caminho base para a cadeia de caracteres /texttospeech/v3.0/longaudiosynthesis
de consulta para ?api-version=2024-04-01
.
Por exemplo, para listar trabalhos de síntese para o recurso de Fala na eastus
região, use https://eastus.api.cognitive.microsoft.com/texttospeech/batchsyntheses?api-version=2024-04-01
em vez de https://eastus.customvoice.api.speech.microsoft.com/api/texttospeech/v3.0/longaudiosynthesis
.
Regiões e endpoints
A API de síntese em lote está disponível em mais regiões de Fala.
A API de Áudio Longo é limitada às seguintes regiões:
Região | Ponto de extremidade |
---|---|
Leste da Austrália | https://australiaeast.customvoice.api.speech.microsoft.com |
Leste dos EUA | https://eastus.customvoice.api.speech.microsoft.com |
Centro da Índia | https://centralindia.customvoice.api.speech.microsoft.com |
Centro-Sul dos Estados Unidos | https://southcentralus.customvoice.api.speech.microsoft.com |
Sudeste Asiático | https://southeastasia.customvoice.api.speech.microsoft.com |
Sul do Reino Unido | https://uksouth.customvoice.api.speech.microsoft.com |
Europa Ocidental | https://westeurope.customvoice.api.speech.microsoft.com |
Lista de vozes
A API de síntese em lotes dá suporte a todos os estilos e vozes de conversão de texto em fala.
A API de Áudio Longo é limitada ao conjunto de vozes retornado por uma solicitação GET para https://<endpoint>/api/texttospeech/v3.0/longaudiosynthesis/voices
.
Entradas de texto
As entradas de texto de síntese em lote são enviadas em uma carga JSON de até 2 megabytes.
Entradas de texto da API de Áudio Longo são carregadas de um arquivo que atende aos seguintes requisitos:
- Um arquivo de texto sem formatação (.txt) ou texto SSML (.txt) codificado como UTF-8 com BOM (marca de ordem de byte). Não use arquivos compactados, como ZIP. Se houver mais de um arquivo de entrada, será necessário enviar várias solicitações.
- Contém mais de 400 caracteres de texto sem formatação ou 400 caracteres faturáveis de texto SSML e menos de dez mil parágrafos. No texto sem formatação, cada parágrafo é separado por uma nova linha. No texto SSML, cada parte é considerado um parágrafo. Separe as partes SSML por parágrafos diferentes.
Com a API de síntese em lotes, você pode usar qualquer um dos elementos SSML compatíveis, incluindo os elementos audio
, mstts:backgroundaudio
e lexicon
. A API de áudio longo não dá suporte aos audio
elementos , mstts:backgroundaudio
e .lexicon
Formatos de saída de áudio
A API de síntese em lotes dá suporte a todos os formatos de saída de áudio de conversão de texto em fala.
A API de Áudio Longo é limitada ao conjunto de formatos de saída de áudio a seguir. A taxa de amostragem para vozes de áudio longas é de 24kHz, não 48kHz. Outras taxas de amostragem podem ser obtidas por meio do aumento ou diminuição da taxa de amostragem ao sintetizar.
- riff-8khz-16bit-mono-pcm
- riff-16khz-16bit-mono-pcm
- riff-24khz-16bit-mono-pcm
- riff-48khz-16bit-mono-pcm
- audio-16khz-32kbitrate-mono-mp3
- audio-16khz-64kbitrate-mono-mp3
- audio-16khz-128kbitrate-mono-mp3
- audio-24khz-48kbitrate-mono-mp3
- audio-24khz-96kbitrate-mono-mp3
- audio-24khz-160kbitrate-mono-mp3
Obtendo resultados
Com a API de síntese em lote, use a URL da outputs.result
propriedade da resposta de síntese em lote HTTP GET. Os resultados estão em um arquivo ZIP que contém o áudio (como 0001.wav
), um resumo e os detalhes de depuração.
As entradas e resultados de texto da API de Áudio Longo são retornados por meio de duas URLs de conteúdo separadas, conforme mostrado no exemplo a seguir. Aquele com "kind": "LongAudioSynthesisScript"
é o script de entrada enviado. O outro, com "kind": "LongAudioSynthesisResult"
, é o resultado dessa solicitação. Os dois arquivos zip estão disponíveis para download na URL que aparece na propriedade links.contentUrl
deles.
Limpando recursos
A API de síntese em lote dá suporte a até 300 trabalhos de síntese em lote que não têm um status de "Bem-sucedido" ou "Falha". O serviço de Fala mantém cada histórico de síntese por até 31 dias ou a duração da propriedade de solicitação timeToLiveInHours
, o que ocorrer primeiro. A data e a hora da exclusão automática (para trabalhos de síntese com um status de "Êxito" ou "Falha") é igual às propriedades lastActionDateTime
+ timeToLiveInHours
.
A API de Áudio Longo é limitada a 20.000 solicitações para cada conta de assinatura do Azure. O serviço de Fala não remove o histórico de trabalho automaticamente. Você precisa remover o histórico de execução de trabalho anterior antes de fazer novas solicitações que, de outra forma, excederiam o limite.