Personalize voz e som com SSML

Você pode usar a SSML (Speech Synthesis Markup Language) para especificar a voz, o idioma, o nome, o estilo e a função de texto para a saída de fala. Você também pode usar várias vozes em um único documento SSML e ajustar a ênfase, a taxa de fala, o tom e o volume. Além disso, SSML possui a capacidade de inserir áudio pré-gravado, como um efeito sonoro ou uma nota musical.

O artigo mostra como usar elementos SSML para especificar voz e som. Para obter mais informações sobre a sintaxe SSML, consulte Estrutura e eventos do documento SSML.

Usar elementos de voz

Pelo menos um voice elemento deve ser especificado dentro de cada elemento speak SSML. Este elemento determina a voz que é usada para conversão de texto em fala.

Você pode incluir vários voice elementos em um único documento SSML. Cada voice elemento pode especificar uma voz diferente. Você também pode usar a mesma voz várias vezes com configurações diferentes, como quando você altera a duração do silêncio entre frases.

A tabela a voice seguir descreve o uso dos atributos do elemento:

Atributo Description Obrigatório ou opcional
name A voz usada para saída de texto para fala. Para obter uma lista completa das vozes pré-criadas suportadas, consulte Suporte a idiomas. Necessário
effect O processador de efeitos de áudio que é usado para otimizar a qualidade da saída de fala sintetizada para cenários específicos em dispositivos.

Para alguns cenários em ambientes de produção, a experiência auditiva pode ser degradada devido à distorção de reprodução em determinados dispositivos. Por exemplo, a fala sintetizada de um alto-falante de carro pode soar maçante e abafada devido a fatores ambientais, como resposta do alto-falante, reverberação da sala e ruído de fundo. O passageiro pode ter que aumentar o volume para ouvir com mais clareza. Para evitar operações manuais em tal cenário, o processador de efeitos de áudio pode tornar o som mais claro, compensando a distorção da reprodução.

Os seguintes valores são suportados:
  • eq_car – Otimizar a experiência auditiva ao fornecer fala de alta fidelidade em carros, ônibus e outros automóveis fechados.
  • eq_telecomhp8k – Otimizar a experiência auditiva para fala em banda estreita em cenários de telecomunicações ou telefone. Deve utilizar uma taxa de amostragem de 8 kHz. Se a taxa de amostragem não for de 8 kHz, a qualidade auditiva da fala de saída não será otimizada.

Se o valor estiver ausente ou for inválido, esse atributo será ignorado e nenhum efeito será aplicado.
Opcional

Exemplos de voz

Para obter informações sobre os valores suportados para atributos do elemento , consulte Usar elementos de voice voz.

Exemplo de voz única

Este exemplo usa a en-US-AvaMultilingualNeural voz.

<speak version="1.0" xmlns="http://www.w3.org/2001/10/synthesis" xml:lang="en-US">
    <voice name="en-US-AvaMultilingualNeural">
        This is the text that is spoken.
    </voice>
</speak>

Exemplo de várias vozes

Dentro do speak elemento , você pode especificar várias vozes para saída de texto para fala. Estas vozes podem estar em diferentes línguas. Para cada voz, o texto deve ser quebrado em um voice elemento.

Este exemplo alterna entre as en-US-AvaMultilingualNeural vozes e en-US-AndrewMultilingualNeural . As vozes neurais multilíngues podem falar diferentes idiomas com base no texto de entrada.

<speak version="1.0" xmlns="http://www.w3.org/2001/10/synthesis" xml:lang="en-US">
    <voice name="en-US-AvaMultilingualNeural">
        Good morning!
    </voice>
    <voice name="en-US-AndrewMultilingualNeural">
        Good morning to you too Ava!
    </voice>
</speak>

Exemplo de voz neural personalizada

Para usar sua voz neural personalizada, especifique o nome do modelo como o nome da voz no SSML.

Este exemplo usa uma voz personalizada chamada my-custom-voice.

<speak version="1.0" xmlns="http://www.w3.org/2001/10/synthesis" xml:lang="en-US">
    <voice name="my-custom-voice">
        This is the text that is spoken.
    </voice>
</speak>

Exemplo de efeito de áudio

Você usa o effect atributo para otimizar a experiência auditiva para cenários como carros e telecomunicações. O exemplo SSML a seguir usa o effect atributo com a configuração em cenários de carro.

<speak version="1.0" xmlns="http://www.w3.org/2001/10/synthesis" xml:lang="en-US">
    <voice name="en-US-AvaMultilingualNeural" effect="eq_car">
        This is the text that is spoken.
    </voice>
