Денис Пестрецов
06.11.2019
8447

Синтез речи из консоли средствами Yandex SpeechKit

В этой статье рассмотрим, как синтезировать речь с помощью сервиса SpeechKit от компании Yandex. Данная функция может понадобиться для динамической генерации файлов воспроизведения в Asterisk. Перед началом работы Перед началом работы с сервисом Yandex Cloud необходимо авторизоваться в Yandex-почте. Если у Вас нет аккаунта, то необходимо его создать. Официальную документацию по начале работы со SpeechKit […]

Синтез речи средствами Yandex SpeechKit

В этой статье рассмотрим, как синтезировать речь с помощью сервиса SpeechKit от компании Yandex. Данная функция может понадобиться для динамической генерации файлов воспроизведения в Asterisk.

Перед началом работы

Перед началом работы с сервисом Yandex Cloud необходимо авторизоваться в Yandex-почте. Если у Вас нет аккаунта, то необходимо его создать.

Официальную документацию по начале работы со SpeechKit можно найти здесь.

Создание платёжного аккаунта

Информацию о текущих созданных платёжных аккаунтах можно найти на странице биллинга. Если ни один аккаунт не создан на данный момент, увидим следующее:

Биллинг
Биллинг

Создадим аккаунт (нажимаем на кнопку «Создать аккаунт» в правом верхнем углу).

Заполняем соответствующие поля аккаунта: указываем страну, выбираем тип плательщика, заполняем поля, согласно выбранному типу, а также привязываем к аккаунту банковскую карту.

Привязка банковской карты к платёжному аккаунту является обязательным действием. Без него не активируется пробный период.
Создание нового платёжного аккаунта
Создание нового платёжного аккаунта

ID каталога

Далее, для работы нам необходим будет ID текущего каталога. Чтобы его узнать переходим на главную страницу консоли облака: https://console.cloud.yandex.ru/. Здесь мы увидим информацию по текущему платёжному аккаунту, а также по текущим каталогам. Копируем себе ID – он нам понадобится в дальнейшей работе.

Получение ID каталога
Получение ID каталога

Для дальнейшей настройки переходим в консоль сервера CentOS, на котором установлен Asterisk.

Настройка интерфейса командной строки

В качестве примера будет рассматриваться система CentOS 6.9.

Первым делом необходимо установить утилиту CURL, если она не была установлена ранее. Для этого в консоли выполняем команду:

yum install curl

Далее устанавливаем интерфейс командой строки от Yandex. Выполняем команду в консоли:

curl https://storage.yandexcloud.net/yandexcloud-yc/install.sh | bash
Установка CLI от Yandex
Установка CLI от Yandex

Данный скрипт установит CLI. Теперь необходимо инициализировать CLI. Для этого переходим по ссылке и нажимаем на кнопку «Разрешить».

Разрешение доступа Yandex.Cloud
Разрешение доступа Yandex.Cloud

После разрешения откроется страница, на которой будет отображён OAuth-токен. Он нам потребуется для дальнейшей инициализации CLI.

Выполняем в консоли команду:

yc init

По запросу вводим полученный OAuth-токен. Также выбираем директорию, с которой будем работать (можно выбрать директорию по умолчанию, т.е. default) и выбираем Compute zone равным 2 (ru-central1-b).

Для просмотра применённых настроек используем команду:

yc config list
Инициализация CLI
Инициализация CLI

Получение IAM-токена

Также для работы нам потребуется получить IAM-токен. Для этого выполняем следующую команду:

yc iam create-token
 Генерация IAM-токена
Генерация IAM-токена
Срок действия IAM-токена – 12 часов, поэтому следует обеспечить его автоматическую генерацию.

На этом все подготовительные работы для синтеза речи завершены, можно переходить к самому процессу.

Синтез речи

Произведём синтез речи в тестовом режиме из командной строки. Выполняем:

curl -X POST -H "Authorization: Bearer IAM_KEY"  --data-urlencode "text=Привет, мир" -d "lang=ru-RU&folderId=ID_КАТАЛОГА" "https://tts.api.cloud.yandex.net/speech/v1/tts:synthesize" > filename.ogg

