Menyesuaikan suara dan suara dengan SSML

Anda dapat menggunakan Speech Synthesis Markup Language (SSML) untuk menentukan teks ke suara ucapan, bahasa, nama, gaya, dan peran untuk output ucapan Anda. Anda juga dapat menggunakan beberapa suara dalam satu dokumen SSML, dan menyesuaikan penekanan, tingkat bicara, nada, dan volume. Selain itu, SSML menampilkan kemampuan untuk menyisipkan audio yang telah direkam sebelumnya, seperti efek suara atau catatan musik.

Artikel ini memperlihatkan kepada Anda cara menggunakan elemen SSML untuk menentukan suara dan suara. Untuk informasi selengkapnya tentang sintaks SSML, lihat Struktur dan peristiwa dokumen SSML.

Menggunakan elemen suara

Setidaknya satu voice elemen harus ditentukan dalam setiap elemen berbicara SSML. Elemen ini menentukan suara yang digunakan untuk teks ke ucapan.

Anda dapat menyertakan beberapa voice elemen dalam satu dokumen SSML. Setiap voice elemen dapat menentukan suara yang berbeda. Anda juga dapat menggunakan suara yang sama beberapa kali dengan pengaturan yang berbeda, seperti saat Anda mengubah durasi keheningan antar kalimat.

Tabel berikut ini menjelaskan penggunaan voice atribut elemen:

Atribut Deskripsi Diperlukan atau opsional
name Suara yang digunakan untuk output teks ke ucapan. Untuk daftar lengkap suara bawaan yang didukung, lihat Dukungan bahasa. Diperlukan
effect Prosesor efek audio yang digunakan untuk mengoptimalkan kualitas output ucapan yang disintesis untuk skenario tertentu pada perangkat.

Untuk beberapa skenario di lingkungan produksi, pengalaman auditori mungkin terdegradasi karena distorsi pemutaran pada perangkat tertentu. Misalnya, ucapan yang disintesis dari speaker mobil mungkin terdengar kusam dan muffled karena faktor lingkungan seperti respons speaker, reverberasi ruangan, dan kebisingan latar belakang. Penumpang mungkin harus menayangkan volume untuk mendengar lebih jelas. Untuk menghindari operasi manual dalam skenario seperti itu, prosesor efek audio dapat membuat suara lebih jelas dengan mengkompensasi distorsi pemutaran.

Nilai berikut ini didukung:
  • eq_car – Optimalkan pengalaman pendengaran saat memberikan ucapan dengan keakuratan tinggi di mobil, bus, dan mobil tertutup lainnya.
  • eq_telecomhp8k – Optimalkan pengalaman pendengaran untuk ucapan sempit dalam skenario telekomunikasi atau telepon. Anda harus menggunakan laju pengambilan sampel 8 kHz. Jika laju sampel tidak 8 kHz, kualitas pendinginan ucapan output tidak dioptimalkan.

Jika nilai hilang atau tidak valid, atribut ini diabaikan dan tidak ada efek yang diterapkan.
Opsional

Contoh suara

Untuk informasi tentang nilai yang didukung untuk atribut voice elemen, lihat Menggunakan elemen suara.

Contoh suara tunggal

Contoh ini menggunakan en-US-AvaMultilingualNeuralsuara.

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

Contoh beberapa suara

speak Dalam elemen , Anda dapat menentukan beberapa suara untuk output teks ke ucapan. Suara-suara ini bisa dalam bahasa yang berbeda. Untuk setiap suara, teks harus dibungkus dalam voice elemen.

Contoh ini bergantian en-US-AvaMultilingualNeural antara suara dan en-US-AndrewMultilingualNeural . Suara multibahasa neural dapat berbicara bahasa yang berbeda berdasarkan teks 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>

Contoh suara neural kustom

Untuk menggunakan suara neural kustom Anda, tentukan nama model sebagai nama suara di SSML.

Contoh ini menggunakan suara kustom bernama 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>

Contoh efek audio

Anda menggunakan effect atribut untuk mengoptimalkan pengalaman auditori untuk skenario seperti mobil dan telekomunikasi. Contoh SSML berikut menggunakan effect atribut dengan konfigurasi dalam skenario mobil.

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

