Web Speech API
Web Speech API — прикладной программный интерфейс (API) для веб-браузеров, позволяющий веб-приложениям работать с голосовыми данными: распознавать речь пользователя и синтезировать речь из текста. Состоит из двух независимых частей — распознавания речи (SpeechRecognition) и синтеза речи (SpeechSynthesis, также известного как text-to-speech, TTS)[1]. Спецификация не является формальным стандартом W3C с полным статусом рекомендации — это отчёт (community report), разрабатываемый в рамках Speech API Community Group, а затем — Audio Community Group при W3C[2].
История
[править | править код]Идея встроенного в браузер API для голосового ввода и вывода была впервые предложена компанией Google в 2010 году[3]. Первый черновик спецификации был опубликован Speech API Community Group в 2012 году[4]. Практическая поддержка в браузерах началась с Google Chrome 25 (2013 год)[3], а функция синтеза речи появилась в Safari уже в версии 7 (октябрь 2013)[5]. В отличие от многих других веб-технологий, Web Speech API так и не прошёл полный путь до статуса рекомендации W3C: работа над спецификацией курируется профильной Community Group, что делает документ менее формально обязывающим для производителей браузеров[2]. В 2020-х годах в спецификацию было добавлено расширение для распознавания речи «на устройстве» (on-device speech recognition), не требующее отправки аудио на сервер[6].
Архитектура API
[править | править код]SpeechRecognition (распознавание речи)
[править | править код]Интерфейс SpeechRecognition принимает аудиопоток с микрофона устройства (либо из аудиотрека) и передаёт его сервису распознавания речи; при успешном распознавании слова или фразы сервис возвращает текстовую строку или список альтернативных вариантов с оценкой достоверности[7]. У интерфейса есть набор событийных обработчиков (onresult, onerror, onstart, onend и другие), а вспомогательный интерфейс SpeechGrammar позволяет задать грамматику распознаваемой речи на основе JSGF (JSpeech Grammar Format)[8].
По умолчанию распознавание речи выполняется не в браузере, а на стороне сервера: аудио передаётся во внешний сервис распознавания (в Chrome — сервис Google), поэтому функция не работает офлайн и требует соединения по HTTPS[7]. Начиная с расширения on-device recognition часть браузеров позволяет выполнять распознавание локально, без передачи аудио и транскрипции третьей стороне[6].
SpeechSynthesis (синтез речи)
[править | править код]Интерфейс SpeechSynthesis — это контроллер речевого сервиса устройства, позволяющий получить список доступных голосов, запускать, ставить на паузу и останавливать воспроизведение[1]. Отдельный запрос на озвучивание текста представлен объектом SpeechSynthesisUtterance, содержащим сам текст и параметры произношения — язык, высоту тона, скорость, громкость и выбранный голос (SpeechSynthesisVoice)[1]. В отличие от распознавания речи, синтез в подавляющем большинстве браузеров и на настольных, и на мобильных платформах выполняется системными средствами устройства и не требует обязательного HTTPS-соединения[3].
Поддержка браузерами
[править | править код]Поддержка двух частей API существенно различается.
Синтез речи (SpeechSynthesis) поддерживается широко и считается технологией уровня «Baseline: Widely Available» с марта 2021 года[5]:
- Chrome — с версии 33 (2014)
- Firefox — с версии 49 (2016)
- Safari — с версии 7 (2013)
- Edge — с версии 14 (2016)
Распознавание речи (SpeechRecognition) по состоянию на 2025—2026 годы имеет статус «ограниченная доступность» (limited availability)[9]:
- Chrome и Chrome для Android — поддерживается (Chrome 139, август 2025)
- Edge — поддерживается (версия 139, август 2025)
- Firefox и Firefox для Android — не поддерживается, позиция разработчиков не определена
- Safari и Safari для iOS — не поддерживается
Причина фрагментарной поддержки распознавания речи в первую очередь техническая и коммерческая: по умолчанию оно опирается на облачный сервис распознавания, принадлежащий Google, лицензия на использование которого другим производителям браузеров не предоставляется[3]. Из-за этого браузеры на основе Chromium, но не связанные с Google (например, Brave), могут не иметь рабочей функции распознавания речи[3].
Область применения
[править | править код]Web Speech API используется в первую очередь там, где важны:
- специальные возможности (accessibility) — озвучивание содержимого страниц для незрячих и слабовидящих пользователей, голосовое управление интерфейсом[10];
- голосовой ввод как альтернатива клавиатуре — голосовые команды, диктовка, голосовое заполнение форм;
- обучающие и языковые приложения — озвучивание учебных материалов, тренажёры произношения;
- автоматизация и IVR-подобные веб-сценарии — простые голосовые ассистенты и чат-боты в браузере.
Критика и ограничения
[править | править код]Основные претензии к Web Speech API, регулярно отмечаемые как разработчиками, так и участниками рабочей группы W3C, касаются приватности, производительности и качества голосов.
Приватность и работа с данными. При серверном распознавании (используемом по умолчанию) аудио пользователя передаётся стороннему сервису без прозрачного контроля над тем, сохраняются ли эти данные и как долго[11]. Сама спецификация признаёт риски: речевой ввод потенциально может использоваться для скрытого прослушивания, если вредоносная страница маскирует активную запись под остановленную[2]. Обсуждение этой проблемы велось и на уровне W3C Machine Learning Workshop, где отмечалось противоречие между удобством серверного распознавания и требованиями регламентов вроде GDPR о праве на удаление данных[12].
Производительность и офлайн-доступность. Пока распознавание выполняется на сервере, приложение не работает без подключения к интернету, а задержка сети ощутимо влияет на отзывчивость[7].
Качество и однородность. Голоса, доступные через SpeechSynthesis, по отзывам разработчиков, звучат менее естественно и выразительно, чем голоса современных нейросетевых сервисов синтеза, особенно для языков, отличных от английского[3]. Кроме того, набор доступных голосов и языков сильно зависит от браузера и операционной системы, из-за чего поведение приложения непредсказуемо меняется от платформы к платформе[3].
Именно эти ограничения — прежде всего качество голоса и облачная зависимость от одного производителя — стали одной из причин, по которой на рынке параллельно с браузерным API выросла отдельная индустрия коммерческих облачных сервисов синтеза речи.
Сравнение с коммерческими облачными сервисами синтеза речи
[править | править код]Важно различать Web Speech API как встроенный, бесплатный, но ограниченный браузерный интерфейс — и отдельный класс коммерческих облачных API нейросетевого синтеза речи, которые не входят в веб-стандарты и подключаются напрямую к серверам поставщика по REST/WebSocket с использованием API-ключа. К числу наиболее заметных относятся ElevenLabs, Amazon Polly, Microsoft Azure AI Speech и Google Cloud Text-to-Speech.
ElevenLabs
[править | править код]ElevenLabs Inc. — компания, основанная в 2022 году Матеушем (Мати) Станишевским и Пиотром Домбковским, специализирующаяся на нейросетевом синтезе речи и клонировании голоса[13]. Модели компании обучены учитывать контекст текста и подстраивать интонацию и темп речи, а также распознавать эмоциональную окраску (гнев, грусть, радость, тревогу)[13]. Продуктовая линейка ElevenLabs включает Text-to-Speech, Speech-to-Text (Scribe), клонирование и «дизайн» голоса, автоматический дубляж видео, генерацию музыки и звуковых эффектов, а также платформу голосовых ИИ-агентов[14]. Библиотека голосов насчитывает более 10 тысяч вариантов, поддерживается свыше 30 языков, доступна потоковая генерация для приложений реального времени[15]. Сегодня API ElevenLabs используют многие сайты для озвучки текста голосом, адаптируя возможности базовой технологии под свой регион, добавляя собственные настройки и улучшения. Среди заявленных корпоративных клиентов компании — Disney, Cisco, Meta, NVIDIA, Epic Games и Salesforce[16].
Amazon Polly, Microsoft Azure AI Speech, Google Cloud Text-to-Speech
[править | править код]Три крупнейших облачных провайдера предлагают собственные API нейросетевого синтеза речи как часть более широких облачных платформ:
- Amazon Polly — сервис AWS, предоставляющий многоязычный синтез речи с нейросетевыми голосами и настройкой произношения и пауз через SSML; отличается сравнительно низкой ценой и покомандной интеграцией с экосистемой AWS[17].
- Microsoft Azure AI Speech — по независимым оценкам качества голоса (Mean Opinion Score) нередко превосходит Amazon Polly и предлагает функцию клонирования голоса, отсутствующую у Polly[18].
- Google Cloud Text-to-Speech — построен на технологии WaveNet и последующих моделях Neural2, поддерживает создание кастомных голосов; по ряду сравнений качество голоса оценивается выше, чем у Amazon Polly[19].
Сводное сравнение
[править | править код]| Критерий | Web Speech API (браузерный) | ElevenLabs / Azure / Polly / Google Cloud TTS (коммерческие облачные) |
|---|---|---|
| Стоимость | Бесплатно, встроено в браузер | Платно, по объёму символов/минут (есть ограниченные бесплатные тарифы) |
| Качество голоса | Механическое, системные голоса ОС | Нейросетевое, близкое к естественной речи, с эмоциональной окраской |
| Клонирование голоса | Не поддерживается | Поддерживается (ElevenLabs, Azure) |
| Офлайн-режим | Ограниченно (on-device recognition в отдельных браузерах) | Как правило, недоступен — облачный сервис |
| Интеграция | Нативный JavaScript-интерфейс браузера | REST/WebSocket API с ключом доступа, отдельная регистрация у поставщика |
| Единообразие между платформами | Низкое, зависит от браузера и ОС | Высокое — поведение одинаково независимо от браузера пользователя |
Таким образом, Web Speech API и коммерческие нейросетевые TTS-сервисы решают близкую задачу разными средствами: первый — это бесплатный, но ограниченный по качеству и предсказуемости браузерный примитив, вторые — платная, но значительно более качественная и управляемая инфраструктура, требующая интеграции стороннего API в приложение. На практике веб-разработчики нередко используют Web Speech API для простых сценариев (озвучивание интерфейса, базовая доступность) и подключают коммерческие TTS-провайдеры там, где важны естественность голоса, эмоциональная выразительность или клонирование голоса — например, при производстве подкастов, аудиокниг, дубляжа видео и голосовых ассистентов[20].
Связанные технологии
[править | править код]- Web Audio API — обработка и синтез аудиосигналов в браузере.
- Media Capture and Streams (getUserMedia) — получение аудио- и видеопотока с устройств пользователя, используется совместно с SpeechRecognition.
- Нативные платформенные API распознавания и синтеза речи (Dictation на macOS, распознавание речи Windows) — используются некоторыми браузерами как локальный движок вместо облачного сервиса.
См. также
[править | править код]Примечания
[править | править код]- 1 2 3 Web Speech API. MDN Web Docs. Дата обращения: 15 сентября 2026. Архивировано 15 сентября 2026 года.
- 1 2 3 Web Speech API. W3C, Audio Community Group. Дата обращения: 15 сентября 2026. Архивировано 16 сентября 2026 года.
- 1 2 3 4 5 6 7 Web Speech API: What Works, What Doesn't, and How to Improve It. Towards Data Science (23 января 2025). Дата обращения: 15 сентября 2026. Архивировано 23 февраля 2026 года.
- ↑ Is your browser a polyglot? Chen Hui Jing (15 января 2020). Дата обращения: 15 сентября 2026. Архивировано 16 сентября 2026 года.
- 1 2 Speech synthesis. Web Platform DX / web-features. Дата обращения: 15 сентября 2026. Архивировано 16 сентября 2026 года.
- 1 2 On-device speech recognition explainer. WebAudio/web-speech-api, GitHub. Дата обращения: 15 сентября 2026. Архивировано 15 сентября 2026 года.
- 1 2 3 Using the Web Speech API. MDN Web Docs. Дата обращения: 15 сентября 2026. Архивировано 15 сентября 2026 года.
- ↑ Implementing Speech Recognition and Speech Synthesis with Web Speech API. Medium. Дата обращения: 15 сентября 2026. Архивировано 15 сентября 2026 года.
- ↑ Speech recognition. Web Platform DX / web-features. Дата обращения: 15 сентября 2026. Архивировано 15 сентября 2026 года.
- ↑ Intelligent Conversational Bot for Massive Online Open Courses (MOOCs). Дата обращения: 15 сентября 2026. Архивировано 16 сентября 2026 года.
- ↑ Web Speech API: Server-side Data Privacy. Chromium HTML5 Google Group. Дата обращения: 15 сентября 2026. Архивировано 15 сентября 2026 года.
- ↑ Speech recognition privacy issues and solutions. W3C machine-learning-workshop, GitHub Issues. Дата обращения: 15 сентября 2026. Архивировано 15 сентября 2026 года.
- 1 2 ElevenLabs. Wikipedia (English). Дата обращения: 15 сентября 2026. Архивировано 15 сентября 2026 года.
- ↑ ElevenAPI — ElevenLabs the most powerful AI audio APIs. ElevenLabs. Дата обращения: 15 сентября 2026. Архивировано 15 сентября 2026 года.
- ↑ Text to Speech (TTS) API. ElevenLabs. Дата обращения: 15 сентября 2026. Архивировано 16 сентября 2026 года.
- ↑ ElevenLabs — AI-платформа: синтез речи, музыка, видео, голосовые агенты. Дата обращения: 15 сентября 2026. Архивировано 15 сентября 2026 года.
- ↑ Amazon Polly vs Google Cloud Text-to-Speech comparison. PeerSpot. Дата обращения: 15 сентября 2026. Архивировано 15 сентября 2026 года.
- ↑ Microsoft Azure AI Speech vs. Amazon Polly. Unreal Speech. Дата обращения: 15 сентября 2026. Архивировано 15 сентября 2026 года.
- ↑ Amazon Polly vs. Google Cloud Text-to-Speech. Unreal Speech. Дата обращения: 15 сентября 2026. Архивировано 15 сентября 2026 года.
- ↑ 31 инструмент, чтобы превратить текст в речь. Дата обращения: 15 сентября 2026.