Synthesize

Метод Synthesize

Примените метод Synthesize, чтобы преобразовать текст в речь по заданным параметрам без сохранения аудиофайла в библиотеку приложения. В результате вы получите аудио в формате base64. Для этого выполните POST-запрос с входными параметрами к точке подключения, указанными ниже.

Точка подключения:

POST: https://api.exolve.ru/media/v1/Synthesize

Авторизация

Передайте следующие Заголовки HTTP для успешной авторизации.

ИмяТипОписание
AuthorizationstringAPI-ключ приложения с Bearer перед ним. Пример: Bearer e***s0, где e***s0 замените на API-ключ вашего приложения

Входные параметры

Передайте следующие параметры в теле запроса в JSON-формате. Параметры, выделенные жирным, обязательны.

ПараметрТипОписание
textstringтекст синтезируемой речи (от 1 до 500 символов, кодировка не учитывается)
voice_settingsVoiceSettingsголосовые настройки синтеза

VoiceSettings

ПараметрТипОписание
langarray Langязык синтезируемой речи
voicearray Voiceголос для озвучивания текста
emotionarray Emotionэмоция для озвучивания текста
speedfloatскорость синтезируемой речи (от 0.1 до 3.0, где 0.1 — самая медленная, 3.0 — самая быстрая, по умолчанию 1.0)
loudness_normalizationint32нормализация громкости (от -145 до 0, где -145 — наименьшее (отрицательное) усиление, 0 — наибольшее (положительное) усиление громкости, по умолчанию -19)

Нормализация применяется, чтобы выровнять громкость синтезированной речи по сравнению с «живой» речью собеседников. LUFS — это единицы измерения громкости. Этот способ измерения объединяет воспринимаемую человеческим слухом громкость и истинную интенсивность аудиосигнала


Lang

ПараметрТипЯзык
1enumрусский (по умолчанию)
2enumанглийский
3enumнемецкий
4enumиврит
5enumказахский
6enumузбекский

Voice

ПараметрТипГолосПолЭмоцияЯзык
1enumАлёна (по умолчанию)Ж1 — нейтральная (по умолчанию), 2 — добрая1 — русский
2enumЕрмилМ1 — нейтральная (по умолчанию), 2 — радостная1 — русский
3enumДжейнЖ1 — нейтральная (по умолчанию), 2 — радостная, 3 — раздраженная1 — русский
4enumОмажЖ1 — нейтральная (по умолчанию), 3 — раздраженная1 — русский
5enumЗахарМ1 — нейтральная (по умолчанию), 2 — радостная1 — русский
6enumФилиппМ—1 — русский
7enumМадирусМ—1 — русский
8enumДашаЖ1 — нейтральная (по умолчанию), 2 — радостная, 4 — дружелюбная1 — русский
9enumЮлияЖ1 — нейтральная (по умолчанию), 5 — строгая1 — русский
10enumЛераЖ1 — нейтральная (по умолчанию), 4 — дружелюбная1 — русский
11enumМаринаЖ1 — нейтральная (по умолчанию), 4 — дружелюбная, 6 — шёпот1 — русский
12enumАлександрМ1 — нейтральная (по умолчанию), 2 — радостная1 — русский
13enumКириллМ1 — нейтральная (по умолчанию), 2 — радостная, 5 — строгая1 — русский
14enumАнтонМ1 — нейтральная (по умолчанию), 2 — радостная1 — русский
15enumМашаЖ2 — радостная (по умолчанию), 4 — дружелюбная, 5 — строгая1 — русский
16enumЛеяЖ—3 — немецкий
17enumДжонМ—2 — английский
18enumНаомиЖ7 — современный, 8 — классический4 — иврит
19enumАмираЖ—5 — казахский
20enumМадиЖ—5 — казахский
21enumНигораЖ—6 — узбекский

Emotion

ПараметрТипЭмоция
1enumнейтральная
2enumрадостная
3enumраздражённая
4enumдружелюбная
5enumстрогая
6enumшёпот
7enumсовременная
8enumклассическая

Выходные параметры

ПараметрТипОписание
filebytesготовое синтезированное аудио в формате base64
voice_settingsVoiceSettingsголосовые настройки синтеза — совпадают с входными параметрами

Возможные ошибки

КодСтатусПример сообщенияОписание
401Unauthorizedfailed to parse tokenне указан или неправильно указан API-ключ приложения
404Not Foundнекорректно введен URL

Примеры

Входные параметры:

{
   "text": "МТС Exolve — конструктор омниканальных диалогов для бизнеса",
   "voice_settings": {
       "lang": 1,
       "voice": 1,
       "emotion": 1,
       "speed": 1,
       "loudness_normalization": -19
   }
}

Выходные параметры:

{
   "file": "UklGRl7XAABXQVZFZm",
   "voice_settings": {
       "lang": 1,
       "voice": 1,
       "emotion": 1,
       "speed": 1,
       "loudness_normalization": -19
   }
}