</speak>

Use estilos e papéis de fala

Por padrão, as vozes neurais têm um estilo de fala neutro. Você pode ajustar o estilo de fala, o grau de estilo e o papel no nível da frase.

Nota

O serviço de Fala suporta estilos, grau de estilo e funções para um subconjunto de vozes neurais, conforme descrito na documentação de estilos de voz e funções . Para determinar os estilos e funções suportados para cada voz, você também pode usar a API de vozes de lista e o aplicativo Web de criação de conteúdo de áudio.

A tabela a mstts:express-as seguir descreve o uso dos atributos do elemento:

Atributo Description Obrigatório ou opcional
style O estilo de fala específico da voz. Você pode expressar emoções como alegria, empatia e calma. Você também pode otimizar a voz para diferentes cenários, como atendimento ao cliente, noticiário e assistente de voz. Se o valor de estilo estiver ausente ou for inválido, todo o mstts:express-as elemento será ignorado e o serviço usará a fala neutra padrão. Para estilos de voz neural personalizados, consulte o exemplo de estilo de voz neural personalizado. Necessário
styledegree A intensidade do estilo de falar. Você pode especificar um estilo mais forte ou suave para tornar o discurso mais expressivo ou moderado. O intervalo de valores aceitos são: 0.01 a 2 inclusivo. O valor padrão é 1, o que significa a intensidade de estilo predefinida. A unidade mínima é 0.01, o que resulta numa ligeira tendência para o estilo alvo. Um valor de 2 resultados em uma duplicação da intensidade de estilo padrão. Se o grau de estilo estiver ausente ou não for suportado para sua voz, esse atributo será ignorado. Opcional
role A encenação falante. A voz pode imitar uma idade e sexo diferentes, mas o nome da voz não é alterado. Por exemplo, uma voz masculina pode elevar o tom e mudar a entonação para imitar uma voz feminina, mas o nome da voz não é alterado. Se a função estiver ausente ou não for suportada para sua voz, esse atributo será ignorado. Opcional

A tabela a seguir descreve cada atributo suportado style :

Estilo Description
style="advertisement_upbeat" Expressa um tom animado e de alta energia para promover um produto ou serviço.
style="affectionate" Expressa um tom caloroso e afetuoso, com maior tom e energia vocal. O orador está em um estado de atrair a atenção do ouvinte. A personalidade do orador é muitas vezes cativante por natureza.
style="angry" Expressa um tom irritado e irritado.
style="assistant" Expressa um tom caloroso e descontraído para assistentes digitais.
style="calm" Expressa uma atitude fria, recolhida e composta ao falar. O tom, o tom e a prosódia são mais uniformes em comparação com outros tipos de discurso.
style="chat" Expressa um tom casual e descontraído.
style="cheerful" Expressa um tom positivo e feliz.
style="customerservice" Expressa um tom amigável e útil para o suporte ao cliente.
style="depressed" Expressa um tom melancólico e desanimado com tom e energia mais baixos.
style="disgruntled" Expressa um tom desdenhoso e queixoso. O discurso desta emoção demonstra desagrado e desprezo.
style="documentary-narration" Narra documentários em um estilo descontraído, interessado e informativo adequado para dublar documentários, comentários de especialistas e conteúdo semelhante.
style="embarrassed" Expressa um tom incerto e hesitante quando o orador se sente desconfortável.
style="empathetic" Expressa um sentimento de cuidado e compreensão.
style="envious" Expressa um tom de admiração quando você deseja algo que outra pessoa tem.
style="excited" Expressa um tom otimista e esperançoso. Parece que algo grande está acontecendo e o orador está feliz com isso.
style="fearful" Expressa um tom assustado e nervoso, com tom mais alto, maior energia vocal e taxa mais rápida. O orador encontra-se num estado de tensão e inquietação.
style="friendly" Expressa um tom agradável, convidativo e caloroso. Parece sincero e atencioso.
style="gentle" Expressa um tom suave, educado e agradável, com tom mais baixo e energia vocal.
style="hopeful" Expressa um tom caloroso e saudoso. Parece que algo de bom vai acontecer com o orador.
style="lyrical" Expressa emoções de forma melódica e sentimental.
style="narration-professional" Expressa um tom profissional e objetivo para a leitura de conteúdos.
style="narration-relaxed" Expressa um tom suave e melodioso para a leitura de conteúdo.
style="newscast" Expressa um tom formal e profissional para narrar notícias.
style="newscast-casual" Expressa um tom versátil e casual para a entrega de notícias gerais.
style="newscast-formal" Expressa um tom formal, confiante e autoritário para a entrega de notícias.
style="poetry-reading" Expressa um tom emocional e rítmico durante a leitura de um poema.
style="sad" Expressa um tom de tristeza.
style="serious" Expressa um tom rigoroso e de comando. O alto-falante muitas vezes soa mais rígido e muito menos relaxado com cadência firme.
style="shouting" Expressa um tom que soa como se a voz estivesse distante ou em outro local e fazendo um esforço para ser claramente ouvida.
style="sports_commentary" Expressa um tom descontraído e interessado na transmissão de um evento desportivo.
style="sports_commentary_excited" Expressa um tom intensivo e enérgico para transmitir momentos emocionantes em um evento esportivo.
style="whispering" Expressa um tom suave que tenta fazer um som silencioso e suave.
style="terrified" Expressa um tom assustado, com um ritmo mais rápido e uma voz mais trêmula. Parece que o orador está em um estado instável e frenético.
style="unfriendly" Expressa um tom frio e indiferente.