В данном запросе заменяем следующие параметры на свои:

  • IAM_KEY – IAM-токен, полученный ранее;
  • ID_КАТАЛОГА – полученный ранее ID каталога (см. рис. 3);
  • filename – произвольное имя файла, в формате ogg.

Если всё указано верно, то будет загружен файл, где будет синтезирован текст, указанный в переменной text.

Синтез речи
Синтез речи
В случае если указан неверный IAM-токен, то процесс синтеза речи также будет запущен, но прослушать созданный файл не удастся.

На этом обзор синтезирования речи из консоли средствами Yandex SpeechKit завершено.

Подписаться
Уведомить о
guest
1 Комментарий
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
Игорь Шихов
21.11.2019 20:23

У меня почему-то не работает
http://joxi.ru/KAgMQPxsEYLNMm

Остались вопросы?

Я - Кондрашин Игорь, менеджер компании Voxlink. Хотите уточнить детали или готовы оставить заявку? Укажите номер телефона, я перезвоню в течение 3-х секунд.

VoIP оборудование


ближайшие курсы

10 доводов в пользу Asterisk

Распространяется бесплатно.

Asterisk – программное обеспечение с открытым исходным кодом, распространяется по лицензии GPL. Следовательно, установив один раз Asterisk вам не придется дополнительно платить за новых абонентов, подключение новых транков, расширение функционала и прочие лицензии. Это приближает стоимость владения станцией к нулю.

Безопасен в использовании.

Любое программное обеспечение может стать объектом интереса злоумышленников, в том числе телефонная станция. Однако, сам Asterisk, а также операционная система, на которой он работает, дают множество инструментов защиты от любых атак. При грамотной настройке безопасности у злоумышленников нет никаких шансов попасть на станцию.

Надежен в эксплуатации.

Время работы серверов некоторых наших клиентов исчисляется годами. Это значит, что Asterisk работает несколько лет, ему не требуются никакие перезагрузки или принудительные отключения. А еще это говорит о том, что в районе отличная ситуация с электроэнергией, но это уже не заслуга Asterisk.

Гибкий в настройке.

Зачастую возможности Asterisk ограничивает только фантазия пользователя. Ни один конструктор шаблонов не сравнится с Asterisk по гибкости настройки. Это позволяет решать с помощью Asterisk любые бизнес задачи, даже те, в которых выбор в его пользу не кажется изначально очевидным.

Имеет огромный функционал.

Во многом именно Asterisk показал какой должна быть современная телефонная станция. За многие годы развития функциональность Asterisk расширилась, а все основные возможности по-прежнему доступны бесплатно сразу после установки.

Интегрируется с любыми системами.

То, что Asterisk не умеет сам, он позволяет реализовать за счет интеграции. Это могут быть интеграции с коммерческими телефонными станциями, CRM, ERP системами, биллингом, сервисами колл-трекинга, колл-бэка и модулями статистики и аналитики.

Позволяет телефонизировать офис за считанные часы.

В нашей практике были проекты, реализованные за один рабочий день. Это значит, что утром к нам обращался клиент, а уже через несколько часов он пользовался новой IP-АТС. Безусловно, такая скорость редкость, ведь АТС – инструмент зарабатывания денег для многих компаний и спешка во внедрении не уместна. Но в случае острой необходимости Asterisk готов к быстрому старту.

Отличная масштабируемость.

Очень утомительно постоянно возвращаться к одному и тому же вопросу. Такое часто бывает в случае некачественного исполнения работ или выбора заведомо неподходящего бизнес-решения. С Asterisk точно не будет такой проблемы! Телефонная станция, построенная на Asterisk может быть масштабируема до немыслимых размеров. Главное – правильно подобрать оборудование.

Повышает управляемость бизнеса.

Asterisk дает не просто набор полезных функций, он повышает управляемость организации, качества и комфортности управления, а также увеличивает прозрачность бизнеса для руководства. Достичь этого можно, например, за счет автоматизации отчетов, подключения бота в Telegram, санкционированного доступа к станции из любой точки мира.

Снижает расходы на связь.

Связь между внутренними абонентами IP-АТС бесплатна всегда, независимо от их географического расположения. Также к Asterisk можно подключить любых операторов телефонии, в том числе GSM сим-карты и настроить маршрутизацию вызовов по наиболее выгодному тарифу. Всё это позволяет экономить с первых минут пользования станцией.