Menggunakan gaya dan peran berbicara

Secara default, suara neural memiliki gaya berbicara netral. Anda dapat menyesuaikan gaya berbicara, tingkat gaya, dan peran pada tingkat kalimat.

Catatan

Layanan Ucapan mendukung gaya, tingkat gaya, dan peran untuk subset suara neural seperti yang dijelaskan dalam gaya suara dan dokumentasi peran . Untuk menentukan gaya dan peran yang didukung untuk setiap suara, Anda juga dapat menggunakan API suara daftar dan aplikasi web pembuatan konten audio.

Tabel berikut ini menjelaskan penggunaan mstts:express-as atribut elemen:

Atribut Deskripsi Diperlukan atau opsional
style Gaya berbicara khusus suara. Anda dapat mengekspresikan emosi seperti keceriaan, empati, dan ketenangan. Anda juga dapat mengoptimalkan suara untuk berbagai skenario seperti layanan pelanggan, siaran berita, dan asisten suara. Jika nilai gaya hilang atau tidak valid, seluruh mstts:express-as elemen diabaikan dan layanan menggunakan ucapan netral default. Untuk gaya suara neural kustom, lihat contoh gaya suara neural kustom. Diperlukan
styledegree Intensitas gaya berbicara. Anda dapat menentukan gaya yang lebih kuat atau lebih lembut untuk membuat ucapan lebih ekspresif atau tertunda. Rentang nilai yang diterima adalah: 0.01 ke 2 inklusif. Nilai defaultnya adalah 1, yang berarti intensitas gaya yang telah ditentukan sebelumnya. Unit minimum adalah 0.01, yang menghasilkan sedikit kecenderungan untuk gaya target. Nilai 2 menghasilkan penggambatan intensitas gaya default. Jika tingkat gaya hilang atau tidak didukung untuk suara Anda, atribut ini diabaikan. Opsional
role Peran berbicara. Suara dapat meniru usia dan jenis kelamin yang berbeda, tetapi nama suara tidak diubah. Misalnya, suara pria dapat menaikkan nada dan mengubah intonasi untuk meniru suara perempuan, tetapi nama suara tidak diubah. Jika peran hilang atau tidak didukung untuk suara Anda, atribut ini diabaikan. Opsional

Tabel berikut ini menjelaskan setiap atribut yang didukung style :

