С помощью SSML удобно расставлять паузы, менять скорость речи и настраивать произношение.
SSML (Speech Synthesis Markup Language) — язык разметки синтеза речи. Позволяет гибко настраивать речь, делать ее естественной и выразительной.
SSML-теги
Чтобы задавать правила произношения, управлять скоростью и добавлять паузы, используют SSML-теги. Теги бывают парные и одиночные.
Парные теги
У парных тегов есть открывающий <...> и закрывающий тег </....>. Например, для настройки скорости озвучивания используются теги <prosody....> и </prosody>.
Настроим быструю и медленную скорость
- <prosody rate="50%">Можно говорить медленно</prosody>
- <prosody rate="125%">Можно говорить быстро</prosody>
Одиночные теги
У одиночных тегов нет закрывающего тега. Например, добавим паузы с помощью тега <break time="..."/>.
Количество символов
- Каждому автору доступно по 1 000 000 символов на 30 дней. Теги считаются за символы.
Например, пара тегов <speak> и </speak> засчитается как 15 символов. - При предпрослушивании расходуются символы. При повторном прослушивании того же текста символы не тратятся.
- Подсчет символов меняется в зависимости от языка. Символы считаются в байтах.
В английском языке: 1 символ — 1 байт.
В русском языке: 1 символ — 2 байта. - Нельзя озвучить больше 4000 байтов за раз. Это значит, что если пользователь вставит 4000 латинских символов, текст озвучится.Если 4000 кириллицы, то увидит, что лимит превышен, нужно удалить лишние символы.
Разметка SSML от Яндекс поддерживает ограниченное количество SSML тегов. Так, для голосов «Иван», «Лада», «Лев», «Мила», «Яна» доступны:
- Паузы до 5 секунд: <break time="1s"/>
- Фонемы: <phoneme alphabet="x-sampa" ph='m@"hA:g@%ni:'></phoneme>
Подробнее о разметке текста для голосов Яндекс читайте в статье Разметка SSML.