✅ Подходит: разработчикам, командам контента и тем, кто строит голосовой ИИ-агент с API, streaming и клонированием голоса. ❌ Не подходит: тем, кому нужен офлайн-движок, полностью прозрачная публичная ценовая сетка или подтверждённые условия хранения данных из открытых источников. 💡 Ключевое преимущество: у Play.ht есть сразу несколько путей интеграции — HTTP streaming, WebSocket streaming, batch TTS и SDK для Node.js/Python.
Короткий вердикт: Play.ht — практичный API-first сервис для синтеза речи, если вам важны realtime-сценарии и предсказуемые технические лимиты. По текущим официальным материалам лучше всего выглядят Play3.0-mini для низкой latency и PlayDialog/PlayDialog-turbo для разговорных сценариев. Но перед продакшеном есть две редакционные оговорки: точные публичные цены в этой проверке не подтверждены, а по приватности и географической доступности остаются пробелы.
Разработчик: PlayHT / PlayAI (в официальных материалах встречается смешанный брендинг).
Тип: API, web, SDK.
Официальный URL: https://docs.play.ht/reference/api-getting-started
Дата проверки: 2026-08-19.
Актуальные версии и состояние: публичные docs сфокусированы на моделях Play3.0-mini, PlayDialog и PlayDialog-turbo; пакет playht на npm — 0.21.0, пакет pyht на PyPI — 0.1.14. Репозиторий pyht на GitHub архивирован 2026-04-07, поэтому для Python стоит отдельно проверять, что именно вы будете поддерживать в продакшене.
Что умеет
- Синтезировать речь через HTTP streaming endpoint
POST https://api.play.ht/api/v2/tts/stream. - Работать в realtime через WebSocket: сначала получить
websocket_urlчерезPOST https://api.play.ht/api/v4/websocket-auth, затем обмениваться сообщениями начала, бинарным аудио и завершением. - Использовать несколько актуальных моделей: Play3.0-mini, PlayDialog, PlayDialog-turbo; PlayHT2.0 в документации отмечен как legacy.
- Давать мультиязычный синтез в Play3.0-mini: на странице моделей подтверждена поддержка 36 языков и заявлена стабильная задержка ниже 200 мс.
- Поддерживать batch TTS, voice cloning и интеграции через SDK для Node.js и Python.
- Возвращать аудио в форматах mp3, mulaw, wav, ogg и flac на HTTP TTS endpoint, но для PlayDialog-turbo в публичных материалах есть расхождения по реально доступным форматам — это нужно тестировать на вашем аккаунте.
Как использовать
Самый понятный сценарий — быстро поднять озвучку текста через HTTP streaming, а потом при необходимости перейти на WebSocket для более живого UX.
- Создайте API-доступ. По официальной инструкции нужно зайти на
https://play.ht/studio/api-access, авторизоваться, нажатьGenerate Secret Keyи скопироватьUser IDс той же страницы. - Выберите способ интеграции. Для первого запуска достаточно curl или одного из SDK:
playhtдля Node.js либоpyhtдля Python. - Определите модель и длину текста. Если вам нужен длинный запрос, практичнее смотреть на Play3.0-mini: по HTTP TTS docs он принимает до 20 000 символов за запрос; для остальных движков документация указывает лимит 2 000 символов.
- Соберите streaming-ответ. Для файловой озвучки используйте HTTP endpoint и сохраняйте поток в mp3/wav или другой подтверждённый формат. Для разговорного интерфейса с быстрым откликом переключайтесь на WebSocket flow.
- Проверьте лимиты до релиза. У Play.ht лимиты зависят от плана, поэтому перед запуском реального сервиса лучше сразу прикинуть requests/minute и chars/minute, а не полагаться на «как-нибудь выдержит».
HTTP TTS: POST https://api.play.ht/api/v2/tts/stream WebSocket auth: POST https://api.play.ht/api/v4/websocket-auth
Практический workflow: если вы делаете озвучку статей, уведомлений или голоса для ассистента, начните с HTTP streaming и только потом усложняйте архитектуру WebSocket-каналом. Это дешевле по времени интеграции и проще в отладке. Если же вы целитесь в сценарии с живым ответом в реальном времени, WebSocket путь логичнее с самого начала.
Тарифы и ограничения
Ниже — только то, что удалось подтвердить по официальной документации. Точные текущие цены в валюте и с периодом оплаты не были надёжно подтверждены из официальной pricing page в этой сессии, поэтому я не подставляю цифры.
| План | Цена | Лимиты |
|---|---|---|
| Hacker/Pro | Не подтверждено на 2026-08-19 | 10 запросов/мин для POST /v2/tts/stream; 35 000 символов/мин |
| Startup | Не подтверждено на 2026-08-19 | 25 запросов/мин; 87 500 символов/мин |
| Growth | Не подтверждено на 2026-08-19 | 100 запросов/мин; 350 000 символов/мин |
| Enterprise | Индивидуально | Кастомные лимиты |
Проверено: 2026-08-19.
Что ещё важно: на странице HTTP TTS указано ограничение текста до 20 000 символов для Play3.0-mini и до 2 000 символов в остальных случаях. При этом страница rate limits отдельно говорит, что /v2/tts/stream можно вызывать с объёмом до 20 000 символов на запрос. Это выглядит как не до конца синхронизированные публичные материалы; если вы не используете Play3.0-mini, перепроверьте поведение своей модели до запуска.
Форматы вывода: общий HTTP TTS docs перечисляет mp3, mulaw, wav, ogg и flac. Но там же есть оговорка, что PlayDialog-turbo поддерживает только wav, тогда как release notes Node SDK 0.21.0 говорят о добавлении для turbo форматов ogg, mulaw и flac в дополнение к wav и mp3. Практический вывод: поддержку форматов для PlayDialog-turbo нужно считать спорной до теста в вашем окружении.
Работа с данными и приватность
С точки зрения данных Play.ht — это облачный API, поэтому сервис как минимум получает тот текст, который вы отправляете на синтез, а также связанные параметры запроса: модель, голос, формат вывода и служебные поля авторизации. В WebSocket-сценарии добавляется отдельный шаг с получением временного websocket_url.
- Что видит сервис: текст для TTS, параметры генерации, идентификаторы доступа; для voice cloning публичный source pack подтверждает наличие функции, но не раскрывает полный цикл обработки голосовых данных.
- Использование данных для обучения: не подтверждено в текущем наборе источников.
- Где хранятся данные: не подтверждено в текущем наборе источников.
- Privacy Policy: в предоставленном source pack нет прямой проверенной ссылки на политику приватности, поэтому этот блок нельзя закрыть честно и полно.
- On-prem caveat: для Python-пакета подтверждено, что gRPC для Play3.0-mini доступен только клиентам Play On-Prem.
Редакционное ограничение: если вы собираетесь отправлять персональные данные, внутренние тексты компании или голосовые образцы, текущих публичных материалов из source pack недостаточно, чтобы дать уверенное «да» по приватности. Практически это означает одно: перед закупкой и продом запросите у вендора актуальную privacy policy, условия retention и регион хранения данных.
Плюсы и минусы
Плюсы
- Есть два основных realtime-пути интеграции: HTTP streaming и WebSocket streaming.
- Play3.0-mini в официальной документации описан как актуальная realtime-модель с поддержкой 36 языков и задержкой ниже 200 мс.
- Лимиты по запросам и символам документированы по планам, что полезно для capacity planning.
- Доступны SDK для Node.js и Python; по состоянию на проверку версии —
playht0.21.0 иpyht0.1.14. - Есть несколько продуктовых режимов под разные задачи: batch TTS, voice cloning, REST, WebSocket и частично gRPC.
Минусы
- Точные актуальные публичные цены не удалось надёжно подтвердить из официальной pricing page на 2026-08-19.
- В текущем наборе источников нет прямой подтверждённой privacy policy, а также нет ясности по обучению на пользовательских данных и регионам хранения.
- Публичные материалы местами расходятся: например, по лимиту символов вне Play3.0-mini и по форматам PlayDialog-turbo.
- По Node.js есть несогласованность между документацией и npm: в docs встречаются старые упоминания миграции 0.10.x, хотя на npm актуальна 0.21.0.
- Репозиторий
pyhtна GitHub архивирован, что повышает риск для тех, кто хочет ориентироваться именно на репозиторий как на живой источник поддержки. - Географическая доступность, оплата из РФ и наличие русского интерфейса не подтверждены текущими официальными материалами.
Доступность и язык
- Платформы: API по HTTP, WebSocket; SDK для Node.js и Python; gRPC упомянут для Python, но Play3.0-mini по gRPC подтверждён только для Play On-Prem клиентов.
- Web / Studio: наличие web-кабинета косвенно подтверждается страницей
play.ht/studio/api-accessдля выдачи ключей. - Русский язык: русский интерфейс не подтверждён. Мультиязычность модели подтверждена только для Play3.0-mini, где заявлены 36 языков.
- Отдельные языковые ограничения: PlayDialog-turbo по своей странице поддерживает только english и arabic.
- Доступность для РФ: официальные источники из этого пакета не дают надёжного ответа, работает ли сервис без VPN, ограничена ли регистрация или блокируется ли оплата из РФ.
- Способы оплаты: не подтверждены.
- Self-hosted / open weights: если вам нужен полностью локальный стек или open weights, Play.ht по текущим публичным материалам не выглядит очевидным выбором; подтверждён только частный on-prem caveat для gRPC Play3.0-mini.
Альтернативы
Честное ограничение: в текущем source pack нет проверенных официальных страниц внешних конкурентов, поэтому я не буду придумывать вам сравнение с другими брендами. Вместо этого — практический выбор между режимами внутри экосистемы Play.ht, если под «альтернативой» вы имеете в виду другой способ внедрения.
- PlayHT HTTP TTS API — если вам нужен прямой REST-сценарий для генерации озвучки и сохранения результата в файл.
- PlayHT WebSocket API — если вы делаете realtime-приложение, где важен быстрый отклик и постоянное соединение.
- PlayHT Node.js SDK — если ваш стек на JavaScript/TypeScript и вы хотите быстрее дойти до рабочего прототипа.
- pyht Python SDK — если интеграция на Python важнее, чем идеальная ясность по жизненному циклу репозитория.
- PlayDialog-turbo — если нужен быстрый разговорный TTS на англо- или арабоязычных сценариях и вы готовы отдельно проверить форматы вывода.
Практический вердикт: выбирать Play.ht стоит не по маркетингу, а по типу нагрузки. Для обычной серверной озвучки берите HTTP TTS. Для голосового интерфейса — WebSocket. Для Python-команды закладывайте дополнительную проверку из-за архивированного репозитория. Для юридически чувствительных кейсов сначала закрывайте приватность документами, а не кодом.
Источники
- Quickstart
- Authentication
- Text to speech HTTP streaming
- Rate Limits
- Models
- WebSocket API
- Dialog Turbo (running on Groq Silicon)
- playht – npm
- Releases · playht/playht-nodejs-sdk · GitHub
- pyht · PyPI
- GitHub – playht/pyht: PlayHT Python SDK – AI Text-to-Speech Streaming & Voice Cloning API · GitHub
Вопросы и ответы
Можно ли использовать Play.ht без SDK?
Да. Quickstart прямо ведёт к первому запросу через curl и HTTP streaming endpoint POST /api/v2/tts/stream. SDK удобны, но не обязательны.
Какие модели у Play.ht сейчас считать актуальными?
По текущим публичным docs — Play3.0-mini, PlayDialog и PlayDialog-turbo. PlayHT2.0 в документации помечен как legacy.
Сколько текста можно отправить за один запрос?
На странице HTTP TTS указано: до 20 000 символов с Play3.0-mini и до 2 000 символов иначе. Отдельная страница rate limits для /v2/tts/stream говорит о потолке до 20 000 символов на запрос, поэтому для не-mini движков лимит лучше перепроверить на практике.
Есть ли SDK для Node.js и Python?
Да. На момент проверки npm показывает playht 0.21.0, а PyPI — pyht 0.1.14 с требованием Python 3.8+. Но GitHub-репозиторий pyht архивирован 2026-04-07.
Сколько стоит Play.ht и доступен ли он из РФ?
Точные цены из официальной pricing page в этой проверке не подтверждены, поэтому здесь приведены только лимиты по планам. По доступности и оплате из РФ у текущего набора источников тоже недостаточно данных для честного вывода.