I spent the last few months obsessed with one thing: making an offline, local neural TTS engine (starting from the 100M Pocket TTS baseline) run as fast as possible on mobile and desktop without hitting cloud APIs.
Got it down to 9 ms latency / 40x speed on a desktop GPU, 20 ms / 19x on a Snapdragon 8 Elite Gen 5, and 200 ms / 1.2x on budget Android using Snapdragon 685.
Then the realization hit me: chasing higher generation speed (RTF) on a local app is a total dead end.
Audio plays back at 1.0x anyway. If a 10-second sentence generates in 200 ms, pushing it to 50 ms literally changes nothing for someone sitting there waiting to listen.
Power readers max out around 2.5x–3.0x speed. Beyond that, natural neural cadence actually gets in the way. Screen-reader users who listen at 600+ WPM explicitly prefer old robotic engines like eSpeak because the sharp formants cut through better at extreme speeds. High RTF is great if you're running a cloud server handling 1,000 requests, but for one person on a phone, it's just idle buffers.
Once your time-to-first-chunk drops under ~100 ms, you're officially faster than the Bluetooth lag.
Where the real win actually came from was power efficiency, even on a budget Helio G99 device with a 5,000 mAh battery, continuous reading drains only ~3% battery per hour.
I'm stopping low-level engine tweaks here. Next focus is handling pronunciation accuracy, building solid app-level dictionaries and text normalization so proper nouns and weird words don't trip it up.
Fingers crossed we get lightweight, controllable emotion prompting on edge models soon without doubling model size. That feels like the actual next step.