Share via


Personalizzare la voce e il suono con SSML

È possibile usare Speech Synthesis Markup Language (SSML) per specificare il testo della voce, della lingua, del nome, dello stile e del ruolo per l'output vocale. È anche possibile usare più voci in un singolo documento SSML e regolare l'enfasi, la velocità di pronuncia, l'inclinazione e il volume. Inoltre, SSML offre la possibilità di inserire audio prerecordato, ad esempio un effetto audio o una nota musicale.

L'articolo illustra come usare gli elementi SSML per specificare la voce e il suono. Per altre informazioni sulla sintassi SSML, vedere Struttura ed eventi del documento SSML.

Usare gli elementi vocali

È necessario specificare almeno un voice elemento all'interno di ogni elemento SSML speak . Questo elemento determina la voce usata per la sintesi vocale.

È possibile includere più voice elementi in un singolo documento SSML. Ogni voice elemento può specificare una voce diversa. È anche possibile usare la stessa voce più volte con impostazioni diverse, ad esempio quando si modifica la durata del silenzio tra le frasi.

Nella tabella seguente viene descritto l'utilizzo degli voice attributi dell'elemento:

Attributo Descrizione Obbligatorio o facoltativo
name Voce usata per l'output vocale. Per un elenco completo delle voci predefinite supportate, vedere Supporto per la lingua. Richiesto
effect Processore di effetti audio usato per ottimizzare la qualità dell'output vocale sintetizzato per scenari specifici nei dispositivi.

Per alcuni scenari negli ambienti di produzione, l'esperienza uditiva potrebbe essere danneggiata a causa della distorsione della riproduzione in determinati dispositivi. Ad esempio, il parlato sintetizzato da un altoparlante dell'auto potrebbe sembrare noioso e muffato a causa di fattori ambientali come la risposta dell'altoparlante, il riverbero della stanza e il rumore di fondo. Il passeggero potrebbe dover accegere il volume per sentire più chiaramente. Per evitare operazioni manuali in questo scenario, il processore dell'effetto audio può rendere più chiaro il suono compensando la distorsione della riproduzione.

Sono supportati i valori seguenti:
  • eq_car – Ottimizzare l'esperienza uditiva quando si fornisce un discorso ad alta fedeltà in auto, autobus e altre automobili racchiuse.
  • eq_telecomhp8k – Ottimizzare l'esperienza uditiva per la sintesi vocale a banda ridotta in scenari di telecomunicazioni o telefoniche. È consigliabile usare una frequenza di campionamento di 8 kHz. Se la frequenza di campionamento non è 8 kHz, la qualità uditiva del parlato di output non è ottimizzata.

Se il valore è mancante o non valido, questo attributo viene ignorato e non viene applicato alcun effetto.
Facoltativo

Esempi vocali

Per informazioni sui valori supportati per gli attributi dell'elemento voice , vedere Usare gli elementi vocali.

Esempio di voce singola

In questo esempio viene usata la en-US-AvaMultilingualNeural voce .

<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>

Esempio di più voci

All'interno dell'elemento è possibile specificare più voci per l'output speak di sintesi vocale. Queste voci possono trovarsi in lingue diverse. Per ogni voce, il testo deve essere racchiuso in un voice elemento .

Questo esempio alterna le en-US-AvaMultilingualNeural voci e en-US-AndrewMultilingualNeural . Le voci multilingue neurali possono parlare lingue diverse in base al testo di input.

<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>

Esempio di voce neurale personalizzata

Per usare la voce neurale personalizzata, specificare il nome del modello come nome della voce in SSML.

Questo esempio usa una voce personalizzata denominata 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>

Esempio di effetto audio

Si usa l'attributo effect per ottimizzare l'esperienza uditiva per scenari quali automobili e telecomunicazioni. L'esempio SSML seguente usa l'attributo effect con la configurazione negli scenari di auto.

<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>

Usare stili e ruoli parlanti

Per impostazione predefinita, le voci neurali hanno uno stile di pronuncia neutro. È possibile modificare lo stile di pronuncia, il grado di stile e il ruolo a livello di frase.

Nota

Il servizio Voce supporta stili, grado di stile e ruoli per un subset di voci neurali, come descritto nella documentazione relativa agli stili e ai ruoli vocali. Per determinare gli stili e i ruoli supportati per ogni voce, è anche possibile usare l'API voci di elenco e l'applicazione Web per la creazione di contenuti audio.

