Послуги

  • Сайти
  • Контент
  • Просування
  • Бітрікс24
  • Додатки
Усі послуги Оплата
Бітрікс24
Усі послуги Оплата

Пошук

  • Разработка интернет-магазина под ключ
  • Разработка сайтов
  • Разработка леднигов
  • Разработка на битрикс24
  • Разработка на Вордпресс

Озвучення текстів через Yandex SpeechKit API

Завдання

Нашому клієнту, популярному блогеру Мілі Котлярової, необхідно було озвучувати певні фрагменти текстів. Перед нами стояло завдання розробити максимально простий сервіс: щоб можна було вставити текст, натиснути кнопку та отримати mp3-файл із озвученим текстом.

Вибір технології та її особливості

Ми вирішили генерувати озвучення за допомогою технології Yandex SpeechKit. Вона дозволяє розпізнати або озвучити будь-який текст, на основі якого працює голосовий помічник Яндекса «Аліса». Рішення від Яндекса найбільш природно ставить наголоси і використовує інтонації, тому що їхня нейромережа навчена на безлічі прикладів з реального життя.

Banner

Однак Yandex SpeechKit має обмеження на довжину тексту для озвучення за один раз — 5000 символів. Якщо довжина тексту більша, необхідно розбивати текст на частини і робити кілька запитів. Наш клієнт не хотів думати про ці обмеження, озвучуючи тексти будь-якої довжини.

Ми створили гранично простий сервіс, який оминає ці обмеження і виглядає навіть занадто мінімалістично – крім текстового поля та кнопки “Генерація” на екрані нічого немає.

Як працює сервіс

Алгоритм роботи наступний:

  1. Якщо текст, що вставляється, довжиною більше 5000 символів, то він дробиться на фрагменти програмними методами. Наприклад, текст на 14578 символів буде поділено на три фрагменти.
  2. Отримуємо IAM-токен, який вказуємо при зверненні до ресурсів Yandex SpeechKit.
  3. Надсилаємо послідовно кілька запитів (фрагментів тексту).
  4. Яндекс повертає нам аудіофайли у форматі ogg. Не найкращий формат для нашого клієнта, тому далі ми вирішимо цю проблему.
  5. Отримані файли зберігаються на сервері клієнта. Подальші операції над ними будуть здійснюватись за допомогою утиліти SoX, яку ми підключили до сервера нашого клієнта.
  6. Отримані файли ogg конвертуються у формат mp3.
  7. mp3-файли поєднуються в один.
  8. Публікується посилання на завантаження аудіофайлу у відповідному клієнту форматі.

Якщо деякі наголоси були проставлені неправильно, а інтонації не надто природні — це можна виправити. Зміни можна внести, розставивши спеціальні символи в потрібних місцях тексту. Наприклад, для передачі слів-омографів слід використовувати “+” перед ударною голосною: “з+амок” або “зам+ок”. Для паузи між словами використовується “-“.

Для демонстрації прикладу роботи ми за допомогою сервісу озвучили його алгоритм роботи. Інтонації та наголоси не коректувалися.

Озвучення тексту на сайті

Інтеграція з API від Яндекса не обмежується лише наведеним вище сценарієм. SpeechKit також зручно використовувати для автоматичного озвучування нових або наявних матеріалів на сайті. Синтезатор голосу може зачитувати записи в блозі або новини, при цьому аудіокаст буде прикріплюватися до посту автоматично, без додаткових зусиль з боку редактора.

Така функціональність користується популярністю у користувачів через підвищену зручність споживання:

  1. потік контенту новин набагато зручніше слухати під час готування на кухні, прогулянки або поїздки за кермом;
  2. якість начитки, яка вже є досить близькою до людської, дозволяє сприймати матеріал з комфортом і без відторгнення;
  3. у деяких випадках набір кращих озвучених статей можна виділяти в окремий інформаційний потік, наприклад, в подкаст.

Впровадження начитки на практиці

Видавництво «Комітет» ще 2019 року запровадило автоматичне озвучування текстів на сайтах своїх проектів. Над заголовком матеріалу розташована кнопка “Слухати”, яка запускає аудіоверсію статті.

01

/ 02

Через деякий час після інтеграції озвучення команди проектів помітили зростання лояльності користувачів сайту та програми. Помітно зросла і кількість позитивних відгуків у додатків — читачі дякували за можливість прослуховувати статті.

Ми готові реалізувати таку можливість на сайті вашого проекту. Налаштуємо інтеграцію з API, додамо автоматичне озвучування, впишемо нові можливості в наявний інтерфейс.

Потрібно озвучити тексти за допомогою синтезатора голосу?

Ми використали для цього Yandex SpeechKit API! Зв'яжіться з нами, щоб обговорити завдання інтеграції з цим сервісом для Вашого сайту, блогу або онлайн-сервісу.