Герман Гаража / Приложения

TTS

Бесплатная озвучка текста для Mac голосами macOS, в том числе Siri. Вставленный текст или перетащенный файл читается вслух или сохраняется в MP3, без интернета; числа, даты и единицы по-русски и по-украински читаются правильно.

Apple silicon, macOS 13 или новее. Интерфейс на английском, украинском и русском.

Для продвинутых пользователей и языковых моделей

TTS говорит собственными голосами Apple. Речь начинается примерно через полсекунды и создаётся на самом Mac, поэтому приложение работает без интернета и ничего никуда не отправляет. Проверено, пока Siri читала длинный текст: процессы речи Apple не открыли ни одного сетевого соединения. Единственное, зачем приложение выходит в сеть, это ежедневная проверка обновлений.

Кнопка голоса открывает голоса языка текста с именами из Системных настроек: «Голос 1», «Голос 2» и так далее у Siri, иначе лучший голос macOS (украинский: Леся). Щелчок по имени выбирает голос; кнопка с волной рядом включает образец, который голос тут же произносит на выбранной скорости. Голоса Siri ещё не загружены: «Загрузить голоса Siri…» открывает нужную страницу Системных настроек. Скорость от 0,6× до 3,5×, её задаёт сам голос, слышна сразу; «Сохранить MP3» записывает весь текст тем же голосом и с той же скоростью. Предложение, которое звучит, подсвечено, текст прокручивается за ним; Command-плюс и Command-минус меняют размер текста. Пробел запускает и ставит на паузу, стрелки перематывают на 15 секунд.

Как это устроено

Голоса Apple входят в macOS, и её лицензия разрешает созданную ими речь для личного некоммерческого использования.

Вопросы

Текст уходит с Mac?

Нет. Голоса говорят на самом Mac; в сеть приложение ходит только за проверкой обновлений.

Работает без интернета?

Да. Интернет нужен только один раз, чтобы загрузить голос Siri в Системных настройках.

Какие есть голоса?

Голоса macOS: голоса Siri на языках, на которых говорит Siri, среди них русский (Голос 1 и Голос 2), английский, немецкий, французский, испанский, итальянский, португальский, нидерландский, турецкий, арабский, японский, корейский и китайский, и остальные голоса Apple примерно для сорока языков, среди них украинский (Леся). Добавить или склонировать голос в приложении нельзя.

Откуда берутся голоса Siri?

Из Системных настроек, бесплатно. «Загрузить голоса Siri…» в списке голосов приложения открывает нужную страницу: на macOS 26 и новее «Универсальный доступ», «Чтение вслух», затем ⓘ рядом с «Голос системы» и язык; на macOS 13–15 «Универсальный доступ», «Устный контент», «Голос системы», «Управление голосами…».

Может читать выделенный текст в любом приложении?

Нет: это умеет сама macOS, в Системных настройках, «Универсальный доступ», «Чтение вслух» («Устный контент» до macOS 26), «Произносить выбранное».

Что стало с голосами версий 0.1 и 0.2?

Они были из скачиваемой модели Supertonic 3, которая хуже справлялась с числами и длинными текстами. Версия 0.3 говорит голосами macOS и при первом запуске удаляет ту модель, 401 МБ.

Обновления

Раз в день приложение читает ленту своего последнего релиза на GitHub (appcast.xml) через Sparkle. О самом Mac ничего не отправляется. Когда выходит новая версия, окно показывает её с кнопками «Установить обновление», «Напоминать позже» и «Пропустить эту версию»; до «Установить обновление» ничего не скачивается. «Проверить наличие обновлений» в меню приложения проверяет сразу.

Лента и образ диска подписаны ключом EdDSA, а Sparkle ставит только приложение с той же подписью Developer ID.

Настройки и удаление

Настройки (голоса, выбранные для каждого языка, скорость, размер текста) и время последней проверки обновлений лежат в defaults com.geragaraza.tts. Больше ничего не хранится: ни текста, ни истории, ни сохранённого состояния окна.

Чтобы удалить TTS: выйти, TTS.app в Корзину и defaults delete com.geragaraza.tts. Голоса Siri остаются в macOS; удаляются они в Системных настройках.

Если ставили через Homebrew, brew uninstall --zap tts закрывает его и удаляет приложение и настройки.

Подробности

English Українська Русский