Nella tabella seguente viene descritto l'utilizzo degli mstts:express-as attributi dell'elemento:

Attributo Descrizione Obbligatorio o facoltativo
style Stile di pronuncia specifico della voce. È possibile esprimere emozioni come allegra, empatia e calma. È anche possibile ottimizzare la voce per diversi scenari, ad esempio servizio clienti, newscast e assistente vocale. Se il valore di stile è mancante o non valido, l'intero mstts:express-as elemento viene ignorato e il servizio usa il riconoscimento vocale neutro predefinito. Per gli stili vocali neurali personalizzati, vedere l'esempio di stile di voce neurale personalizzato. Richiesto
styledegree Intensità dello stile parlante. È possibile specificare uno stile più forte o più morbido per rendere il parlato più espressivo o sottomesso. L'intervallo di valori accettati è: 0.01 da 2 includere. Il valore predefinito è 1, ovvero l'intensità predefinita dello stile. L'unità minima è 0.01, che comporta una leggera tendenza per lo stile di destinazione. Un valore di 2 restituisce un raddoppio dell'intensità di stile predefinita. Se il grado di stile manca o non è supportato per la voce, questo attributo viene ignorato. Facoltativo
role Il ruolo di parlante. La voce può imitare un'età e un sesso diversi, ma il nome della voce non è cambiato. Ad esempio, una voce maschile può alzare il passo e modificare l'intonazione per imitare una voce femminile, ma il nome della voce non viene modificato. Se il ruolo è mancante o non è supportato per la voce, questo attributo viene ignorato. Facoltativo

La tabella seguente descrive ogni attributo supportato style :

Style Descrizione
style="advertisement_upbeat" Esprime un tono eccitato e ad alta energia per promuovere un prodotto o un servizio.
style="affectionate" Esprime un tono caldo e affettuoso, con un tono più alto e un'energia vocale. L'altoparlante è in uno stato di attirare l'attenzione del listener. La personalità dell'altoparlante è spesso endearing in natura.
style="angry" Esprime un tono arrabbiato e annoiato.
style="assistant" Esprime un tono caldo e rilassato per assistenti digitali.
style="calm" Esprime un atteggiamento fresco, raccolto e composto quando si parla. Tono, inclinazione e prosodia sono più uniformi rispetto ad altri tipi di parlato.
style="chat" Esprime un tono informale e rilassato.
style="cheerful" Esprime un tono positivo e felice.
style="customerservice" Esprime un tono amichevole e utile per il supporto clienti.
style="depressed" Esprime un tono malinconico e depondente con tono basso passo ed energia.
style="disgruntled" Esprime un tono sdegnoso e lamentante. Il discorso di questa emozione mostra dispiacitura e disprezzo.
style="documentary-narration" Racconta documentari in uno stile rilassato, interessato e informativo adatto a doppiare documentari, commenti esperti e contenuti simili.
style="embarrassed" Esprime un tono incerto e esitante quando l'altoparlante si sente a disagio.
style="empathetic" Esprime un senso di cura e comprensione.
style="envious" Esprime un tono di ammirazione quando desideri qualcosa che qualcun altro ha.
style="excited" Esprime un tono di upbeat e di speranza. Sembra che accada qualcosa di grandioso e l'altoparlante è felice di esso.
style="fearful" Esprime un tono nervoso e spaventoso, con un passo più alto, un'energia vocale più alta e una velocità più rapida. L'altoparlante è in uno stato di tensione e disagio.
style="friendly" Esprime un tono piacevole, accogliente e caldo. Sembra sincero e attento.
style="gentle" Esprime un tono delicato, educato e piacevole, con un tono basso e un'energia vocale.
style="hopeful" Esprime un tono caldo e di aneto. Sembra che qualcosa di buono accadrà all'altoparlante.
style="lyrical" Esprime emozioni in modo melodico e sentimentale.
style="narration-professional" Esprime un tono professionale e obiettivo per la lettura del contenuto.
style="narration-relaxed" Esprime un tono rilassante e melodioso per la lettura del contenuto.
style="newscast" Esprime un tono formale e professionale per raccontare notizie.
style="newscast-casual" Esprime un tono versatile e casuale per il recapito generale delle notizie.
style="newscast-formal" Esprime un tono formale, sicuro e autorevole per il recapito delle notizie.
style="poetry-reading" Esprime un tono emotivo e ritmico durante la lettura di una poesia.
style="sad" Esprime un tono doloroso.
style="serious" Esprime un tono rigoroso e comandi. Altoparlante spesso suona più rigido e molto meno rilassato con cadenza ferma.
style="shouting" Esprime un tono che suona come se la voce sia distante o in un'altra posizione e facendo uno sforzo per essere chiaramente sentito.
style="sports_commentary" Esprime un tono rilassato e interessato per trasmettere un evento sportivo.
style="sports_commentary_excited" Esprime un tono intenso ed energico per trasmettere momenti emozionanti in un evento sportivo.
style="whispering" Esprime un tono morbido che sta cercando di rendere un suono tranquillo e delicato.
style="terrified" Esprime un tono spaventato, con un ritmo più veloce e una voce più scuote. Sembra che l'altoparlante sia in uno stato invece instabile e frenetico.
style="unfriendly" Esprime un tono freddo e indifferente.

