Partilhar via


Utilize a voz pessoal na sua aplicação

Você pode usar o ID do perfil do orador para sua voz pessoal para sintetizar a fala em qualquer um dos 91 idiomas suportados em 100+ localidades. Uma tag de localidade não é necessária. A voz pessoal usa a deteção automática de idioma no nível da frase.

Integre a voz pessoal na sua aplicação

Você precisa usar a linguagem de marcação de síntese de fala (SSML) para usar a voz pessoal em seu aplicativo. SSML é uma linguagem de marcação baseada em XML que fornece uma maneira padrão de marcar texto para a geração de fala sintética. As tags SSML são usadas para controlar a pronúncia, o volume, o tom, a taxa e outros atributos da saída da síntese de fala.

  • A speakerProfileId propriedade em SSML é usada para especificar o ID do perfil do orador para a voz pessoal.

  • O nome da name voz é especificado na propriedade em SSML. Para voz pessoal, o nome de voz deve ser um dos nomes de voz do modelo base suportado. Para obter uma lista de nomes de voz de modelo base suportados, use a operação BaseModels_List da API de voz personalizada.

    Nota

    Os nomes de voz rotulados com o Latest, como DragonLatestNeural ou PhoenixLatestNeural, serão atualizados de tempos em tempos, seu desempenho pode variar com atualizações para melhorias contínuas. Se você quiser usar uma versão fixa, selecione uma rotulada com um número de versão, como PhoenixV2Neural.

  • DragonLatestNeuralé um modelo base com semelhança de clonagem de voz superior em comparação com .PhoenixLatestNeural PhoenixLatestNeural é um modelo base com pronúncia mais precisa e menor latência do que DragonLatestNeural.

  • Para voz pessoal, você pode usar o <lang xml:lang> elemento para ajustar a linguagem falante. É o mesmo que acontece com vozes multilingues. Veja como usar o elemento lang para falar idiomas diferentes.

Veja um exemplo de SSML em uma solicitação de conversão de texto em fala com o nome da voz e o ID do perfil do orador. O exemplo também demonstra como alternar idiomas de en-US para usar zh-HK o <lang xml:lang> elemento .

<speak version='1.0' xmlns='http://www.w3.org/2001/10/synthesis' xmlns:mstts='http://www.w3.org/2001/mstts' xml:lang='en-US'>
    <voice name='DragonLatestNeural'> 
        <mstts:ttsembedding speakerProfileId='your speaker profile ID here'> 
            I'm happy to hear that you find me amazing and that I have made your trip planning easier and more fun. 
            <lang xml:lang='zh-HK'>我很高興聽到你覺得我很了不起,我讓你的旅行計劃更輕鬆、更有趣。</lang>
        </mstts:ttsembedding> 
    </voice> 
</speak>

Você pode usar o SSML por meio do SDK de fala ou da API REST.

  • Síntese de fala em tempo real: use o SDK de fala ou a API REST para converter texto em fala.
    • Ao usar o SDK de fala, não defina o ID do ponto de extremidade, assim como a voz pré-compilada.
    • Quando você usa a API REST, use o ponto de extremidade de vozes neurais pré-construído.

Elementos SSML suportados e não suportados para voz pessoal

Para obter informações detalhadas sobre os elementos SSML suportados e não suportados para modelos Phoenix e Dragon, consulte a tabela a seguir. Para obter instruções sobre como usar elementos SSML, consulte a estrutura do documento SSML e eventos.

Elemento Description Suportado em Phoenix Suportado no Dragon
<voice> Especifica a voz e os efeitos opcionais (eq_car e eq_telecomhp8k). Sim Sim
<mstts:express-as> Especifica estilos e funções de fala. No Não
<mstts:ttsembedding> Especifica a speakerProfileId propriedade para uma voz pessoal. Sim Sim
<lang xml:lang> Especifica a língua falante. Sim Sim
<prosody> Ajusta o tom, contorno, alcance, taxa e volume.
   pitch Indica a inclinação da linha de base para o texto. No Não
   contour Representa mudanças no tom. No Não
   range Representa o intervalo de tom para o texto. No Não
   rate Indica a taxa de fala do texto. Sim Sim
   volume Indica o nível de volume da voz falante. No Não
<emphasis> Adiciona ou remove a ênfase no nível da palavra para o texto. No Não
<audio> Incorpora áudio pré-gravado em um documento SSML. Sim No
<mstts:audioduration> Especifica a duração do áudio de saída. No Não
<mstts:backgroundaudio> Adiciona áudio de fundo aos seus documentos SSML ou mistura um ficheiro de áudio com texto para voz. Sim No
<phoneme> Especifica a pronúncia fonética em documentos SSML.
   ipa Um dos alfabetos fonéticos. Sim No
   sapi Um dos alfabetos fonéticos. No Não
   ups Um dos alfabetos fonéticos. Sim No
   x-sampa Um dos alfabetos fonéticos. Sim No
<lexicon> Define como várias entidades são lidas no SSML. Sim Sim (apenas alias de suporte)
<say-as> Indica o tipo de conteúdo, como número ou data, do texto do elemento. Sim Sim
<sub> Indica que o valor de texto do atributo alias deve ser pronunciado em vez do texto incluído do elemento. Sim Sim
<math> Usa o MathML como texto de entrada para pronunciar corretamente notações matemáticas no áudio de saída. Sim No
<bookmark> Obtém o deslocamento de cada marcador no fluxo de áudio. Sim No
<break> Substitui o comportamento padrão de quebras ou pausas entre palavras. Sim Sim
<mstts:silence> Insere pausas antes ou depois do texto, ou entre duas frases adjacentes. Sim No
<mstts:viseme> Define a posição do rosto e da boca enquanto uma pessoa está falando. Sim No
<p> Indica parágrafos em documentos SSML. Sim Sim
<s> Indica frases em documentos SSML. Sim Sim

Recursos SDK suportados e não suportados para voz pessoal

A tabela a seguir descreve quais recursos do SDK são suportados para os modelos Phoenix e Dragon. Para obter detalhes sobre como utilizar esses recursos do SDK em seus aplicativos, consulte Inscrever-se em eventos de sintetizador.

Recursos do SDK Descrição Suportado em Phoenix Suportado no Dragon
Limite da palavra Sinais de que um limite de palavra foi recebido durante a síntese, fornecendo tempo preciso de palavras durante o processo de síntese de fala. Sim No
Eventos Viseme Fornece informações sobre o viseme (movimento dos lábios, mandíbula e língua) durante a síntese, permitindo a sincronização visual. Sim No

Documentação de referência

Próximos passos