Streaming TTS now carries word-level speech marks

A new endpoint streams speech marks alongside audio, so captions and text highlighting no longer need the non-streamed API.

Developer Relations · SpeechifyAI Labs
1 min read

Text highlighting, captions, and audio-text sync on the streaming path have had to wait for the non-streamed POST /v1/audio/speech response to get word timing. POST /v1/audio/stream/with-timestamps closes that gap: the same low-latency Server-Sent Events stream as POST /v1/audio/stream, with word-level speech marks interleaved alongside the audio as it arrives.

POST /v1/audio/stream itself is unchanged - this ships as a new route rather than a flag, so the existing response shape stays exactly as it was for every caller not opting in.

Marks are produced by the streaming-native models (simba-3.0, simba-3.2); the legacy simba-english and simba-multilingual models don’t support them on the streaming path.

See the docs changelog entry for the full event shape and a working example.

Privacy preferences

Choose what we may store on this device. You can change this at any time from the footer.

Strictly necessary

Sign-in, security, load balancing, and remembering your privacy choices. These cannot be switched off.

Always on

Analytics

How the site is used in aggregate - which pages get read, where people get stuck - so we can improve it.

Marketing

Measures which campaigns bring people here, and lets us show relevant ads on other platforms.