La tabella seguente contiene descrizioni di ogni attributo supportato role :

Ruolo Descrizione
role="Girl" La voce imita una ragazza.
role="Boy" La voce imita un ragazzo.
role="YoungAdultFemale" La voce imita una giovane femmina adulta.
role="YoungAdultMale" La voce imita un giovane maschio adulto.
role="OlderAdultFemale" La voce imita una femmina adulta più anziana.
role="OlderAdultMale" La voce imita un maschio adulto più anziano.
role="SeniorFemale" La voce imita una donna senior.
role="SeniorMale" La voce imita un maschio senior.

esempi di mstts express-as

Per informazioni sui valori supportati per gli attributi dell'elemento mstts:express-as , vedere Usare stili e ruoli di pronuncia.

Esempio di stile e grado

Si usa l'elemento mstts:express-as per esprimere emozioni come allegra, empatia e calma. È anche possibile ottimizzare la voce per diversi scenari, ad esempio servizio clienti, newscast e assistente vocale.

Nell'esempio SSML seguente viene usato l'elemento <mstts:express-as> con un sad grado di stile .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>

Esempio di ruolo

Oltre a regolare gli stili di pronuncia e il grado di stile, è anche possibile modificare il role parametro in modo che la voce imita un'età e un sesso diversi. Ad esempio, una voce maschile può alzare il passo e cambiare l'intonazione per imitare una voce femminile, ma il nome della voce non viene modificato.

Questo frammento di codice SSML illustra come viene usato l'attributo role per modificare il ruolo per 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>

Esempio di stile di voce neurale personalizzato

È possibile eseguire il training della voce neurale personalizzata per parlare con alcuni stili predefiniti, ad cheerfulesempio , sade whispering. È anche possibile eseguire il training di una voce neurale personalizzata per parlare in uno stile personalizzato, come determinato dai dati di training. Per usare lo stile di voce neurale personalizzato in SSML, specificare il nome di stile immesso in precedenza in Speech Studio.

Questo esempio usa una voce personalizzata denominata my-custom-voice. La voce personalizzata parla con lo stile predefinito e il cheerful grado di stile di 2e quindi con uno stile personalizzato denominato my-custom-style e grado di stile di 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 profilo voce

Usare l'elemento mstts:ttsembedding per specificare la speakerProfileId proprietà per una voce personale. La voce personale è una voce neurale personalizzata addestrata sulla propria voce o sulla voce del cliente. Per altre informazioni, vedere Creare una voce personale.

L'esempio SSML seguente usa l'elemento <mstts:ttsembedding> con un nome vocale e un ID profilo voce.

<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> 

Regolare le lingue parlanti

Per impostazione predefinita, le voci multilingue possono modificare automaticamente la lingua del testo di input e parlare nella lingua delle impostazioni locali predefinite del testo di input senza usare SSML. Facoltativamente, è possibile utilizzare l'elemento <lang xml:lang> per regolare la lingua parlante per queste voci in modo da impostare l'accento preferito, ad en-GB esempio per l'inglese britannico. È possibile regolare la lingua parlante sia a livello di frase che a livello di parola. Per informazioni sulle lingue supportate per la voce multilingue, vedere Voci multilingue con l'elemento lang per una tabella che mostra la <lang> sintassi e le definizioni degli attributi.