A tabela a seguir tem descrições de cada atributo suportado role :

Função Description
role="Girl" A voz imita uma menina.
role="Boy" A voz imita um menino.
role="YoungAdultFemale" A voz imita uma jovem adulta do sexo feminino.
role="YoungAdultMale" A voz imita um jovem adulto do sexo masculino.
role="OlderAdultFemale" A voz imita uma mulher idosa.
role="OlderAdultMale" A voz imita um homem idoso.
role="SeniorFemale" A voz imita uma mulher sénior.
role="SeniorMale" A voz imita um homem sénior.

Exemplos de MSTTS Express-As

Para obter informações sobre os valores suportados para atributos do elemento, consulte Usar estilos e funções de mstts:express-as fala.

Exemplo de estilo e grau

Você usa o elemento para expressar emoções como alegria, empatia mstts:express-as e calma. Você também pode otimizar a voz para diferentes cenários, como atendimento ao cliente, noticiário e assistente de voz.

O exemplo SSML a seguir usa o <mstts:express-as> elemento com um sad grau de estilo de 2.

<speak version="1.0" xmlns="http://www.w3.org/2001/10/synthesis" xmlns:mstts="https://www.w3.org/2001/mstts" xml:lang="zh-CN">
    <voice name="zh-CN-XiaomoNeural">
        <mstts:express-as style="sad" styledegree="2">
            快走吧,路上一定要注意安全,早去早回。
        </mstts:express-as>
    </voice>
</speak>

Exemplo de papel

Além de ajustar os estilos de fala e grau de estilo, você também pode ajustar o role parâmetro para que a voz imite uma idade e sexo diferentes. Por exemplo, uma voz masculina pode elevar o tom e mudar a entonação para imitar uma voz feminina, mas o nome da voz não é alterado.

Este trecho do SSML ilustra como o role atributo é usado para alterar a representação de papéis do zh-CN-XiaomoNeural.

<speak version="1.0" xmlns="http://www.w3.org/2001/10/synthesis" xmlns:mstts="https://www.w3.org/2001/mstts" xml:lang="zh-CN">
    <voice name="zh-CN-XiaomoNeural">
        女儿看见父亲走了进来,问道:
        <mstts:express-as role="YoungAdultFemale" style="calm">
            “您来的挺快的,怎么过来的?”
        </mstts:express-as>
        父亲放下手提包,说:
        <mstts:express-as role="OlderAdultMale" style="calm">
            “刚打车过来的,路上还挺顺畅。”
        </mstts:express-as>
    </voice>
</speak>

Exemplo de estilo de voz neural personalizado

Você pode treinar sua voz neural personalizada para falar com alguns estilos predefinidos, como cheerful, sade whispering. Você também pode treinar uma voz neural personalizada para falar em um estilo personalizado, conforme determinado pelos dados de treinamento. Para usar seu estilo de voz neural personalizado no SSML, especifique o nome do estilo que você inseriu anteriormente no Speech Studio.

Este exemplo usa uma voz personalizada chamada my-custom-voice. A voz personalizada fala com o estilo predefinido e o cheerful grau de estilo de 2, e, em seguida, com um estilo personalizado chamado my-custom-style e grau de estilo de 0.01.