Gaya Deskripsi
style="advertisement_upbeat" Mengekspresikan nada bersemangat dan berenergi tinggi untuk mempromosikan produk atau layanan.
style="affectionate" Mengekspresikan nada hangat dan penuh kasih sayang, dengan nada yang lebih tinggi dan energi vokal. Pembicara dalam keadaan menarik perhatian pendengar. "Kepribadian" pembicara sering kali memiliki karakteristik menawan.
style="angry" Mengekspresikan nada marah dan kesal.
style="assistant" Mengekspresikan nada bernuansa hangat dan santai untuk asisten digital.
style="calm" Mengekspresikan sikap yang keren, dikumpulkan, dan disusun saat berbicara. Nada, intonasi, prosodi lebih seragam dibandingkan dengan jenis ucapan lainnya.
style="chat" Mengekspresikan nada kasual dan santai.
style="cheerful" Mengekspresikan nada positif dan bahagia.
style="customerservice" Mengekspresikan nada yang ramah dan bermanfaat untuk dukungan pelanggan.
style="depressed" Mengekspresikan nada melankolis dan lemah lembut dengan nada dan energi yang lebih rendah.
style="disgruntled" Mengekspresikan nada yang meremehkan dan mengeluh. Ucapan emosi ini menampilkan ketidaksenangan dan penghinaan.
style="documentary-narration" Narasi dokumenter dalam gaya yang santai, tertarik, dan informatif yang cocok untuk menjulurkan dokumenter, komentar ahli, dan konten serupa.
style="embarrassed" Mengekspresikan nada yang tidak yakin dan ragu-ragu ketika pembicara merasa tidak nyaman.
style="empathetic" Mengekspresikan rasa peduli dan pengertian.
style="envious" Mengekspresikan kekaguman ketika Anda menginginkan sesuatu yang dimiliki orang lain.
style="excited" Mengekspresikan nada yang bersemangat dan penuh harapan. Kedengarannya seperti sesuatu yang hebat sedang terjadi dan pembicara senang tentang hal itu.
style="fearful" Mengekspresikan nada takut dan gugup, dengan nada yang lebih tinggi, energi vokal yang lebih tinggi, dan laju yang lebih cepat. Pembicara dalam keadaan tegang dan gelisah.
style="friendly" Mengekspresikan nada yang menyenangkan, mengundang, dan hangat. Terdengar tulus dan penuh kasih sayang.
style="gentle" Mengekspresikan nada lemah lembut, sopan, dan menyenangkan, dengan intonasi dan energi vokal yang lebih rendah.
style="hopeful" Mengekspresikan nada yang hangat dan penuh kerinduan. Kedengarannya sesuatu yang baik akan terjadi kepada pembicara.
style="lyrical" Mengekspresikan emosi dengan cara bernada dan halus.
style="narration-professional" Mengekspresikan nada profesional dan objektif untuk pembacaan konten.
style="narration-relaxed" Mengekspresikan nada yang menenangkan dan merdu untuk pembacaan konten.
style="newscast" Mengekspresikan nada formal dan profesional untuk membacakan berita.
style="newscast-casual" Mengekspresikan nada serbaguna dan santai untuk penyampaian berita umum.
style="newscast-formal" Mengekspresikan nada formal, percaya diri, dan otoritatif untuk penyampaian berita.
style="poetry-reading" Mengekspresikan nada emosional dan irama saat membaca puisi.
style="sad" Mengekspresikan nada sedih.
style="serious" Mengekspresikan nada tegas dan memerintah. Pembicara sering terdengar lebih kaku dan lebih santai dengan irama yang tegas.
style="shouting" Mengekspresikan nada yang terdengar seolah-olah suaranya jauh atau di lokasi lain dan berusaha untuk didengar dengan jelas.
style="sports_commentary" Mengekspresikan nada santai dan tertarik untuk menyiarkan acara olahraga.
style="sports_commentary_excited" Mengekspresikan nada intensif dan energik untuk menyiarkan momen seru dalam acara olahraga.
style="whispering" Mengekspresikan nada lembut yang mencoba membuat suara yang tenang dan lembut.
style="terrified" Mengekspresikan nada takut, dengan kecepatan yang lebih cepat dan suara yang lebih goyah. Kedengarannya pembicara dalam status tidak stabil dan panik.
style="unfriendly" Mengekspresikan nada dingin dan acuh tak acuh.

Tabel berikut ini memiliki deskripsi setiap atribut yang didukung role :

Peran Deskripsi
role="Girl" Suara itu meniru seorang gadis.
role="Boy" Suara itu meniru seorang anak laki-laki.
role="YoungAdultFemale" Suara itu meniru seorang wanita dewasa muda.
role="YoungAdultMale" Suara itu meniru laki-laki dewasa muda.
role="OlderAdultFemale" Suara itu meniru seorang wanita dewasa yang lebih tua.
role="OlderAdultMale" Suara itu meniru laki-laki dewasa yang lebih tua.
role="SeniorFemale" Suara itu meniru seorang wanita senior.
role="SeniorMale" Suara itu meniru laki-laki senior.

contoh mstts express-as

Untuk informasi tentang nilai yang didukung untuk atribut mstts:express-as elemen, lihat Menggunakan gaya dan peran berbicara.

Contoh gaya dan derajat

Anda menggunakan elemen mstts:express-as untuk mengekspresikan emosi seperti keceriaan, empati, dan ketenangan. Anda juga dapat mengoptimalkan suara untuk berbagai skenario seperti layanan pelanggan, siaran berita, dan asisten suara.

Contoh SSML berikut menggunakan <mstts:express-as> elemen dengan sad tingkat 2gaya .

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

Contoh peran

Selain menyesuaikan gaya berbicara dan tingkat gaya, Anda juga dapat menyesuaikan parameter role sehingga suara akan meniru usia dan jenis kelamin yang berbeda. Misalnya, suara pria dapat menaikkan nada dan mengubah intonasi untuk meniru suara perempuan, tetapi nama suara tidak diubah.

