LIFEL
рекомендует

Синтезатор речи iSpring теперь и с разметкой SSML

30.01.2023
Андрей Матюков
О новых возможностях озвучивания текста в конструкторе курсов iSpring Suite 11 Max
Синтезаторами речи сейчас никого уже не удивить, сервисов хватает. Из них особенно привлекают внимание те, в которых предусмотрена встроенная разметка текста. Это когда с помощью специальных символов можно принудительно указывать ударение или увеличивать паузы. В сложных технических текстах со специализированной терминологией без этого никак.

В связи с этим радовало наличие синтезатора речи в версии iSpring Suite 11 Max. При первом использовании он мне понравился, робот практически всё правильно проговаривал. Но тексты под мои задачи в тот момент были довольно «разговорными». И я понимал, что с узкоспециализированными материалами могут возникнуть проблемы, потому что тогда разметки предусмотрено не было.

И вот в недавнем эфире ISPRING VISION 2023 Михаил Кречин рассказал о добавлении в синтезатор речи iSpring той самой разметки! Релиз её состоялся еще в конце декабря, и вот с новыми обновлениями разметка прилетела на Suite 11 Max, чем я сразу и воспользовался.

Окно редактора текста немного изменилось — добавилась галочка «Разметка речи (SSML)» и плеер предпрослушивания. По галочке включения разметки появляются следующие настройки текста.
iSpring, Юрий Усков, Йошкар-Ола, школа Инфосфера, лицей Инфотех, Институт iSpring, iSpring Days, Синтезатор речи, SSML
Давайте сразу разберемся, что такое SSML (Speech Synthesis Markup Language). Это язык разметки синтеза речи, который позволяет сделать синтезируемую речь более естественной и выразительной благодаря настройке пауз, ударений, произношения. Подробнее о разметке SSML можно почитать в Базе знаний iSpring или в Документации Yandex.

Теги SSML

Самое простое, еще до пользования тегами, что можно использовать — это дополнительные (избыточные) запятые в длинных предложениях, чтобы добавлять в синтезированный текст интонационные паузы. И принудительное ударение с помощью апострофа «'» после нужной гласной.

Если же ваш текст не проговаривается должным образом, и вы решили воспользоваться разметкой речи, то сначала нужно разобраться с тегами и их правильной расстановкой. Сами теги подобны тегам HTML. У парных должны быть закрывающие теги, у одиночных — в конце должен быть символ «/».

После установки галочки SSML весь текст в редакторе обрамляется тегами <speak></speak>. И вот эти теги всегда должны быть по краям всего текста, каких настроек вы бы не добавляли, иначе получите ошибку:
iSpring, Юрий Усков, Йошкар-Ола, школа Инфосфера, лицей Инфотех, Институт iSpring, iSpring Days, Синтезатор речи, SSML
Другие теги можно вписывать вручную в текст или же воспользоваться кнопками:

  • Пауза
  • Скорость
  • Сказать как
  • Произношение

Тег паузы одиночный и имеет один параметр — время, которое выставляется в секундах или миллисекундах: <break time="1s"/> или <break time="500ms"/>. Такая пауза может интонационно сыграть роль запятой.
iSpring, Юрий Усков, Йошкар-Ола, школа Инфосфера, лицей Инфотех, Институт iSpring, iSpring Days, Синтезатор речи, SSML
И хоть вставляются теги автоматически по нажатию на кнопки, но редактировать или удалять их нужно уже вручную.

