← HomeРусская версия

Case study · Paid product

Acoustic — turn recorded conversations into notes you can verify

I built Acoustic to make long conversations easier to review without repeatedly searching through the recording. The transcript, speaker labels and summary stay connected to the audio, so users can listen to a relevant passage directly from the text. A transcript with speaker names can be saved as a file in the Telegram bot chat and used for further analysis.

My role
Product design, architecture and development
Status
Live paid product · Trial credits available
Format
Telegram bot and Mini App; Russian-language experience

The problem

After a meeting or call, people often need to recover a particular commitment, amount or promise. Replaying the whole conversation takes time, while a summary may leave out context or get something wrong. I designed Acoustic so users can find the relevant information in the summary and check it against the recording.

How it works

  1. TranscriptionUsers send a voice note or audio file. They can request a transcript with speaker labels or choose transcription without diarization.
  2. Speaker namesOn the speaker screen, users listen to samples of each voice before entering a name. The names appear in the transcript, which can be saved to the chat as a text file for further analysis, including with another model.
  3. Transcript and playbackThe current passage is highlighted during playback. Selecting another passage starts the recording at that point.
  4. A summary linked to its sourcesFrom the completed transcript, users can separately request facts and figures, agreements, action items and open questions. Summary items link back to the original passages. When a finding draws on several parts of the conversation, users can listen to each one.

A separate YouTube workflow retrieves available captions as a text file without running speech recognition again. When the audio can be retrieved, it can also be transcribed, with optional speaker diarization.

What I designed and built

I designed the recording workflow from upload through review and export. I built the Telegram bot, Mini App and backend, connecting playback to the transcript and summary. I also built a self-hosted STT Gateway around existing open models, integrated an independent cloud service, and implemented long-running jobs and payments. I use AI coding agents for implementation and take responsibility for the decisions, evaluation and releases.

Design and engineering decisions

Check a finding without searching the whole recording
One finding may depend on passages from different parts of a conversation. I preserved their timestamps and added separate source links to summary items. Users can hear the original words rather than relying solely on the model’s account.
Listen before naming a speaker
Diarization returns speaker labels, but users need to identify the people behind them. I placed voice samples beside the naming controls. Once entered, names are used both in the app and in exported text.
Keep the product independent of a speech provider
The self-hosted STT Gateway and cloud service use a common interface and return results in the same format. The rest of the application can work with either without changes to transcript playback or review. The cloud route also allows processing to run independently of my server.
Reuse the transcript and agree the cost upfront
Summaries use the completed transcript, so the recording does not need to be transcribed again. Users approve the cost before a paid operation. The server reserves the balance and caps the final charge at that amount. Long-running jobs retain their state.

How I evaluate it

I compare transcripts and speaker labels with the original audio, listening to disputed passages to check who said what. When choosing a model for summaries, I compared whether it retained important facts from long conversations, including details from the middle of the recording.

Automated tests cover playback from source links, speaker names, file delivery, job handling and payment calculations.

Current status

Acoustic is a live paid Telegram product with trial credits. Users fund an internal balance through Telegram Stars. The bot is the entry point; the Mini App provides transcript reading, speaker naming and playback. The product is designed primarily for Russian speech.

Bot and processing
Python, python-telegram-bot, Telegram Bot API; queues and durable jobs
Mini App
React, TypeScript, Vite
Data and AI
SQLite; STT Gateway, cloud speech recognition, LLM-generated notes
Payments and operations
Balance ledger, Telegram Stars, Docker Compose

Limitations

Noise and overlapping speech can cause transcription and speaker-label errors. Summaries should be checked against the recording. YouTube features depend on whether captions and audio can be retrieved; captions alone do not contain speaker labels.

Want to talk about work like this?

Email or Telegram — I am happy to walk through any of the decisions above.