Cuplikan SSML ini menggambarkan cara atribut role digunakan untuk mengubah permainan peran untuk 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>

Contoh gaya suara neural kustom

Anda dapat melatih suara saraf kustom Anda untuk berbicara dengan beberapa gaya prasetel seperti cheerful, , saddan whispering. Anda juga dapat melatih suara saraf kustom untuk berbicara dengan gaya kustom seperti yang ditentukan oleh data pelatihan Anda. Untuk menggunakan gaya suara neural kustom Anda di SSML, tentukan nama gaya yang sebelumnya Anda masukkan di Speech Studio.

Contoh ini menggunakan suara kustom bernama my-custom-voice. Suara kustom berbicara dengan cheerful gaya prasetel dan tingkat 2gaya , lalu dengan gaya kustom bernama my-custom-style dan style degree of 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 profil pembicara

Anda menggunakan mstts:ttsembedding elemen untuk menentukan speakerProfileId properti untuk suara pribadi. Suara pribadi adalah suara saraf kustom yang dilatih dengan suara Anda sendiri atau suara pelanggan Anda. Untuk informasi selengkapnya, lihat membuat suara pribadi.

Contoh SSML berikut menggunakan <mstts:ttsembedding> elemen dengan nama suara dan ID profil pembicara.

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

Menyesuaikan bahasa yang berbicara

Secara default, suara multibahasa dapat secara otomatis memetakan bahasa teks input dan berbicara dalam bahasa lokal default teks input tanpa menggunakan SSML. Secara opsional, Anda dapat menggunakan <lang xml:lang> elemen untuk menyesuaikan bahasa berbicara untuk suara-suara ini untuk mengatur aksen pilihan seperti en-GB untuk bahasa Inggris Inggris Inggris. Anda dapat menyesuaikan bahasa bicara di tingkat kalimat dan tingkat kata. Untuk informasi tentang bahasa yang didukung untuk suara multibahasa, lihat Suara multibahasa dengan elemen bahasa untuk tabel yang memperlihatkan <lang> sintaks dan definisi atribut.

Tabel berikut ini menjelaskan penggunaan <lang xml:lang> atribut elemen:

Atribut Deskripsi Diperlukan atau opsional
xml:lang Bahasa yang Anda inginkan untuk berbicara dengan suara saraf. Diperlukan untuk menyesuaikan bahasa berbicara untuk suara neural. Jika menggunakan lang xml:lang, lokal tersebut harus disediakan.

Catatan

Elemen <lang xml:lang> tidak kompatibel dengan elemen prosody dan break. Anda tidak dapat menyesuaikan jeda dan prosodi seperti intonasi, kontur, tingkat, atau volume dalam elemen ini.

Suara multibahasa dengan elemen bahasa

Gunakan bagian suara multibahasa untuk menentukan bahasa bicara mana yang didukung layanan Ucapan untuk setiap suara neural, seperti yang ditunjukkan dalam tabel contoh berikut. Jika suara tidak berbicara bahasa teks input, layanan Ucapan tidak menghasilkan audio yang disintesis.