<speak version="1.0" xmlns="http://www.w3.org/2001/10/synthesis" xmlns:mstts="https://www.w3.org/2001/mstts" xml:lang="en-US">
    <voice name="my-custom-voice">
        <mstts:express-as style="cheerful" styledegree="2">
            That'd be just amazing!
        </mstts:express-as>
        <mstts:express-as style="my-custom-style" styledegree="0.01">
            What's next?
        </mstts:express-as>
    </voice>
</speak>

ID do perfil do orador

Use o mstts:ttsembedding elemento para especificar a speakerProfileId propriedade para uma voz pessoal. A voz pessoal é uma voz neural personalizada que é treinada na sua própria voz ou na voz do seu cliente. Para obter mais informações, consulte Criar uma voz pessoal.

O exemplo SSML a seguir usa o elemento com um nome de voz e ID de perfil de <mstts:ttsembedding> alto-falante.

<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 xml:lang='en-US' xml:gender='Male' name='PhoenixV2Neural'> 
    <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. 我很高兴听到你觉得我很了不起,我让你的旅行计划更轻松、更有趣。Je suis heureux d'apprendre que vous me trouvez incroyable et que j'ai rendu la planification de votre voyage plus facile et plus amusante.  
    </mstts:ttsembedding> 
    </voice> 
</speak> 

Ajustar os idiomas de fala

Por padrão, as vozes multilíngues podem detetar automaticamente o idioma do texto de entrada e falar no idioma da localidade padrão do texto de entrada sem usar SSML. Opcionalmente, você pode usar o <lang xml:lang> elemento para ajustar o idioma de fala para essas vozes para definir o sotaque preferido, como en-GB para o inglês britânico. Você pode ajustar a língua falada tanto no nível da frase quanto no nível da palavra. Para obter informações sobre os idiomas suportados para voz multilíngue, consulte Vozes multilíngues com o elemento lang para obter uma tabela mostrando as definições de <lang> sintaxe e atributo.

A tabela a <lang xml:lang> seguir descreve o uso dos atributos do elemento:

Atributo Description Obrigatório ou opcional
xml:lang A linguagem que você deseja que a voz neural fale. Necessário para ajustar a linguagem de fala para a voz neural. Se você estiver usando lang xml:lango , a localidade deve ser fornecida.

Nota

O <lang xml:lang> elemento é incompatível com os prosody elementos e break . Não é possível ajustar a pausa e a prosódia como tom, contorno, taxa ou volume neste elemento.

Vozes multilingues com o elemento lang

Use a seção de vozes multilíngues para determinar quais idiomas de fala o serviço de fala suporta para cada voz neural, conforme demonstrado na tabela de exemplo a seguir. Se a voz não falar o idioma do texto de entrada, o serviço de Fala não emite áudio sintetizado.

Voz Número de idioma suportado Idiomas suportados Localidade padrão detetada automaticamente para cada idioma
en-US-AndrewMultilingualNeural 1 (Masculino)
en-US-AvaMultilingualNeural 1 (Feminino)
en-US-BrianMultilingualNeural 1 (Masculino)
en-US-EmmaMultilingualNeural 1 (Feminino)
77 Africâner, Albanês, Amárico, Árabe, Arménio, Azerbaijão, Bahasa Indonésio, Bangla, Basco, Bengali, Bósnio, Búlgaro, Birmanês, Catalão, Chinês Cantonês, Chinês Mandarim, Chinês Taiwanês, Croata, Checo, Dinamarquês, Holandês, Inglês, Estónio, Filipino, Finlandês, Francês, Galego, Georgiano, Alemão, Grego, Hebraico, Hindi, Húngaro, Islandês, Irlandês, Italiano, Japonês, Javanês, Kannada, Cazaque, Khmer, Coreano, Laos, Letão, Lituano, Macedónio, Malaio, Malaio, Maltês, Mongol, Nepalês, Bokmål norueguês, pashto, persa, polaco, português, romeno, russo, sérvio, cingalês, eslovaco, esloveno, somali, espanhol, sundanês, suaíli, sueco, tâmil, telugu, tailandês, turco, ucraniano, urdu, uzbeque, vietnamita, galês, zulu af-ZA, am-ET, ar-EG, az-AZ, bg-BG, bn-BDbn-INbs-BAca-EScs-CZcy-GBda-DKde-DEel-GRen-USes-ESet-EEeu-ESfa-IRfi-FIfil-PHfr-FRga-IEgl-EShe-ILhi-INhr-HRhu-HUhy-AMid-IDis-ISit-ITja-JPjv-IDka-GEkk-KZkm-KHkn-INko-KRlo-LAlt-LTlv-LVmk-MKml-INmn-MNms-MYmt-MTmy-MMnb-NOne-NPnl-NLpl-PLps-AFpt-BRro-ROru-RUsi-LKsk-SKsl-SIso-SOsq-ALsr-RSsu-IDsv-SEsw-KE, ta-IN, te-IN, , tr-TRth-TH, uk-UA, ur-PK, uz-UZ, vi-VN, zh-CNzh-TWzh-HKzu-ZA.

