Библиотека для интеграции с сервисом речевых технологий
Порт PHP-библиотеки для работы с "Yandex SpeechKit" вот с этого репозитория
- Формирование параметров синтезируемого аудио (добавление текста, выбор языка, голоса, эмоциональной окраски, темпа, формата, частоты дискретизации для произносимой речи)
- Формирование параметров распознавания короткого аудио (добавление, выбор формата, частоты дискретизации, языковой модели и фильтра ненормативной лексики аудио, указание языка произношения)
- Аутентификация в HTTP API-сервисе "Яндекс.Облако" с помощью пользовательского аккаунта
- Синтезирование и распознавание речи с помощью сервиса "Yandex SpeechKit"
- JDK11
- Maven
- Gson
try {
Cloud cloud = new Cloud("token", "id");
} catch (ClientException e) {
e.printStackTrace();
}
Создание задачи
try {
// Обязательный параметр: "Текст"
Speech speech = new Speech("Привет, разработчик!");
} catch (ClientException e) {
e.printStackTrace();
}
Создание задачи
// Обязательный параметр: "путь к файлу"
text = new Text("greeting_developer.ogg");
Добавление параметров речи (необязательно)
/*
* Добавление обязательного параметра: "Язык"
* Возможно использование других констант класса "Lang" в качестве параметра
*/
text.setLang(Lang.RU)
/*
* Добавление обязательного параметра: "Языковая модель"
* Возможно использование других констант класса "Topic" в качестве параметра
*/
.setTopic(Topic.GENERAL)
/*
* Добавление обязательного параметра: "Фильтр ненормативной лексики"
* Возможно использование других констант класса "Filter" в качестве параметра
*/
.setFilter(Filter.FALSE)
/*
* Добавление обязательного параметра: "Формат аудио"
* Возможно использование других констант класса "Format" в качестве параметра
*/
.setFormat(Format.LPCM)
/*
* Добавление обязательного параметра: "Частота дискретизации"
* Возможно использование других констант класса "Rate" в качестве параметра
*/
.setRate(Rate.HIGH);
Выполнение задачи
try {
// Обязательный параметр: "Задача"
cloud.request(text);
} catch (ClientException e) {
e.printStackTrace();
}
Простой пример целиком (распознавание и запись в файл)
try {
Cloud cloud = new Cloud("token", "id");
Speech speech = new Speech("Бла бла бла");
speech.setVoice(Voice.random());
byte[] oggFile = cloud.request(speech);
ByteArrayToFile.save("test.ogg", oggFile);
} catch (Exception e) {
e.printStackTrace();
}