Suara Nomor bahasa yang didukung Bahasa yang didukung Lokal default yang terdeteksi otomatis untuk setiap bahasa
en-US-AndrewMultilingualNeural1 (Pria)
en-US-AvaMultilingualNeural1 (Perempuan)
en-US-BrianMultilingualNeural1 (Pria)
en-US-EmmaMultilingualNeural1 (Perempuan)
77 Bahasa Afrikaans, Bahasa Albania, Aharia, Arab, Armenia, Azerbaijan, Bahasa Indonesia, Bangla, Basque, Bengali, Bosnia, Bulgaria, Burma, Katalan, Kanton Cina, Mandarin Mandarin, Mandarin Taiwan, Kroasia, Kroasia, Ceko, Denmark, Belanda, Inggris, Estonia, Filipino, Finlandia, Prancis, Galisia, Georgia, Jerman, Yunani, Ibrani, Hindi, Hongaria, Islandia, Irlandia, Italia, Jepang, Jawa, Kannada, Kazakh, Khmer, Korea, Laos, Latvia, Lithuania, Makedonia, Melayu, Malayalam, Malta, Mongolian, Nepali, Bokmål Norwegia, Pashto, Persia, Polandia, Portugis, Rumania, Rusia, Serbia, Sinhala, Slowakia, Slovenia, Somalia, Spanyol, Sunda, Swahili, Swedia, Tamil, Telugu, Thailand, Turki, Ukraina, Urdu, Uzbek, Vietnam, Welsh, Zulu af-ZA, , am-ET, ar-EG, az-AZ, bn-BDbg-BG, bn-INbs-BA, , ca-EScs-CZ, ko-KRel-GRen-USes-ESet-EEde-DEfa-IReu-ESfi-FIfil-PHfr-FRga-IEgl-ESda-DKhi-INhe-ILhr-HRhu-HUhy-AMid-IDis-IScy-GBja-JPit-ITmk-MKlv-LVml-INlt-LTlo-LAkn-INmn-MNkm-KHkk-KZka-GEms-MYjv-IDmt-MTso-SOpl-PLnl-NLne-NPnb-NOps-AFpt-BRro-ROsi-LKsk-SKsl-SImy-MMru-RU, sr-RSsq-ALsu-ID, , sv-SEsw-KE, , ta-IN, th-THte-IN, tr-TR, uk-UA, ur-PK, uz-UZ, vi-VN, zh-CN, zh-HK, zh-TW, . zu-ZA

1 Itu adalah suara multibahasa neural di Azure AI Speech. Semua suara multibahasa dapat berbicara dalam bahasa di lokal default teks input tanpa menggunakan SSML. Namun, Anda masih dapat menggunakan <lang xml:lang> elemen untuk menyesuaikan aksen berbicara dari setiap bahasa untuk mengatur aksen pilihan seperti aksen Inggris (en-GB) untuk bahasa Inggris. Lokal utama untuk setiap suara ditunjukkan oleh awalan dalam namanya, seperti suara en-US-AndrewMultilingualNeural, lokal utamanya adalah en-US. Periksa daftar lengkap lokal yang didukung melalui SSML.

Catatan

Suara multibahasa tidak sepenuhnya mendukung elemen SSML tertentu, seperti break, , emphasissilence, dan sub.

Contoh bahasa Lang

Untuk informasi tentang nilai yang didukung untuk atribut lang elemen, lihat Menyesuaikan bahasa bicara.

Anda harus menentukan en-US sebagai bahasa default dalam elemen speak, apakah bahasa disesuaikan di tempat lain atau tidak. Dalam contoh ini, bahasa utama untuk en-US-AvaMultilingualNeural adalah en-US.

Cuplikan SSML ini menunjukkan cara menggunakan <lang xml:lang> untuk berbicara de-DE dengan en-US-AvaMultilingualNeural suara saraf.

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

speak Dalam elemen , Anda dapat menentukan beberapa bahasa termasuk en-US untuk output teks ke ucapan. Untuk setiap bahasa yang disesuaikan, teks harus sesuai dengan bahasa tersebut dan dikemas dalam elemen voice. Cuplikan SSML ini menunjukkan cara menggunakan <lang xml:lang> untuk mengubah bahasa tutur menjadi es-MX, en-US, dan 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>

Sesuaikan prosody

Anda dapat menggunakan prosody elemen untuk menentukan perubahan pada pitch, kontur, rentang, laju, dan volume untuk output teks ke ucapan. prosody Elemen dapat berisi teks dan elemen berikut: audio, break, p, phoneme, prosody, say-as, sub, dan s.

Karena nilai atribut prosodik dapat bervariasi dalam berbagai rentang, pengenalan ucapan menafsirkan nilai yang ditetapkan sebagai saran tentang apa nilai prosodik aktual dari suara yang dipilih. Batas teks ke ucapan atau mengganti nilai yang tidak didukung. Contoh nilai yang tidak didukung adalah pitch 1 MHz atau volume 120.

Tabel berikut ini menjelaskan penggunaan prosody atribut elemen:

Atribut Deskripsi Diperlukan atau opsional
contour Kontur mewakili perubahan dalam pitch. Perubahan ini direpresentasikan sebagai array target pada posisi waktu tertentu dalam output ucapan. Set pasangan parameter menentukan setiap target. Misalnya:

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

