What could cause inconsistent speaking speed within a single generation (~10% of the time)?
Checks
- This template is only for research question, not usage problems, feature requests or bug reports.
- I have thoroughly reviewed the project documentation and read the related paper(s).
- I have searched for existing issues, including closed ones, no similar questions.
- I am using English to submit this issue to facilitate community communication.
Question details
I'm running into an issue and would like some guidance on where to look. When generating TTS output, the speaking speed within a single generation is sometimes not consistent throughout the sentence. This happens roughly 10% of the time — it's not reproducible on every run of the same text, and it doesn't affect a fixed position in the sentence (it can occur near the start, middle, or end).
What I'm observing
- I generate audio for the same input text multiple times.
- On most runs, the pacing is even and consistent across the whole sentence.
- On some runs (roughly 1 in 10), a portion of the sentence is spoken noticeably faster or slower than the rest, while the surrounding parts sound normal.
- Which portion is affected varies between runs — it is not always the same segment.
Example input
This is a text that is supposed to be read at the same speed, but it is not being read at the same speed.On affected runs, a segment such as "is supposed to be read at the same speed, but it" may be spoken at a noticeably faster pace than the rest of the sentence. In other runs, a different segment is spoken slower instead. The rest of the sentence sounds fine either way.
What I'd expect
The speaking speed to remain consistent across the entire generated sentence, on every run.
Context
- I originally observed this with Bengali text, but the issue itself doesn't seem language-specific — I haven't confirmed if it also occurs in English or other languages.
- It seems stochastic rather than tied to specific words, since the same text doesn't always trigger it and the affected segment location changes between runs.
Environment
- Model: OmniVoice TTS
- OS: Ubuntu 22, Ubuntu 24
- GPU: RTX 3090, RTX 4090, RTX 5090
My questions
- Is this a known/expected behavior, or something unusual?
- Are there any inference settings (e.g., seed, sampling temperature, chunk size) that could reduce or eliminate this variability?
- If I wanted to look into fixing this myself, which layer or part of the pipeline would you recommend focusing on first — e.g., the duration/length predictor, text chunking/segmentation logic, or the audio concatenation step? Any pointers toward the relevant module(s) would be really helpful.
Source: k2-fsa/OmniVoice