Как настроить сгенерированную речь с помощью тегов SSML

Отредактировано

Wave.video использует технологию Amazon Polly для создания аудиодорожек из текста. Иногда результат по умолчанию не является безупречным, и вы можете захотеть подправить речь. Здесь вам на помощь придут теги SSML!

Как начать использовать SSML для преобразования текста в речь

Это просто! Поместите текст в два тега <speak>:

<speak>Здравствуйте! </speak>

Обратите внимание, что некоторые теги SSML не работают с нейронными голосами, и наоборот. Убедитесь, что вы используете правильные теги .

Как сделать паузу

TTS автоматически делает паузы после запятых, концов предложений и абзацев. Самый простой способ создать дополнительную паузу - использовать тег <break>. Он доступен как для обычного, так и для нейронного голоса.

Этот тег имеет различные параметры, определяющие силу паузы: слабая, средняя, сильная, x-strong. Кроме того, с помощью параметра time можно указать точное время паузы. Смотрите примеры ниже:

<speak> О, лень, приди, приди ко мне, <break strength="strong"/> одна. Тебя зовет мягкая прохлада и хороший отдых <break time="0.8s"/> Только в тебе я вижу свою богиню </speak>.

Как изменить высоту голоса или сделать его громче/тише

Вы можете сделать голос громче или тише с помощью тега <prosody>. Для изменения используйте значения silent, x-soft, soft, medium, loud, x-loud:

<speak>Все задаются вопросом <prosody volume="x-loud">откуда взялся блюз</prosody>? </speak>

Хотите управлять громкостью более строго? Просто задайте значение в дБ. Попробуйте:

<speak> И все <prosody volume="-5dB"> выглядит хорошо</prosody> сегодня вечером </speak>.

Примечание: +6 дБ увеличивают громкость почти вдвое, -6 дБ делают звук на 50% тише.

Регулировка громкости поддерживается как обычным, так и нейронным Text-to-Speech.

Ускорить или замедлить речь

Здесь поможет тот же тег <prosody>! Скорость можно задать с помощью атрибута rate, используя x-slow, slow, medium, fast, x-fast или процент. Попробуйте так:

<speak> <prosody rate="x-slow">Красная фура, желтая фура.</prosody> <prosody rate="fast">Красная фура, желтая фура.</prosody> <prosody rate="200%">Красный грузовик, желтый грузовик.</prosody> </speak>

Работает как с нейронными, так и с обычными голосами.

Сделайте акцент

Чтобы подчеркнуть слово, используйте тег <emphasis> с атрибутом level. У него есть 3 варианта, вот как они работают:

  • Сильный: увеличивает громкость и замедляет темп речи, так что речь становится громче и медленнее.

  • Умеренный: Увеличивает громкость и замедляет скорость речи, но меньше, чем сильная. Умеренный режим используется по умолчанию.

  • Уменьшить: Уменьшает громкость и ускоряет темп речи. Речь становится мягче и быстрее.

Вот пример:

<speak> <emphasis level="reduced">Она - та, кто <emphasis level="strong">заметит</emphasis>, что расцвел первый эспарцет весны <emphasis level="moderate"> <emphasis> </speak>

Подчеркивание не работает с нейронными голосами.

Речь диктора

Ищете речь в стиле диктора? Мы позаботимся об этом!

<speak> <amazon:domain name="news"> Из выпуска газеты The Guardian за вторник, 16 апреля 1912 года: Первый рейс лайнера "Титаник" компании "Уайт Стар", самого большого корабля из когда-либо спущенных на воду, закончился катастрофой. Титаник" начал свой путь из Саутгемптона в Нью-Йорк в среду. Поздно вечером в воскресенье он столкнулся с айсбергом у Гранд-Банкс в Ньюфаундленде. Посредством беспроводной телеграфии он подавал сигналы бедствия, и несколько лайнеров находились достаточно близко, чтобы поймать и ответить на призыв. </amazon:domain> </speak>.

Однако этот трюк доступен для некоторых нейронных голосов:

  • Голоса Мэтью или Джоанны (en-US)

  • Лупе (es-US)

  • Эми (en-GB)

Хотите сделать больше с помощью SSML?

Узнайте обо всех возможностях этой функции в документации Amazon Polly.