Nilai pertama di setiap set parameter menentukan lokasi perubahan nada sebagai persentase dari durasi teks. Nilai kedua menentukan jumlah untuk menaikkan atau menurunkan intonasi dengan menggunakan nilai relatif atau nilai enumerasi untuk intonasi (lihat pitch).
Opsional
pitch Menunjukkan pitch garis dasar untuk teks. Perubahan intonasi dapat diterapkan pada tingkat kalimat. Perubahan pitch harus dalam 0,5 hingga 1,5 kali audio asli. Anda dapat mengekspresikan lapangan sebagai:
  • Nilai absolut: Dinyatakan sebagai angka yang diikuti dengan "Hz" (Hertz). Contohnya:<prosody pitch="600Hz">some text</prosody>
  • Nilai relatif:
    • Sebagai angka relatif: Dinyatakan sebagai angka yang diawali dengan "+" atau "-" dan diikuti oleh "Hz" atau "st" yang menentukan jumlah untuk mengubah pitch. Contohnya: <prosody pitch="+80Hz">some text</prosody> atau <prosody pitch="-2st">some text</prosody>. "St" menunjukkan unit perubahan adalah semitone, yang setengah dari nada (setengah langkah) pada skala diatonik standar.
    • Sebagai persentase: Dinyatakan sebagai angka yang diawali dengan "+" (opsional) atau "-" dan diikuti dengan "%", menunjukkan perubahan relatif. Contohnya: <prosody pitch="50%">some text</prosody> atau <prosody pitch="-50%">some text</prosody>.
  • Nilai konstanta:
    • x-rendah
    • rendah
    • sedang
    • tinggi
    • x-tinggi
    • default
Opsional
range Nilai yang menunjukkan rentang pitch untuk teks. Anda dapat mengekspresikan range dengan menggunakan nilai absolut, nilai relatif, atau nilai enumerasi yang sama yang digunakan untuk menjelaskan pitch. Opsional
rate Menunjukkan laju bicara teks. Kecepatan berbicara dapat diterapkan pada tingkat kata atau kalimat. Perubahan tarif harus dalam waktu 0.52 audio asli. Anda dapat mengekspresikan rate sebagai:
  • Nilai relatif:
    • Sebagai angka relatif: Dinyatakan sebagai angka yang bertindak sebagai pengali default. Misalnya, nilai 1 menghasilkan tidak ada perubahan dalam laju asli. Nilai 0.5 menghasilkan halving dari laju asli. Nilai 2 hasil dalam dua kali tingkat asli.
    • Sebagai persentase: Dinyatakan sebagai angka yang diawali dengan "+" (opsional) atau "-" dan diikuti dengan "%", menunjukkan perubahan relatif. Contohnya: <prosody rate="50%">some text</prosody> atau <prosody rate="-50%">some text</prosody>.
  • Nilai konstanta:
    • x-lambat
    • lambat
    • sedang
    • cepat
    • x-cepat
    • default
Opsional
volume Menunjukkan tingkat volume suara berbicara. Perubahan volume dapat diterapkan pada tingkat kalimat. Anda dapat mengekspresikan volume sebagai:
  • Nilai absolut: Dinyatakan sebagai angka dalam rentang 0.0 hingga 100.0, dari yang paling tenang hingga paling keras, seperti 75. Nilai defaultnya adalah 100.0.
  • Nilai relatif:
    • Sebagai angka relatif: Dinyatakan sebagai angka yang diawali dengan "+" atau "-" yang menentukan jumlah untuk mengubah volume. Contohnya adalah +10 atau -5.5.
    • Sebagai persentase: Dinyatakan sebagai angka yang diawali dengan "+" (opsional) atau "-" dan diikuti dengan "%", menunjukkan perubahan relatif. Contohnya: <prosody volume="50%">some text</prosody> atau <prosody volume="+3%">some text</prosody>.
  • Nilai konstanta:
    • diam
    • x-lembut
    • lembut
    • sedang
    • keras
    • x-keras
    • default
Opsional

Contoh prosody

Untuk informasi tentang nilai yang didukung untuk atribut prosody elemen, lihat Menyesuaikan prosody.

Ubah contoh laju bicara