Nella tabella seguente viene descritto l'utilizzo degli <lang xml:lang> attributi dell'elemento:

Attributo Descrizione Obbligatorio o facoltativo
xml:lang Linguaggio che si vuole che la voce neurale parli. Necessario per regolare la lingua parlante per la voce neurale. Se si usa lang xml:lang, è necessario specificare le impostazioni locali.

Nota

L'elemento <lang xml:lang> non è compatibile con gli prosody elementi e break . Non è possibile regolare pause e prosodia come passo, contorno, frequenza o volume in questo elemento.

Voci multilingue con l'elemento lang

Usare la sezione voci multilingue per determinare quali lingue parlanti il servizio Voce supporta per ogni voce neurale, come illustrato nella tabella di esempio seguente. Se la voce non parla la lingua del testo di input, il servizio Voce non restituisce l'audio sintetizzato.

Voce Numero di lingua supportato Lingue supportate Impostazioni locali predefinite rilevate automaticamente per ogni lingua
en-US-AndrewMultilingualNeural1 (maschio)
en-US-AvaMultilingualNeural1 (femmina)
en-US-BrianMultilingualNeural1 (maschio)
en-US-EmmaMultilingualNeural1 (femmina)
77 Afrikaans, Albanese, Amharico, Arabo, Armeno, Azerbaigian, Bahasa Indonesiano, Bangla, Basco, Bengali, Bosniaco, Bulgaro, Burmese, catalano, cinese Cantonse, cinese mandarino, cinese taiwanese, croato, ceco, danese, olandese, inglese, estone, filippino, finlandese, francese, gallego, georgiano, tedesco, greco, ebraico, hindi, ungherese, islandese, irlandese, italiano, giapponese, Javanese, Kannada, Kazakh, Khmer, coreano, Lao, lettone, lituano, macedone, malese, malayalam, maltese, mongolo, nepalese, nepalese, Norvegese Bokmål, Pashto, Persiano, Polacco, Portoghese, Romeno, Russo, Serbo, Sinhala, Slovacco, Sloveno, Somali, Spagnolo, Sundanese, Swahili, Svedese, Thai, Thai, Turco, Ucraino, Urdu, Uzbek, Vietnamese, Welsh, Zulu af-ZAkk-KZ, am-ETar-EGaz-AZbg-BGbn-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-GEkm-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-KEte-IN, ta-IN, , th-TH, tr-TRuk-UA, zh-CNuz-UZur-PKvi-VNzh-HKzh-TW. zu-ZA

1 Queste sono voci multilingue neurali in Riconoscimento vocale di Intelligenza artificiale di Azure. Tutte le voci multilingue possono parlare nella lingua nelle impostazioni locali predefinite del testo di input senza usare SSML. Tuttavia, è comunque possibile usare l'elemento per regolare l'accento <lang xml:lang> parlante di ogni lingua per impostare l'accento preferito, ad esempio l'accento britannico (en-GB) per l'inglese. Le impostazioni locali primarie per ogni voce sono indicate dal prefisso nel nome, ad esempio la voce en-US-AndrewMultilingualNeural, le impostazioni locali primarie sono en-US. Controllare l'elenco completo delle impostazioni locali supportate tramite SSML.

Nota

Le voci multilingue non supportano completamente determinati elementi SSML, ad esempio break, silenceemphasis, e sub.

Esempi lang

Per informazioni sui valori supportati per gli attributi dell'elemento, vedere Regolare la lang lingua parlante.

È necessario specificare en-US come lingua predefinita all'interno dell'elemento speak , indipendentemente dal fatto che la lingua venga modificata altrove. In questo esempio, la lingua primaria per en-US-AvaMultilingualNeural è en-US.

Questo frammento di codice SSML mostra come usare <lang xml:lang> per parlare de-DE con la en-US-AvaMultilingualNeural voce neurale.

<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>

All'interno dell'elemento è possibile specificare più lingue, tra cui en-US per l'output speak di sintesi vocale. Per ogni lingua modificata, il testo deve corrispondere alla lingua e essere racchiuso in un voice elemento. Questo frammento di codice SSML illustra come usare <lang xml:lang> per modificare le lingue parlanti in 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>