1 Essas são vozes multilíngues neurais no Azure AI Speech. Todas as vozes multilíngues podem falar no idioma na localidade padrão do texto de entrada sem usar SSML. No entanto, você ainda pode usar o <lang xml:lang> elemento para ajustar o sotaque de fala de cada idioma para definir o sotaque preferido, como o sotaque britânico (en-GB) para o inglês. A localidade primária de cada voz é indicada pelo prefixo em seu nome, como a voz en-US-AndrewMultilingualNeural, sua localidade primária é en-US. Verifique a lista completa de localidades suportadas através do SSML.

Nota

As vozes multilingues não suportam totalmente determinados elementos SSML, tais como break, emphasis, silencee sub.

Exemplos de Lang

Para obter informações sobre os valores suportados para atributos do elemento, consulte Ajustar o idioma de lang fala.

Você deve especificar en-US como o idioma padrão dentro do speak elemento , se o idioma é ou não ajustado em outro lugar. Neste exemplo, o idioma principal para en-US-AvaMultilingualNeural é en-US.

Este trecho SSML mostra como usar <lang xml:lang> para falar de-DE com a en-US-AvaMultilingualNeural voz neural.

<speak version="1.0" xmlns="http://www.w3.org/2001/10/synthesis" xmlns:mstts="https://www.w3.org/2001/mstts" xml:lang="en-US">
    <voice name="en-US-AvaMultilingualNeural">
        <lang xml:lang="de-DE">
            Wir freuen uns auf die Zusammenarbeit mit Ihnen!
        </lang>
    </voice>
</speak>

Dentro do speak elemento , você pode especificar vários idiomas, inclusive en-US para saída de texto para fala. Para cada idioma ajustado, o texto deve corresponder ao idioma e ser quebrado em um voice elemento. Este trecho SSML mostra como usar <lang xml:lang> para alterar os idiomas falantes para es-MX, en-USe fr-FR.

<speak version="1.0" xmlns="http://www.w3.org/2001/10/synthesis" xmlns:mstts="https://www.w3.org/2001/mstts" xml:lang="en-US">
    <voice name="en-US-AvaMultilingualNeural">
        <lang xml:lang="es-MX">
            ¡Esperamos trabajar con usted!
        </lang>
        <lang xml:lang="en-US">
           We look forward to working with you!
        </lang>
        <lang xml:lang="fr-FR">
            Nous avons hâte de travailler avec vous!
        </lang>
    </voice>
</speak>

Ajustar o elemento prosody

Você pode usar o elemento para especificar alterações no tom, contorno prosody , intervalo, taxa e volume para a saída de texto para fala. O prosody elemento pode conter texto e os seguintes elementos: audio, break, p, phoneme, prosody, say-as, sube s.

Como os valores de atributos prosódicos podem variar em uma ampla faixa, o reconhecedor de fala interpreta os valores atribuídos como uma sugestão de quais devem ser os valores prosódicos reais da voz selecionada. O texto para fala limita ou substitui valores que não são suportados. Exemplos de valores não suportados são um passo de 1 MHz ou um volume de 120.

A tabela a prosody seguir descreve o uso dos atributos do elemento:

Atributo Description Obrigatório ou opcional
contour O contorno representa mudanças no tom. Essas alterações são representadas como uma matriz de alvos em posições de tempo especificadas na saída de fala. Conjuntos de pares de parâmetros definem cada destino. Por exemplo:

<prosody contour="(0%,+20Hz) (10%,-2st) (40%,+10Hz)">