Cuplikan SSML ini menggambarkan bagaimana rate atribut digunakan untuk mengubah tingkat berbicara menjadi 30% lebih besar dari tingkat default.

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

Mengubah contoh volume

Cuplikan SSML ini menggambarkan bagaimana volume atribut digunakan untuk mengubah volume menjadi 20% lebih besar dari volume default.

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

Ubah contoh pitch

Cuplikan SSML ini menggambarkan bagaimana pitch atribut digunakan sehingga suara berbicara dalam nada tinggi.

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

Ubah contoh kontur pitch

Cuplikan SSML ini menggambarkan bagaimana contour atribut digunakan untuk mengubah kontur.

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

Menyesuaikan penekanan

Anda dapat menggunakan elemen opsional emphasis untuk menambahkan atau menghapus stres tingkat kata untuk teks. Elemen ini hanya dapat berisi teks dan elemen berikut: audio, break, emphasis, lang, phoneme, prosody, say-as, sub, dan voice.

Catatan

Penyetelan penekanan tingkat kata hanya tersedia untuk suara neural ini: en-US-GuyNeural, en-US-DavisNeural, dan en-US-JaneNeural.

Untuk kata-kata yang memiliki nada rendah dan durasi pendek, nada mungkin tidak cukup dinaikkan untuk diperhatikan.

Tabel berikut ini menjelaskan emphasis atribut elemen:

Atribut Deskripsi Diperlukan atau opsional
level Menunjukkan kekuatan penekanan yang akan diterapkan:
  • reduced
  • none
  • moderate
  • strong
.
Ketika atribut level tidak ditentukan, tingkat defaultnya adalah moderate. Untuk detail tentang setiap atribut, lihat elemen penekanan.
Opsional

Contoh penekanan

Untuk informasi tentang nilai yang didukung untuk atribut emphasis elemen, lihat Menyesuaikan penekanan.

Cuplikan SSML ini menunjukkan bagaimana Anda dapat menggunakan emphasis elemen untuk menambahkan penekanan tingkat moderat untuk kata "rapat."

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

Menambahkan audio yang direkam

Elemen audio adalah opsional. Anda dapat menggunakannya untuk menyisipkan audio yang direkam sebelumnya ke dalam dokumen SSML. Isi audio elemen dapat berisi teks biasa atau markup SSML yang diucapkan jika file audio tidak tersedia atau tidak dapat diputar. Elemen audio dapat berisi teks dan elemen berikut: audio, break, p, s, phoneme, prosody, say-as, dan sub.

Audio apa pun yang disertakan dalam dokumen SSML harus memenuhi persyaratan berikut:

  • File audio harus valid *.mp3, *.wav, *.opus, *.ogg, *.flac, atau *.wma file.
  • Total waktu gabungan untuk semua file teks dan audio dalam satu respons tidak boleh melebihi 600 detik.
  • Audio tersebut tidak boleh berisi informasi spesifik pelanggan atau informasi sensitif lainnya.

Catatan

Elemen audio tidak didukung oleh API Long Audio. Untuk teks bentuk panjang ke ucapan, gunakan API sintesis batch (Pratinjau) sebagai gantinya.

Tabel berikut ini menjelaskan penggunaan audio atribut elemen:

Atribut Deskripsi Diperlukan atau opsional
src Lokasi URI file audio. Audio harus di-hosting di titik akhir HTTPS yang dapat diakses internet. HTTPS diperlukan. Domain yang menghosting file harus menunjukkan sertifikat TLS/SSL yang valid dan tepercaya. Anda harus memasukkan file audio ke Blob Storage di wilayah Azure yang sama dengan titik akhir teks ke ucapan untuk meminimalkan latensi. Diperlukan

Contoh audio

Untuk informasi tentang nilai yang didukung untuk atribut audio elemen, lihat Menambahkan audio yang direkam.

Cuplikan SSML ini menggambarkan cara menggunakan src atribut untuk menyisipkan audio dari dua 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>

Menyesuaikan durasi audio

mstts:audioduration Gunakan elemen untuk mengatur durasi audio output. Gunakan elemen ini untuk membantu menyinkronkan waktu penyelesaian output audio. Durasi audio dapat dikurangi atau ditingkatkan antara 0.5 ke 2 kali tingkat audio asli. Audio asli adalah audio tanpa pengaturan laju lainnya. Tingkat berbicara diperlambat atau diperlambat berdasarkan nilai yang ditetapkan.

