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