O primeiro valor em cada conjunto de parâmetros especifica a localização da alteração de pitch como uma percentagem da duração do texto. O segundo valor especifica a quantidade para aumentar ou diminuir o pitch usando um valor relativo ou um valor de enumeração para pitch (consulte pitch).
Opcional
pitch Indica a inclinação da linha de base para o texto. As alterações de pitch podem ser aplicadas ao nível da frase. As alterações de tom devem estar dentro de 0,5 a 1,5 vezes o áudio original. Você pode expressar o pitch como:
  • Um valor absoluto: expresso como um número seguido de "Hz" (Hertz). Por exemplo, <prosody pitch="600Hz">some text</prosody>.
  • Um valor relativo:
    • Como um número relativo: Expresso como um número precedido por "+" ou "-" e seguido por "Hz" ou "st" que especifica uma quantidade para alterar o tom. Por exemplo: <prosody pitch="+80Hz">some text</prosody> ou <prosody pitch="-2st">some text</prosody>. O "st" indica que a unidade de mudança é semitonal, que é metade de um tom (meio passo) na escala diatônica padrão.
    • Em percentagem: Expresso como um número precedido de "+" (opcionalmente) ou "-" e seguido de "%", indicando a variação relativa. Por exemplo: <prosody pitch="50%">some text</prosody> ou <prosody pitch="-50%">some text</prosody>.
  • Um valor constante:
    • x-baixo
    • lowa
    • médio
    • alto
    • x-alta
    • default
Opcional
range Um valor que representa o intervalo de pitch para o texto. Você pode expressar range usando os mesmos valores absolutos, valores relativos ou valores de enumeração usados para descrever pitcho . Opcional
rate Indica a taxa de fala do texto. A velocidade de fala pode ser aplicada ao nível da palavra ou da frase. As alterações de taxa devem ser dentro 0.52 de vezes o áudio original. Você pode expressar rate como:
  • Um valor relativo:
    • Como um número relativo: Expresso como um número que atua como um multiplicador do padrão. Por exemplo, um valor de 1 resulta em nenhuma alteração na taxa original. Um valor de 0.5 resultados em uma redução pela metade da taxa original. Um valor de 2 resultados em duas vezes a taxa original.
    • Em percentagem: Expresso como um número precedido de "+" (opcionalmente) ou "-" e seguido de "%", indicando a variação relativa. Por exemplo: <prosody rate="50%">some text</prosody> ou <prosody rate="-50%">some text</prosody>.
  • Um valor constante:
    • x-lento
    • lento
    • médio
    • rápido
    • x-rápido
    • default
Opcional
volume Indica o nível de volume da voz falante. As alterações de volume podem ser aplicadas ao nível da frase. Você pode expressar o volume como:
  • Um valor absoluto: expresso como um número no intervalo de 0.0 até 100.0, do mais silencioso ao mais alto, como 75. O valor predefinido é 100.0.
  • Um valor relativo:
    • Como um número relativo: Expresso como um número precedido por "+" ou "-" que especifica uma quantidade para alterar o volume. Exemplos são +10 ou -5.5.
    • Em percentagem: Expresso como um número precedido de "+" (opcionalmente) ou "-" e seguido de "%", indicando a variação relativa. Por exemplo: <prosody volume="50%">some text</prosody> ou <prosody volume="+3%">some text</prosody>.
  • Um valor constante:
    • silencioso
    • x-macio
    • flexível
    • médio
    • alto
    • x-alto
    • default
Opcional

Exemplos de prosódia

Para obter informações sobre os valores suportados para atributos do prosody elemento, consulte Ajustar prosódia.

Alterar exemplo de taxa de fala

Este trecho SSML ilustra como o rate atributo é usado para alterar a taxa de fala para 30% maior do que a taxa padrão.

<speak version="1.0" xmlns="http://www.w3.org/2001/10/synthesis" xml:lang="en-US">
    <voice name="en-US-AvaMultilingualNeural">
        <prosody rate="+30.00%">
            Enjoy using text to speech.
        </prosody>
    </voice>
</speak>

Exemplo de alteração de volume

Este trecho SSML ilustra como o volume atributo é usado para alterar o volume para 20% maior do que o volume padrão.

<speak version="1.0" xmlns="http://www.w3.org/2001/10/synthesis" xml:lang="en-US">
    <voice name="en-US-AvaMultilingualNeural">
        <prosody volume="+20.00%">
            Enjoy using text to speech.
        </prosody>
    </voice>
</speak>

Exemplo de alteração de pitch

Este trecho SSML ilustra como o pitch atributo é usado para que a voz fale em tom alto.

<speak version="1.0" xmlns="http://www.w3.org/2001/10/synthesis" xml:lang="en-US">
    <voice name="en-US-AvaMultilingualNeural">
        Welcome to <prosody pitch="high">Enjoy using text to speech.</prosody>
    </voice>