Pengaturan durasi audio berlaku untuk semua teks input dalam elemen penutupnya voice . Untuk mengatur ulang atau mengubah pengaturan durasi audio lagi, Anda harus menggunakan elemen baru voice dengan suara yang sama atau suara yang berbeda.

Tabel berikut ini menjelaskan penggunaan mstts:audioduration atribut elemen:

Atribut Deskripsi Diperlukan atau opsional
value Durasi audio output yang diminta dalam hitungan detik, seperti 2s, atau milidetik, seperti 2000ms.

Nilai ini harus berada dalam 0.5 waktu 2 audio asli tanpa pengaturan laju lainnya. Misalnya, jika durasi audio yang diminta adalah 30s, audio asli harus antara 15 dan 60 detik. Jika Anda menetapkan nilai di luar batas ini, durasi diatur sesuai dengan kelipatan minimum atau maksimum masing-masing.

Mengingat durasi audio output yang Anda minta, layanan Ucapan menyesuaikan tingkat bicara yang sesuai. Gunakan API daftar suara dan periksa WordsPerMinute atribut untuk mengetahui tingkat berbicara suara saraf yang Anda gunakan. Anda dapat membagi jumlah kata dalam teks input Anda dengan nilai WordsPerMinute atribut untuk mendapatkan perkiraan durasi audio output asli. Audio output terdengar paling alami saat Anda mengatur durasi audio yang paling dekat dengan perkiraan durasi.
Diperlukan

contoh durasi audio mstts

Untuk informasi tentang nilai yang didukung untuk atribut mstts:audioduration elemen, lihat Menyesuaikan durasi audio.

Dalam contoh ini, audio asli sekitar 15 detik. Elemen mstts:audioduration ini digunakan untuk mengatur durasi audio menjadi 20 detik atau 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>

Menambahkan audio latar belakang

Anda dapat menggunakan mstts:backgroundaudio elemen untuk menambahkan audio latar belakang ke dokumen SSML Anda atau mencampur file audio dengan teks ke ucapan. Dengan mstts:backgroundaudio, Anda dapat mengulang file audio di latar belakang, memudar di awal teks ke ucapan, dan memudar di akhir teks ke ucapan.

Jika audio latar belakang yang disediakan lebih pendek dari teks ke ucapan atau pudar keluar, audio akan diulang. Jika lebih panjang dari teks ke ucapan, teks akan berhenti saat pudar selesai.

Hanya satu file audio latar belakang yang diizinkan per dokumen SSML. Namun, Anda dapat menyelingi tag audio dalam elemen voice untuk menambahkan lebih banyak audio ke dokumen SSML Anda.

Catatan

Elemen mstts:backgroundaudio harus diletakkan di depan semua voice elemen. Jika ditentukan, itu harus menjadi anak pertama dari speak elemen .

Elemen mstts:backgroundaudio tidak didukung oleh API Long Audio. Untuk teks bentuk panjang ke ucapan, gunakan API sintesis batch (Pratinjau) sebagai gantinya.

Tabel berikut ini menjelaskan penggunaan mstts:backgroundaudio atribut elemen:

Atribut Deskripsi Diperlukan atau opsional
src Lokasi URI file audio latar belakang. Diperlukan
volume Volume file audio latar belakang. Nilai yang diterima: 0 menjadi 100 inklusif. Nilai defaultnya adalah 1. Opsional
fadein Durasi audio latar belakang memudar dalam milidetik. Nilai default adalah 0, yang setara dengan tidak ada pudar masuk. Nilai yang diterima: 0 menjadi 10000 inklusif. Opsional
fadeout Durasi audio latar belakang memudar dalam milidetik. Nilai defaultnya adalah 0, yang setara dengan tidak memudar. Nilai yang diterima: 0 menjadi 10000 inklusif. Opsional

contoh mstss backgroundaudio

Untuk informasi tentang nilai yang didukung untuk atribut mstts:backgroundaudi elemen, lihat Menambahkan audio latar belakang.

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

Langkah berikutnya