back

AI narration and text-to-speech platform

Local GPU text-to-speech and audiobook narration built on Qwen3-TTS

Role
Fullstack developer
Category
AI application
Tags
Next.js, TypeScript, Python, PyTorch, CUDA, Qwen3-TTS, SQLite

A narration platform that runs the model locally instead of calling a hosted speech API. The front end is Next.js and TypeScript; the backend is Python with SQLite, wrapping Qwen3-TTS 1.7B running on the GPU through PyTorch and CUDA.

The application side covers what you need for long-form narration rather than one-off clips: generating speech from text, keeping a history of what has been produced, custom and cloned voices, and stitching output into audiobook-length audio. Long text is the interesting constraint — a demo that reads one sentence tells you nothing about what happens on a chapter.

Most of the real work was inference rather than interface. Running a 1.7B model on a single RTX 3060 Ti means paying attention to how much of it fits in VRAM at once, batching sensibly, and experimenting with Flash Attention to see what it actually buys at this size. It is a good exercise in the difference between calling an AI API and being responsible for the thing generating the audio.

This project also fed back into work: the same interest in offline speech synthesis is what led to the token announcement work in the hospital queue system, where announcements need to be generated on-device, sound consistent, and never depend on an internet connection.