Тег <prosody rate="85%"> отвечает за скорость произношения, и единственный его показатель, как раз, и указывает её в процентном соотношении от нормальной. Меньше 100% - медленнее обычного темпа, больше 100% - быстрее.
iSpring, Юрий Усков, Йошкар-Ола, школа Инфосфера, лицей Инфотех, Институт iSpring, iSpring Days, Синтезатор речи, SSML
Благодаря парному тегу «Сказать как» можно, например, цифру произнести как количественную (<say-as interpret-as="cardinal">), так и порядковую (ordinal). В примере ниже произносится, как «первого платежа».
iSpring, Юрий Усков, Йошкар-Ола, школа Инфосфера, лицей Инфотех, Институт iSpring, iSpring Days, Синтезатор речи, SSML
Вот какие еще интерпретации сейчас доступны:

  • Аббревиатура: <say-as interpret-as="characters"></say-as>
  • Дата: <say-as interpret-as="date"></say-as>
  • Время: <say-as interpret-as="time"></say-as>
  • Телефон: <say-as interpret-as="telephone"></say-as>
  • Валюта: <say-as interpret-as="currency"></say-as>
  • Единица измерения: <say-as interpret-as="unit"></say-as>
  • По символам: <say-as interpret-as="verbatim"></say-as>
  • Дробь: <say-as interpret-as="fraction"></say-as>

Фонемы X-SAMPA

Для синтезатора речи в iSpring использован фонетический алфавит X-SAMPA. Именно на основе его фонем и нужно будет составлять сложные или неоднозначно читаемые слова с помощью парного тега <phoneme>.

Вот тут придется пофантазировать, подбирая нужные фонемы. В моём случае первое же предложение из технического текста заставило задуматься не только меня, но их техподдержку iSpring. Никак «флюид» не хотел говориться через безударную «ю», только через «у». И в таблицах фонем Google пытался подобрать вариант, и в таблицах Яндекс.

Для решения вопроса пришлось обратиться к тому, от кого я об этой разметке в iSpring и услышал — Михаилу Кречину. Он в итоге и подсказал нужный вариант от команды iSpring — сделать и «ю» и «и» ударными. А для родительного падежа мне пришлось и «а» сделать ударной, в таком случае произнеслось верно — с нужным ударением и всеми четко произнесенными гласными.
iSpring, Юрий Усков, Йошкар-Ола, школа Инфосфера, лицей Инфотех, Институт iSpring, iSpring Days, Синтезатор речи, SSML
Вот такая фонема получилась для слова «флюида» согласно алфавиту X-SAMPA:

  • f — твёрдая «ф»,
  • l_j — мягкая «л»,
  • u — ударная «у» или «ю». В данном случае после мягкой согласной получилось «ю»;
  • "i — и с первичным ударением («), которое ставится в начале слога;
  • d — твёрдая «д»;
  • "a — ударная «а» или «я» с первичным ударением.

В этом примере сложность была и с аббревиатурой СТИ, и для нее не помогла опция «Сказать как». А решил проблему с помощью кавычек и точек — «С.Т.И.

Как вы поняли, синтез речи из текста с разметкой — то ещё творческое занятие. Порой, чтобы добиться лучшего из возможных вариантов, нужно много экспериментировать.

Ограничение на количество символов

Как и с фотобанком в iSpring Suite Max, где на сутки дается не больше 100 выгруженных картинок, в синтезаторе тоже есть ограничения.

  • Каждому автору доступно по 1 000 000 символов на 30 дней. Теги считаются за символы.
  • Например, пара тегов <speak>и </speak> засчитается как 15 символов.
  • При предпрослушивании расходуются символы. При повторном прослушивании того же текста символы не тратятся.
  • Подсчет символов меняется в зависимости от языка. Символы считаются в байтах.
  • В английском языке: 1 символ — 1 байт.
  • В русском языке: 1 символ — 2 байта.
  • Нельзя озвучить больше 4000 байтов за раз. Это значит, что если пользователь вставит 4000 латинских символов, текст озвучится. Если 4000 кириллицы, то увидит, что лимит превышен, нужно удалить лишние символы.
iSpring, Юрий Усков, Йошкар-Ола, школа Инфосфера, лицей Инфотех, Институт iSpring, iSpring Days, Синтезатор речи, SSML
Понравилась статья? Нажми на Лайфика!
статьи по теме