Генеративный ИИ и искусственный интеллект сделали серьёзный рывок. Преобразование текста в речь — идея не новая, ей уже много лет. Здесь есть множество аспектов, которые стоит разобрать, и я постараюсь подойти к теме с разных сторон. И новичкам, и опытным разработчикам это поможет понять возможности Google Text to Speech API.
Прежде чем углубляться, давайте зафиксируем основы. Определим важные термины и создадим базу для дальнейшего изучения.
Разобьём тему на две части: преобразование текста в речь и API, а затем рассмотрим роль Google Cloud.
Примечание редактора: Ищете лучший API преобразования текста в речь? Попробуйте простой в использовании и хорошо документированный Speechify API.
Текст в речь
Я много писал об этом — можете посмотреть мой блог Что такое текст в речь и полезные статьи о синтезе речи, чтобы лучше вникнуть в тему. Там всё расписано подробнее, а здесь я дам краткое резюме.
Технология преобразования текста в речь использует синтез речи, чтобы превращать написанное в голос с помощью ИИ. Сценариев применения масса: от помощи людям с дислексией и слабым зрением до повышения продуктивности.
API
API (Application Programming Interface) — это по сути мост между приложениями. Если вы создаёте приложение с озвучкой текста, реализовать функцию текст-в-речь можно с нуля или подключив готовый API.
Вы сосредоточены на разработке приложения и используете сторонний API как мост для преобразования текста в речь.
Google Cloud API
Здесь в дело вступает Google Cloud. Google создал мощный API для преобразования текста в речь и предлагает его разработчикам на разных условиях оплаты. Любой, кто делает приложения с функцией текст в речь, может использовать эти возможности Google. Да, TTS — это сокращение от text to speech.
Быстрее всего начать через Google Cloud Console: https://cloud.google.com/. Здесь есть обучающие материалы, управление аккаунтом, доступ к голосам wavenet и многое другое.
Google Cloud — это облачная платформа с модульными сервисами. Можно подключать любые из них по мере необходимости. Для доступа нужны ключи для авторизации — своего рода мост. Почти все услуги платные, но есть бесплатный лимит.
В 2014 году Google купил DeepMind за его технологии синтеза речи и работу с нейросетями. Сейчас DeepMind — часть Google.
Теперь, когда суть ясна, перейдём к Google Cloud Text to Speech API.
Возможности Google Text to Speech API
Google — одна из ведущих IT-компаний мира. В TTS API вы можете рассчитывать на передовые функции, которые постоянно совершенствуются.
Высокое качество речи
Голоса Google текст в речь — одни из лучших на рынке. Звучат максимально близко к живому голосу с естественными интонациями. TTS всё ещё развивается, и выигрывает тот, чья речь будет как можно более живой.
Выбор голосов
Google предлагает большой выбор голосов — ваш проект будет звучать по-своему и не потеряется среди приложений конкурентов.
Создание собственного голоса
Речь о клонировании голоса. Можно записать свой голос или чужой (с разрешения) и использовать его для озвучивания текста.
Нейронные голоса
Нейронные голоса дают максимум качества. Их удобно использовать для международной аудитории — поддерживается множество языков.
Студийные голоса
Студийные голоса — самые профессиональные. На слух их не отличить от записей в студии.
Настройка голоса
Можно выбрать голос и отрегулировать скорость, высоту, тембр и др., чтобы подстроить звучание под задачи.
Сколько стоит Google Text to Speech API?
Цена зависит от качества голоса и объёма текста. Чем естественнее речь хочет получить пользователь, тем выше стоимость. Но даже лучшие голоса остаются довольно доступными.
| Тип голоса | Бесплатно в месяц | После превышения лимита |
| Neural2 | 0–1 млн байт | $16 за 1 млн байт |
| Polyglot | 0–1 млн байт | $16 за 1 млн байт |
| Студийные | 0–100 000 байт | $160 за 1 млн байт |
| Обычные | 0–4 млн символов | $4 за 1 млн символов |
| Wavenet | 0–1 млн символов | $16 за 1 млн символов |
Разница между символами и байтами
Тут всё упирается в качество: чем выше, тем дороже. Кодирование и обработка текста в речь тарифицируются по-разному. В стандартных голосах расчёт идёт по символам — здесь ставка ниже.
Если в проекте 4 млн символов, озвучка стандартными голосами обойдётся в $16.
Для студийных голосов требуется больше ресурсов, и цена считается по байтам. В некоторых языках (например, японском) один символ может занимать несколько байт.
Для точных расчётов важно учитывать язык и понимать, сколько байт в среднем занимает один символ, и уже от этого отталкиваться при оценке стоимости.
Как подключить Google Cloud Text to Speech API?
- Создайте аккаунт Google Cloud или войдите здесь
- Создайте новый проект и дайте ему имя
- Добавьте способ оплаты. Платите только за фактическое использование.
- Выберите проект и привяжите его к платёжному аккаунту.
- Активируйте Text-to-Speech API. В строке поиска введите "speech".
- В списке выберите Cloud Text-to-Speech API
- Настройте аутентификацию для среды разработки. Следуйте инструкциям по настройке авторизации Text-to-Speech.
Можно опробовать Text-to-Speech и без привязки к проекту:
- Нажмите TRY THIS API.
- Чтобы включить Text-to-Speech API для вашего проекта, нажмите ENABLE.
Ознакомьтесь с документацией Google Cloud для подробных инструкций.
Как отключить Text to Speech API
Чтобы отключить Text-to-Speech API, зайдите в консоль Google Cloud, нажмите «Go to APIs overview» в блоке с API. Найдите Text-to-Speech API, откройте его и выберите «DISABLE API» вверху страницы.
Начните работу с Google Text to Speech API
Когда проект создан, можно продолжить через командную строку.
gcloud initСоздайте локальную аутентификацию
gcloud auth application-default loginТеперь установите клиентскую библиотеку. Пример — для Node.js
npm install --save @google-cloud/text-to-speechGoogle Cloud Text to Speech API поддерживает такие языки:
- Go
- Java
- Node.js
- C++
- C#
- PHP
- Python
- Ruby
- TypeScript
- Terraform
- YAML
Как работает Google Cloud API?
Всё начинается с простого запроса к API. Вы отправляете текст, а в ответ получаете озвученный аудиофайл. В запросе можно указать голос, язык и т. д., а API текст в речь вернёт аудио.
Узнайте, как установить и использовать клиентские библиотеки, по этой ссылке. Примеры кода приведены для Node.js, также можно использовать Python, PHP и др.
const textToSpeech = require('@google-cloud/text-to-speech');
const fs = require('fs');
const util = require('util');
const client = new textToSpeech.TextToSpeechClient();
/**
* TODO(developer): Uncomment the following lines before running the sample.
*/
// const text = 'Text to synthesize, eg. hello';
// const outputFile = 'Local path to save audio file to, e.g. output.mp3';
const request = {
input: {text: text},
voice: {languageCode: 'en-US', ssmlGender: 'FEMALE'},
audioConfig: {audioEncoding: 'MP3'},
};
const [response] = await client.synthesizeSpeech(request);
const writeFile = util.promisify(fs.writeFile);
await writeFile(outputFile, response.audioContent, 'binary');
console.log(`Audio content written to file: ${outputFile}`);Вот и всё. Google Cloud Text to Speech API настроен, и вы выполнили первый запрос. Можно получать аудио в разных форматах: от OGG до MP3.
Где можно применить Google Text to Speech API
Google Text to Speech (TTS) API — универсальное решение для разных сфер. Вот самые распространённые сценарии:
- Текст в речь для слабовидящих: Озвучивание текста для удобного восприятия информации людьми с нарушением зрения.
- Автоматизация телефонных систем: Голосовое меню и автоответы в колл-центрах и справочных службах.
- Озвучивание медиа-контента: Генерация голоса для видео, подкастов и других мультимедийных материалов.
- Озвучка переведённого текста: Превращение перевода в аудио — для изучения языков и международного контента.
- Поддержка для дислектиков: Функция TTS помогает людям с дислексией и трудностями чтения.
- Голосовая навигация: Внедрение голосовых подсказок в навигационные приложения.
- Озвучка образовательного контента: Преобразование учебных материалов в речь для лучшего усвоения и вовлечения.
- Синтез речи для продуктивности: Интеграция TTS в приложения для заметок, задач и др. для голосовой обратной связи.
- Голос виртуальных ассистентов: Натуральное TTS для более комфортного общения с ассистентами.
- Голосовые оповещения: Озвученные уведомления и статусы на устройствах IoT для информирования пользователя.
Лучшие альтернативы Google Cloud TTS API
По состоянию на январь 2022 года существует множество альтернатив Google Text to Speech API. Возможно, функционал и популярность некоторых уже изменились. Вот основные варианты:
- Speechify Text to Speech API: Speechify Text to Speech API — более 1000 реалистичных и эмоциональных ИИ-голосов на 60+ языках и диалектах. Забронируйте место.
- Amazon Polly: Сервис от AWS, генерирует естественную речь на разных языках и с разными голосами. Отлично интегрируется с другими сервисами AWS.
- Microsoft Azure Speech Service: В Azure Speech Service есть TTS-функции для ассистентов, навигационных систем и других приложений.
- IBM Watson Text to Speech: IBM Watson позволяет превращать текст в естественную речь с помощью разных голосов.
- Nuance Communications: Nuance предлагает комплексные решения по распознаванию и синтезу речи, в том числе текст в речь для медицины, автоиндустрии и клиентского сервиса.
- CereProc: CereProc — разработчик технологий текст в речь, предлагающий высококачественные синтетические голоса (для доступности, развлечений и связи).
- iSpeech: iSpeech — облачные сервисы преобразования текста в речь с поддержкой разных языков. Используется в мобильных приложениях и на сайтах.
- ResponsiveVoice: ResponsiveVoice — доступный и простой API текст в речь для разных языков и веб-приложений.
- Neospeech: Neospeech предлагает технологии текст в речь с фокусом на реалистичном звучании для e-learning и индустрии развлечений.
- ReadSpeaker: ReadSpeaker предлагает онлайн- и офлайн-решения для сайтов, обучения и повышения доступности.
- Acapelabox: Acapela Group предоставляет облачный API текст в речь с поддержкой разных языков и голосов.
FAQ
У Google есть несколько тарифов голосов, почти все с бесплатным лимитом. Например, для стандартных голосов первый миллион байт бесплатен. Далее — $16 за миллион байт. То есть небольшой объём — бесплатно.
Создайте аккаунт на https://cloud.google.com/text-to-speech/ и следуйте шагам на сайте. Я подробно описал процесс выше в этом блоге.
Войдите в Google Cloud, создайте проект и сгенерируйте ключ API для доступа.
URL для Google Text to Speech API: https://cloud.google.com/text-to-speech/
Бессрочного бесплатного тестирования нет. Каждый сервис Google Cloud имеет свои условия и бесплатные лимиты.
Нет. Google Cloud Text to Speech API работает только через интернет.
Авторизация в Google Cloud (включая Text to Speech API) реализована через ключи API, OAuth 2.0 или сервисные аккаунты — выбор зависит от задачи и типа приложения.
Я бы поставил 5 звёзд. Платформа проста в использовании, с удобным поиском, адекватными ценами и в целом отличным продуктом.
Google Text to Speech API поддерживает клиентские библиотеки для разных языков, включая Python, а также запросы через REST API (HTTP), поэтому он совместим с большинством языков.
Интеграция с Android выполняется с помощью класса TextToSpeech и API-запросов. Полные инструкции приведены в официальной документации по Android.
Для внедрения Google Text to Speech API в JS нужны HTTP-запросы к API. Важно корректно сформировать запрос и обрабатывать ответ в коде. Подробности — в официальной документации.

