-
Notifications
You must be signed in to change notification settings - Fork 1
SSML: краткая инструкция
SSML (Speech Synthesis Markup Language) - это язык разметки, который используется для управления синтезом речи. Он предоставляет возможности для задания различных эффектов и параметров воспроизведения текста.
ssml_sample = """
<speak>
<p>
Когда я просыпаюсь, <prosody rate="x-slow">я говорю довольно медленно</prosody>.
Потом я начинаю говорить своим обычным голосом,
<prosody pitch="x-high"> а могу говорить тоном выше </prosody>,
или <prosody pitch="x-low">наоборот, ниже</prosody>.
Потом, если повезет – <prosody rate="fast">я могу говорить и довольно быстро.</prosody>
А еще я умею делать паузы любой длины, например две секунды <break time="2000ms"/>.
<p>
Также я умею делать паузы между параграфами.
</p>
<p>
<s>И также я умею делать паузы между предложениями</s>
<s>Вот например как сейчас</s>
</p>
</p>
</speak>
"""
sample_rate = 48000
speaker = 'xenia'
audio = model.apply_tts(ssml_text=ssml_sample,
speaker=speaker,
sample_rate=sample_rate)
Основной тэг. Весь текст синтезируемой речи должен находиться внутри этого элемента.
Пример
<speak>Привет. я бот-психолог</speak>
Тэг break позволяет добавить паузы в тексте синтезируемой речи. Опции:
-
time
- позволяет указать продолжительность паузы в секундах или миллисекундах (например, 500ms или 5s) -
strength
- по умолчанию значениеmedium
. Возможные значения:x-weak
,weak
,medium
,strong
,x-strong
(например,<break strength="x-weak"/>
)
Пример
<speak>
Пауза длиной в три секунды<break time="3s"/>
После этого речь продолжается.
</speak>
Тэг prosody позволяет контролировать параметры воспроизведения, такие как высоту тона и скорость. Опции:
-
rate
- позволяет изменить скорость воспроизведения. Возможные значения:x-slow
,slow
,medium
,fast
,x-fast
-
pitch
- позволяет повысить или понизить тон (высоту) речи. Возможные значения:x-low
,low
,medium
,high
,x-high
Тэг prosody можно комбинировать с другими, а также rate и pitch можно комбинировать между собой.
Пример
<speak>
Когда я просыпаюсь, <prosody rate="x-slow">я говорю довольно медленно</prosody>.
Потом я начинаю говорить своим обычным голосом, <prosody pitch="x-high">а могу говорить тоном выше.</prosody>
<prosody pitch="x-high" rate="x-slow"> Могу говорить медленно высоким тоном.</prosody>
</speak>
Тэг p позволяет добавить дополнительные паузы между абзацами. Эквивалентен x-strong
паузе.
Пример
<speak>
<p>Первый параграф.</p>
<p>Второй параграф.</p>
</speak>
Тэг s позволяет добавить дополнительные паузы между предложениями. Эквивалентен strong
паузе.
Пример
<speak>
<s>Первое предложение.</s><s>Второе предложение.</s>
</speak>