</speak>

Alterar exemplo de contorno de pitch

Este trecho SSML ilustra como o contour atributo é usado para alterar o contorno.

<speak version="1.0" xmlns="http://www.w3.org/2001/10/synthesis" xml:lang="en-US">
    <voice name="en-US-AvaMultilingualNeural">
        <prosody contour="(60%,-60%) (100%,+80%)" >
            Were you the only person in the room?
        </prosody>
    </voice>
</speak>

Ajustar ênfase

Você pode usar o elemento opcional emphasis para adicionar ou remover o estresse no nível da palavra para o texto. Este elemento só pode conter texto e os seguintes elementos: audio, break, emphasis, lang, phoneme, prosody, say-as, sube voice.

Nota

A sintonia de ênfase no nível da palavra só está disponível para estas vozes neurais: en-US-GuyNeural, en-US-DavisNeural, e en-US-JaneNeural.

Para palavras que têm tom baixo e curta duração, o tom pode não ser elevado o suficiente para ser notado.

A tabela a seguir descreve os emphasis atributos do elemento:

Atributo Description Obrigatório ou opcional
level Indica a força da ênfase a ser aplicada:
  • reduced
  • none
  • moderate
  • strong
.
Quando o level atributo não é especificado, o nível padrão é moderate. Para obter detalhes sobre cada atributo, consulte o elemento de ênfase.
Opcional

Exemplos de ênfase

Para obter informações sobre os valores suportados para atributos do emphasis elemento, consulte Ajustar ênfase.

Este trecho do SSML demonstra como você pode usar o elemento para adicionar ênfase de emphasis nível moderado para a palavra "reuniões".

<speak version="1.0" xmlns="http://www.w3.org/2001/10/synthesis" xmlns:mstts="https://www.w3.org/2001/mstts" xml:lang="en-US">
    <voice name="en-US-AndrewMultilingualNeural">
    I can help you join your <emphasis level="moderate">meetings</emphasis> fast.
    </voice>
</speak>

Adicionar áudio gravado

O audio elemento é opcional. Você pode usá-lo para inserir áudio pré-gravado em um documento SSML. O corpo do audio elemento pode conter texto simples ou marcação SSML falada se o arquivo de áudio não estiver disponível ou não puder ser reproduzido. O audio elemento também pode conter texto e os seguintes elementos: audio, break, p, s, phoneme, prosody, say-ase sub.

Qualquer áudio incluído no documento SSML deve atender aos seguintes requisitos:

  • O ficheiro de áudio tem de ser válido *.mp3, *.wav, *.opus, *.ogg, *.flac ou *.wma ficheiros.
  • O tempo total combinado para todos os arquivos de texto e áudio em uma única resposta não pode exceder 600 segundos.
  • O áudio não deve conter informações específicas do cliente ou outras informações confidenciais.

Nota

O audio elemento não é suportado pela API Long Audio. Para conversão de texto em fala de forma longa, use a API de síntese em lote (Visualização).

A tabela a audio seguir descreve o uso dos atributos do elemento:

Atributo Description Obrigatório ou opcional
src O local do URI do arquivo de áudio. O áudio deve ser hospedado em um ponto de extremidade HTTPS acessível pela Internet. HTTPS é necessário. O domínio que hospeda o arquivo deve apresentar um certificado TLS/SSL válido e confiável. Você deve colocar o arquivo de áudio no Armazenamento de Blob na mesma região do Azure que o ponto de extremidade de texto para fala para minimizar a latência. Necessário

Exemplos de áudio

Para obter informações sobre os valores suportados para atributos do audio elemento , consulte Adicionar áudio gravado.

Este trecho SSML ilustra como usar src o atributo para inserir áudio de dois arquivos .wav.

<speak version="1.0" xmlns="http://www.w3.org/2001/10/synthesis" xml:lang="en-US">
    <voice name="en-US-AvaMultilingualNeural">
        <p>
            <audio src="https://contoso.com/opinionprompt.wav"/>
            Thanks for offering your opinion. Please begin speaking after the beep.
            <audio src="https://contoso.com/beep.wav">
                Could not play the beep, please voice your opinion now.
            </audio>
        </p>
    </voice>
</speak>

Ajustar a duração do áudio

Use o mstts:audioduration elemento para definir a duração do áudio de saída. Use este elemento para ajudar a sincronizar o tempo de conclusão da saída de áudio. A duração do áudio pode ser diminuída ou aumentada entre 0.5 vezes 2 a taxa do áudio original. O áudio original é o áudio sem quaisquer outras configurações de taxa. A taxa de fala é diminuída ou acelerada de acordo com o valor definido.

