From 28ccfbfc51068a663a80764e14074df5edf2b5ba Mon Sep 17 00:00:00 2001
From: kongdeqiang <kongdeqiang960204@163.com>
Date: 星期五, 13 三月 2026 17:41:41 +0800
Subject: [PATCH] 提交

---
 funasr/utils/timestamp_tools.py |   11 +++++++----
 1 files changed, 7 insertions(+), 4 deletions(-)

diff --git a/funasr/utils/timestamp_tools.py b/funasr/utils/timestamp_tools.py
index 3d8fd10..37ce886 100644
--- a/funasr/utils/timestamp_tools.py
+++ b/funasr/utils/timestamp_tools.py
@@ -84,7 +84,8 @@
         timestamp_list.append([_end * TIME_RATE, num_frames * TIME_RATE])
         new_char_list.append("<sil>")
     else:
-        timestamp_list[-1][1] = num_frames * TIME_RATE
+        if len(timestamp_list)>0:
+            timestamp_list[-1][1] = num_frames * TIME_RATE
     if vad_offset:  # add offset time in model with vad
         for i in range(len(timestamp_list)):
             timestamp_list[i][0] = timestamp_list[i][0] + vad_offset / 1000.0
@@ -141,6 +142,8 @@
     )
     for punc_stamp_text in punc_stamp_text_list:
         punc_id, timestamp, text = punc_stamp_text
+        if sentence_start is None and timestamp is not None:
+            sentence_start = timestamp[0]
         # sentence_text += text if text is not None else ''
         if text is not None:
             if "a" <= text[0] <= "z" or "A" <= text[0] <= "Z":
@@ -157,7 +160,7 @@
         punc_id = int(punc_id) if punc_id is not None else 1
         sentence_end = timestamp[1] if timestamp is not None else sentence_end
         sentence_text_seg = (
-            sentence_text_seg[:-1] if sentence_text_seg[-1] == " " else sentence_text_seg
+            sentence_text_seg[:-1] if sentence_text_seg and sentence_text_seg[-1] == " " else sentence_text_seg
         )
         if punc_id > 1:
             sentence_text += punc_list[punc_id - 2]
@@ -183,7 +186,7 @@
             sentence_text = ""
             sentence_text_seg = ""
             ts_list = []
-            sentence_start = timestamp[0] if timestamp is not None else sentence_start
+            sentence_start = None
     return res
 
 
@@ -272,4 +275,4 @@
             sentence_text = ""
             sentence_text_seg = ""
             ts_list = []
-    return res
\ No newline at end of file
+    return res

--
Gitblit v1.9.1