Создает экземпляр YandexSpeechKit
API-ключ сервисного аккаунта или IAM-токен (t1....) Yandex Cloud
Контекст приложения
Protected_appContextКонтекст приложения.
Protected_requestЭкземпляр класса для отправки HTTP-запросов
Эмоциональная окраска голоса Отправляется для всех русских голосов; платформа документирует поддержку эмоций только для jane/omazh — для остальных голосов поле может игнорироваться API good - доброжелательный evil - злой neutral (по умолчанию) - нейтральный
Идентификатор каталога для авторизации. Требуется только для пользовательского аккаунта Максимум 50 символов
Формат синтезируемого аудио lpcm - без WAV-заголовка oggopus (по умолчанию) - OGG контейнер с OPUS кодеком
Язык синтеза речи ru-RU (по умолчанию) - русский en-US - английский tr-TR - турецкий
Частота дискретизации для формата lpcm Поддерживаемые значения:
Скорость синтеза речи От 0.1 до 3.0 3.0 - самый быстрый 1.0 (по умолчанию) - средняя скорость 0.1 - самый медленный При выходе за диапазон 0.1–3.0 значение молча сбрасывается к 1.0 Не поддерживается для премиум-голосов (alena, filipp, kirkorov, lera, madusa)
Текст для озвучивания в кодировке UTF-8 Для передачи слов-омографов используйте + перед ударной гласной Например: гот+ов или def+ect Для паузы между словами используйте - Максимальная длина: 5000 символов
Голос для синтеза речи По умолчанию: oksana
Static ReadonlyE_EVILОтрицательная интонация
Static ReadonlyE_GOODПоложительная интонация
Static ReadonlyE_NEUTRALНейтральная интонация
Static ReadonlyF_LPCMФормат файла lpcm
Static ReadonlyF_OGGOPUSФормат файла oggopus
Static ReadonlyL_ENАнглийский язык
Static ReadonlyL_RUРусский язык
Static ReadonlyL_TRТурецкий язык
Static ReadonlyTTS_API_URLАдрес, на который будет отправляться запрос
Static ReadonlyV_ALENAГолос для синтеза речи Алена (ru)
Static ReadonlyV_ALYSSГолос для синтеза речи Элис (en)
Static ReadonlyV_ERKANYAVASГолос для синтеза речи Эркан Яваш (tr)
Static ReadonlyV_ERMILГолос для синтеза речи Ермил (ru)
Static ReadonlyV_FILIPPГолос для синтеза речи Филипп (ru)
Static ReadonlyV_JANEГолос для синтеза речи Джейн (ru)
Static ReadonlyV_KIRKOROVГолос для синтеза речи Киркоров (ru)
Static ReadonlyV_LERAГолос для синтеза речи Лера (ru)
Static ReadonlyV_MADUSAГолос для синтеза речи Мадуса (ru)
Static ReadonlyV_NICKГолос для синтеза речи Ник (en)
Static ReadonlyV_OKSANAГолос для синтеза речи Оксана (ru)
Static ReadonlyV_OMAZHГолос для синтеза речи Омаж (ru)
Static ReadonlyV_SILAERKANГолос для синтеза речи Сила Эркан (tr)
Static ReadonlyV_ZAHARГолос для синтеза речи Захар (ru)
Возвращает установленный OAuth-токен (или null, если авторизация отключена).
Protected_getAuthorizationHeaderФормирует заголовок Authorization по контракту Yandex Cloud.
SpeechKit не принимает схему OAuth (её понимает только API Диалогов):
допустимы Api-Key <ключ> для API-ключа сервисного аккаунта и
Bearer <IAM-токен>. IAM-токен узнаётся по префиксу t1., остальное
считается API-ключом. Уже заданную схему (Api-Key .../Bearer ...)
передаём как есть — так можно явно указать нужную.
Токен из speech_kit_token / SPEECH_KIT_TOKEN
Значение заголовка Authorization
Protected_logПишет информацию об ошибках через AppContext.logError (структурированный логгер)
Логирует детальную информацию об ошибке, включая URL запроса и текст ошибки.
Optionalerror: string | Error = ''Текст ошибки или объект ошибки
Выполняет HTTP-запрос к API Яндекса
Отправляет запрос к указанному эндпоинту API и обрабатывает полученный ответ.
Тип ожидаемого ответа, наследующий интерфейс IYandexApi
Optionalurl: string | null = nullURL-адрес эндпоинта API
interface MyApiResponse extends IYandexApi {
data: {
id: string;
name: string;
};
}
const api = new YandexRequest('token', appContext);
// Выполнение запроса (метод не выбрасывает исключений).
// При ошибке API ответ содержит поле error — проверяйте его явно;
// null возвращается только при ошибке сети/Request.
const response = await api.call<MyApiResponse>('...');
if (response) {
if ('error' in response) {
// Обработка ошибки API
console.error('Ошибка API:', response.error);
} else {
// Обработка успешного ответа
console.log('ID:', response.data.id);
console.log('Name:', response.data.name);
}
} else {
// Обработка ошибки сети/Request
console.error('Ошибка запроса к API Яндекса');
}
Получение голосового текста
Текст для преобразования в речь
Возвращает путь к сохраненному файлу и его бинарное содержимое
Поддерживаемые форматы:
Особенности текста:
Ограничения:
Важно! после выполнения запроса, не забудьте удалить файл с результатом. Файл всегда получает расширение .ogg, даже при format = F_LPCM (содержимое файла — raw PCM).
Устанавливает OAuth-токен для авторизации
Обновляет токен авторизации и заголовки запросов. При установке токена автоматически добавляется заголовок 'Authorization: OAuth {token}' ко всем последующим запросам.
OAuth-токен для авторизации
Класс отвечающий за преобразование текста в аудио файл. Преобразование осуществляется через сервис Yandex SpeechKit.
See
https://cloud.yandex.ru/docs/speechkit/tts/request
Example