Show HN: Phonon TTS on WebGPU, 44MB, 115x real time, with live word timings Developer blixt released a second runtime for Gradium's Phonon 31M text-to-speech model that keeps the whole generation loop on the GPU in WebGPU kernels, streaming audio in about 3 ms and running at 115x real time versus 31x for the original runtime on the same devices. The runtime downloads 44 MB (under 40 MB brotli-compressed) instead of the official 67 MB because every large matrix, including the audio decoder, is stored as int8, and it derives per-word timings from one of the model's attention heads while it speaks. On an iPhone 17 Pro the runtime reaches 26x real time against 13x for the original; code and benchmarks are at github.com/blixt/phonon and a demo at blixt.xyz/phonon. I tried Gradium's Phonon 31M text-to-speech model and was blown away by its quality to size ratio. I needed timings for every word to be able to highlight them, so I wrote a second runtime for it with a different design: the whole generation loop stays on the GPU in WebGPU kernels written specifically for this by Claude Opus 5.5. When initialized, it can start streaming audio in about 3 ms, and it only needs to download 44 MB <40 MB brotli'd instead of the official 67 MB, because every large matrix is stored as int8, the audio decoder included. On the same devices it runs at 115x real time vs. 31x on my M3 Max, and 26x against 13x on my iPhone 17 Pro. The timings are read from one of the model's attention heads while it speaks, so we practically get the time offsets of words for free. Demo: blixt.xyz/phonon Code and benchmarks: github.com/blixt/phonon Gradium did an amazing job on this model, and I'm still wrapping my head around that you can get realtime human-sounding speech from a 40 MB file on a website. Comments URL: https://news.ycombinator.com/item?id=50369215 https://news.ycombinator.com/item?id=50369215 Points: 1 Comments: 0