Тимур ТурдыевНаписать

кейс · 2026

Simple Talk: свой сервис расшифровки разговоров, только на Маке

Сделал приложение для Мака, которое записывает созвоны двумя дорожками и расшифровывает разговоры прямо на компьютере: реплики по голосам, обещания со сроками, ответы на вопросы. Звук и текст не уходят в интернет. За первые два дня вышли три версии.

Swift 6SwiftUIScreenCaptureKitPythonGigaAMSilero VADMLXSQLite
Расшифровка созвона в Simple Talk
Разговор в Simple Talk: реплики по голосам, выжимка, обещания. Имена выдуманы.

Что было ​

Мне нужно было расшифровывать разговоры: записи с диктофона, звонки с телефона, созвоны в Телемосте и Telegram. Сервисы вроде speech2text.ru делают это хорошо, но запись при этом уходит на чужой сервер, а в разговорах договорённости, цены и имена. Хотелось того же, но чтобы всё считалось на своём компьютере.

Сначала это была команда в моём терминальном помощнике tim. Через несколько часов стало понятно, что нужен не вывод в терминал, а окно: плеер, текст, по которому можно кликнуть, переименование голосов. Я вынес всё в отдельное приложение.

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

Сначала замер, потом выбор модели. Перед тем как писать приложение, я прогнал модели распознавания на 200 настоящих телефонных фразах с ручной расшифровкой. GigaAM v3 ошибается в 14-15% слов, Whisper large-v3 на тех же фразах - в 22%. Заодно проверил, помогает ли голосование нескольких моделей. Модели одного семейства ошибаются в одних и тех же местах, поэтому голосование не дало ничего, и в приложение оно не пошло.

Запись созвона двумя дорожками. Свой голос приложение пишет с микрофона, а собеседника берёт прямо из системного звука через ScreenCaptureKit, а не из динамика. Поэтому в тексте сразу понятно, кто что сказал, и можно говорить в наушниках. Когда другое приложение берёт микрофон, Simple Talk сам предлагает записать. Запись идёт без потерь.

Голоса узнаются. Если запись одной дорожкой, например с диктофона, голоса разделяются моделью. Голос достаточно назвать один раз: дальше человек подписан и в прошлых, и в следующих разговорах.

Помощник тоже на Маке. Выжимка, обещания со сроками («до пятницы» становится датой), ответы на вопросы о своих разговорах со ссылкой на место в записи, итоги недели. Всё это считает локальная модель через MLX, без сети.

Ничего не уходит в интернет. Приложение ходит в сеть только за моделями при первом запуске, с подтверждением и размером, и за проверкой обновлений, если её включить. Аккаунта и сервера нет. Записи, тексты и голоса лежат в папке пользователя.

Свои сборки без App Store. Приложение раздаётся с этого сайта: архив, контрольная сумма и манифест последней версии. Кнопка скачивания и проверка обновлений в самом приложении читают один и тот же файл.

Что вышло ​

Пользуюсь сам: записи с диктофона, звонки с Android через Simple Record и созвоны. За первые два дня проекта вышли три выпуска, все 20 октября 2026:

  • 0.4.0 - первая версия для скачивания: расшифровка с голосами и плеером, вопросы по разговорам, обещания, люди, итоги недели.
  • 0.4.1 - запись созвонов на macOS 27, блокнот поверх окна созвона, календарь со сроками, выгрузка в Obsidian, отправка записи в чат, Диктофон iPhone и «Открыть с помощью».
  • 0.4.2 - распознавание больше не теряет слова на стыках реплик и тихие фразы собеседника.

Страница приложения и инструкция: timcode.ru/simple-talk.

Вывод ​

Главное решение здесь не модель, а порядок: сначала замер на своих данных, потом код. Он сразу отсёк то, что казалось хорошей идеей (голосование трёх моделей), и дал цифры, которые не стыдно показать рядом со сравнением с Whisper.

© 2014-2026 Тимур ТурдыевСайт и справочник работают на VPS от AdminVPS