A configuração de duração do áudio aplica-se a todo o texto de entrada dentro de seu elemento de delimitação voice . Para redefinir ou alterar a configuração de duração do áudio novamente, você deve usar um novo voice elemento com a mesma voz ou uma voz diferente.

A tabela a mstts:audioduration seguir descreve o uso dos atributos do elemento:

Atributo Description Obrigatório ou opcional
value A duração solicitada do áudio de saída em segundos, como 2s, ou milissegundos, como 2000ms.

Este valor deve estar dentro 0.5 de 2 vezes o áudio original sem quaisquer outras configurações de taxa. Por exemplo, se a duração solicitada do seu áudio for 30s, então o áudio original deve ter entre 15 e 60 segundos. Se você definir um valor fora desses limites, a duração será definida de acordo com o respetivo múltiplo mínimo ou máximo.

Dada a duração de áudio de saída solicitada, o serviço de Fala ajusta a taxa de fala de acordo. Use a API de lista de voz e verifique o WordsPerMinute atributo para descobrir a taxa de fala da voz neural que você está usando. Você pode dividir o número de palavras no texto de entrada pelo valor do atributo para obter a duração aproximada do WordsPerMinute áudio de saída original. A saída de áudio soa mais natural quando você define a duração do áudio mais próxima da duração estimada.
Necessário

Exemplos de duração de áudio MSTTS

Para obter informações sobre os valores suportados para atributos do elemento, consulte Ajustar a duração do mstts:audioduration áudio.

Neste exemplo, o áudio original tem cerca de 15 segundos. O mstts:audioduration elemento é usado para definir a duração do áudio para 20 segundos ou 20s.

<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="en-US-AvaMultilingualNeural">
<mstts:audioduration value="20s"/>
If we're home schooling, the best we can do is roll with what each day brings and try to have fun along the way.
A good place to start is by trying out the slew of educational apps that are helping children stay happy and smash their schooling at the same time.
</voice>
</speak>

Adicionar áudio de fundo

Você pode usar o mstts:backgroundaudio elemento para adicionar áudio de fundo aos seus documentos SSML ou misturar um arquivo de áudio com texto em fala. Com mstts:backgroundaudioo , você pode fazer um loop de um arquivo de áudio em segundo plano, fade in no início de text to speech e fade out no final de text to speech.

Se o áudio de fundo fornecido for mais curto do que o texto para fala ou o fade out, ele será repetido. Se for mais longo do que o texto para fala, ele para quando o fade out é concluído.

Apenas um arquivo de áudio em segundo plano é permitido por documento SSML. Você pode intercalar audio tags dentro do voice elemento para adicionar mais áudio ao seu documento SSML.

Nota

O mstts:backgroundaudio elemento deve ser colocado na frente de todos os voice elementos. Se especificado, deve ser o primeiro filho do speak elemento.

O mstts:backgroundaudio elemento não é suportado pela API Long Audio. Para conversão de texto em fala de forma longa, use a API de síntese em lote (Visualização).

A tabela a mstts:backgroundaudio seguir descreve o uso dos atributos do elemento:

Atributo Description Obrigatório ou opcional
src O local do URI do arquivo de áudio em segundo plano. Necessário
volume O volume do arquivo de áudio de fundo. Valores aceites: 0 a 100 inclusivo. O valor predefinido é 1. Opcional
fadein A duração do fade-in de áudio em segundo plano é de milissegundos. O valor padrão é 0, que é o equivalente a no fade in. Valores aceites: 0 a 10000 inclusivo. Opcional
fadeout A duração do fade-out de áudio em segundo plano em milissegundos. O valor padrão é 0, que é o equivalente a no fade out. Valores aceites: 0 a 10000 inclusivo. Opcional

Exemplos de BackgroundAudio do MSTSS

Para obter informações sobre os valores suportados para atributos do elemento, consulte Adicionar áudio em mstts:backgroundaudi segundo plano.

<speak version="1.0" xml:lang="en-US" xmlns:mstts="http://www.w3.org/2001/mstts">
    <mstts:backgroundaudio src="https://contoso.com/sample.wav" volume="0.7" fadein="3000" fadeout="4000"/>
    <voice name="en-US-AvaMultilingualNeural">
        The text provided in this document will be spoken over the background audio.
    </voice>
</speak>

Próximos passos