Regolare la prosodia

È possibile usare l'elemento prosody per specificare le modifiche apportate a passo, contorno, intervallo, frequenza e volume per l'output di sintesi vocale. L'elemento prosody può contenere testo e gli elementi seguenti: audio, break, phonemep, prosody, say-as, sub, e s.

Poiché i valori degli attributi prosodici possono variare in un'ampia gamma, il riconoscimento vocale interpreta i valori assegnati come suggerimento dei valori prosodici effettivi della voce selezionata. I limiti di sintesi vocale o sostituiscono i valori non supportati. Esempi di valori non supportati sono un passo di 1 MHz o un volume di 120.

Nella tabella seguente viene descritto l'utilizzo degli prosody attributi dell'elemento:

Attributo Descrizione Obbligatorio o facoltativo
contour Il contorno rappresenta le variazioni di inclinazione. Queste modifiche vengono rappresentate come una matrice di destinazioni in posizioni temporali specificate nell'output vocale. I set di coppie di parametri definiscono ogni destinazione. Ad esempio:

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

Il primo valore in ogni set di parametri specifica la posizione della modifica del passo come percentuale della durata del testo. Il secondo valore specifica l'importo da aumentare o abbassare il passo usando un valore relativo o un valore di enumerazione per pitch (vedere pitch).
Facoltativo
pitch Indica il passo di base per il testo. Le modifiche al passo possono essere applicate a livello di frase. Le modifiche al passo devono essere entro 0,5 a 1,5 volte l'audio originale. È possibile esprimere il passo come:
  • Valore assoluto: espresso come numero seguito da "Hz" (Hz). Ad esempio: <prosody pitch="600Hz">some text</prosody>.
  • Valore relativo:
    • Come numero relativo: espresso come numero preceduto da "+" o "-" e seguito da "Hz" o "st" che specifica un importo per modificare il passo. Ad esempio, <prosody pitch="+80Hz">some text</prosody> o <prosody pitch="-2st">some text</prosody>. "st" indica che l'unità di modifica è semitono, che è metà di un tono (mezzo passo) sulla scala diatonica standard.
    • Come percentuale: espresso come numero preceduto da "+" (facoltativamente) o "-" e seguito da "%", che indica la modifica relativa. Ad esempio, <prosody pitch="50%">some text</prosody> o <prosody pitch="-50%">some text</prosody>.
  • Valore costante:
    • x-low
    • low
    • medium
    • high
    • x-high
    • impostazione predefinita
Facoltativo
range Valore che rappresenta l'intervallo di inclinazione per il testo. È possibile esprimere range usando gli stessi valori assoluti, valori relativi o valori di enumerazione usati per descrivere pitch. Facoltativo
rate Indica la frequenza di pronuncia del testo. La velocità di pronuncia può essere applicata a livello di parola o frase. Le modifiche della frequenza devono essere entro 0.5 le 2 ore in cui l'audio originale. È possibile esprimere rate come:
  • Valore relativo:
    • Come numero relativo: espresso come numero che funge da moltiplicatore del valore predefinito. Ad esempio, un valore di 1 non comporta alcuna modifica nella frequenza originale. Un valore di 0.5 restituisce una metà della frequenza originale. Un valore di 2 restituisce il doppio della frequenza originale.
    • Come percentuale: espresso come numero preceduto da "+" (facoltativamente) o "-" e seguito da "%", che indica la modifica relativa. Ad esempio, <prosody rate="50%">some text</prosody> o <prosody rate="-50%">some text</prosody>.
  • Valore costante:
    • x-slow
    • lento
    • medium
    • veloce
    • x-fast
    • impostazione predefinita
Facoltativo
volume Indica il livello di volume della voce parlante. Le modifiche al volume possono essere applicate a livello di frase. È possibile esprimere il volume come:
  • Valore assoluto: espresso come numero nell'intervallo da 0.0 a , dal più silenzioso al più forte, ad esempio 75100.0. Il valore predefinito è 100.0.
  • Valore relativo:
    • Come numero relativo: espresso come numero preceduto da "+" o "-" che specifica un importo per modificare il volume. Gli esempi sono +10 o -5.5.
    • Come percentuale: espresso come numero preceduto da "+" (facoltativamente) o "-" e seguito da "%", che indica la modifica relativa. Ad esempio, <prosody volume="50%">some text</prosody> o <prosody volume="+3%">some text</prosody>.
  • Valore costante:
    • Silenzioso
    • x-soft
    • soft
    • medium
    • Forte
    • x-loud
    • impostazione predefinita
