From 91b090a4577c4b848cbd9087b90683901d168217 Mon Sep 17 00:00:00 2001 From: jondean-kami Date: Tue, 29 Jul 2025 11:24:55 +1200 Subject: [PATCH] Handle missing timestamps by using previous end time for word processing --- api/src/inference/kokoro_v1.py | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/api/src/inference/kokoro_v1.py b/api/src/inference/kokoro_v1.py index a627dbb..a440d57 100644 --- a/api/src/inference/kokoro_v1.py +++ b/api/src/inference/kokoro_v1.py @@ -278,6 +278,7 @@ class KokoroV1(BaseModelBackend): f"Processing chunk timestamps with {len(result.tokens)} tokens" ) if result.pred_dur is not None: + previous_end_time = 0 try: # Add timestamps with offset for token in result.tokens: @@ -293,8 +294,15 @@ class KokoroV1(BaseModelBackend): if not token.text or not token.text.strip(): continue - start_time = float(token.start_ts) + current_offset - end_time = float(token.end_ts) + current_offset + if token.start_ts is None: + start_time = previous_end_time + end_time = start_time + logger.debug(f"Missing timestamp for word '{token.text}'") + else: + start_time = float(token.start_ts) + current_offset + end_time = float(token.end_ts) + current_offset + previous_end_time = end_time + word_timestamps.append( WordTimestamp( word=str(token.text).strip(),