Facoltativo

Esempi di prosodia

Per informazioni sui valori supportati per gli attributi dell'elemento prosody , vedere Regolare la prosodia.

Esempio di frequenza di modifica della voce

Questo frammento di codice SSML illustra il modo in cui l'attributo rate viene usato per modificare la frequenza di pronuncia su 30% maggiore della frequenza predefinita.

<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>

Esempio di modifica del volume

Questo frammento di codice SSML illustra come viene usato l'attributo volume per modificare il volume impostando un volume maggiore del 20% rispetto al volume predefinito.

<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>

Esempio di modifica del passo

Questo frammento di codice SSML illustra come viene usato l'attributo pitch in modo che la voce parli in un passo elevato.

<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>

Esempio di modifica del contorno di inclinazione

Questo frammento di codice SSML illustra come viene usato l'attributo contour per modificare il 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>

Regolare l'enfasi

È possibile utilizzare l'elemento facoltativo emphasis per aggiungere o rimuovere lo stress a livello di parola per il testo. Questo elemento può contenere solo testo e gli elementi seguenti: audio, break, emphasis, langphoneme, prosodysay-as, , sub, , e voice.

Nota

L'ottimizzazione dell'enfasi a livello di parola è disponibile solo per queste voci neurali: en-US-GuyNeural, en-US-DavisNeurale en-US-JaneNeural.

Per le parole che hanno un basso passo e una durata breve, il passo potrebbe non essere elevato abbastanza da essere notato.

La tabella seguente descrive gli emphasis attributi dell'elemento:

Attributo Descrizione Obbligatorio o facoltativo
level Indica la forza dell'enfasi da applicare:
  • reduced
  • none
  • moderate
  • strong
.
Quando l'attributo level non viene specificato, il livello predefinito è moderate. Per informazioni dettagliate su ogni attributo, vedere Elemento di enfasi.
Facoltativo

Esempi di enfasi

Per informazioni sui valori supportati per gli attributi dell'elemento, vedere Modificare l'enfasiemphasis.

Questo frammento di codice SSML illustra come usare l'elemento emphasis per aggiungere un'enfasi di livello moderato per la parola "riunioni".

<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>

Aggiungere audio registrato

L'elemento audio è facoltativo. È possibile usarlo per inserire audio prerecordato in un documento SSML. Il corpo dell'elemento audio può contenere testo normale o markup SSML parlato se il file audio non è disponibile o non riproducibile. L'elemento audio può contenere anche testo e gli elementi seguenti: audio, break, p, phonemes, prosody, say-as, e sub.

Qualsiasi audio incluso nel documento SSML deve soddisfare questi requisiti:

  • Il file audio deve essere valido *.mp3, *.wav, *.opus, *.ogg, *.flac o *.wma file.
  • Il tempo totale combinato per tutti i file di testo e audio in una singola risposta non può superare i 600 secondi.
  • L'audio non deve contenere informazioni specifiche del cliente o altre informazioni riservate.

Nota

L'elemento audio non è supportato dall'API Audio lungo. Per la sintesi vocale in formato lungo, usare invece l'API di sintesi batch (anteprima).

Nella tabella seguente viene descritto l'utilizzo degli audio attributi dell'elemento:

Attributo Descrizione Obbligatorio o facoltativo
src Percorso URI del file audio. L'audio deve essere ospitato in un endpoint HTTPS accessibile da Internet. HTTPS è obbligatorio. Il dominio che ospita il file deve presentare un certificato TLS/SSL valido e attendibile. È consigliabile inserire il file audio in BLOB Archiviazione nella stessa area di Azure del testo all'endpoint voce per ridurre al minimo la latenza. Richiesto

Esempi audio

Per informazioni sui valori supportati per gli attributi dell'elemento audio , vedere Aggiungere audio registrato.

Questo frammento di codice SSML illustra come usare l'attributo src per inserire audio da due file .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>

Regolare la durata audio

Usare l'elemento mstts:audioduration per impostare la durata dell'audio di output. Usare questo elemento per sincronizzare l'intervallo di completamento dell'output audio. La durata audio può essere ridotta o aumentata tra 0.5 e 2 volte la frequenza dell'audio originale. L'audio originale è l'audio senza altre impostazioni di frequenza. La velocità di pronuncia viene rallentata o ridotta di conseguenza in base al valore impostato.

L'impostazione durata audio si applica a tutto il testo di input all'interno dell'elemento che voice lo racchiude. Per reimpostare o modificare di nuovo l'impostazione della durata audio, devi usare un nuovo voice elemento con la stessa voce o una voce diversa.

Nella tabella seguente viene descritto l'utilizzo degli mstts:audioduration attributi dell'elemento:

Attributo Descrizione Obbligatorio o facoltativo
value Durata richiesta dell'audio di output in secondi, ad esempio 2s, o millisecondi, ad esempio 2000ms.

Questo valore deve essere entro 0.5 un intervallo di 2 tempo per l'audio originale senza altre impostazioni di frequenza. Ad esempio, se la durata richiesta dell'audio è 30s, l'audio originale deve essere compreso tra 15 e 60 secondi. Se si imposta un valore al di fuori di questi limiti, la durata viene impostata in base al rispettivo multiplo minimo o massimo.

Data la durata dell'audio di output richiesto, il servizio Voce regola di conseguenza la frequenza di pronuncia. Usare l'API elenco voci e controllare l'attributo WordsPerMinute per scoprire la frequenza di pronuncia della voce neurale in uso. È possibile dividere il numero di parole nel testo di input in base al valore dell'attributo WordsPerMinute per ottenere la durata audio di output originale approssimativa. L'audio di output suona più naturale quando imposti la durata audio più vicina alla durata stimata.
Richiesto

Esempi di durata audio mstts

Per informazioni sui valori supportati per gli attributi dell'elemento mstts:audioduration , vedi Regolare la durata audio.

In questo esempio, l'audio originale è di circa 15 secondi. L'elemento mstts:audioduration viene usato per impostare la durata audio su 20 secondi o 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>

Aggiungere l'audio in background

Puoi usare l'elemento mstts:backgroundaudio per aggiungere audio in background ai documenti SSML o combinare un file audio con testo vocale. Con mstts:backgroundaudio, è possibile eseguire il ciclo di un file audio in background, dissolversi all'inizio del testo per la sintesi vocale e dissolversi alla fine del testo per la sintesi vocale.

Se l'audio in background fornito è più breve del testo per la sintesi vocale o la dissolvenza, viene eseguito un ciclo. Se è più lungo del testo per la sintesi vocale, si arresta al termine della dissolvenza.

Per ogni documento SSML è consentito un solo file audio in background. È possibile intersperse audio tag all'interno dell'elemento voice per aggiungere altro audio al documento SSML.

Nota

L'elemento mstts:backgroundaudio deve essere inserito davanti a tutti gli voice elementi. Se specificato, deve essere il primo elemento figlio dell'elemento speak .

L'elemento mstts:backgroundaudio non è supportato dall'API Audio lungo. Per la sintesi vocale in formato lungo, usare invece l'API di sintesi batch (anteprima).

Nella tabella seguente viene descritto l'utilizzo degli mstts:backgroundaudio attributi dell'elemento:

Attributo Descrizione Obbligatorio o facoltativo
src Percorso URI del file audio in background. Richiesto
volume Volume del file audio in background. Valori accettati: 0 inclusi 100 . Il valore predefinito è 1. Facoltativo
fadein Durata della dissolvenza audio in background in millisecondi. Il valore predefinito è 0, che equivale a nessuna dissolvenza. Valori accettati: 0 inclusi 10000 . Facoltativo
fadeout Durata del dissolvenza dell'audio in background in millisecondi. Il valore predefinito è 0, che equivale a non dissolvenza. Valori accettati: 0 inclusi 10000 . Facoltativo

Esempi di backgroundaudio mstss

Per informazioni sui valori supportati per gli attributi dell'elemento mstts:backgroundaudi , vedere Aggiungere audio in background.

<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>

Passaggi successivi