From 55c09aeaa25b4bb88a50e09ba68fa6ff00a6d676 Mon Sep 17 00:00:00 2001
From: shixian.shi <shixian.shi@alibaba-inc.com>
Date: 星期一, 15 一月 2024 20:10:39 +0800
Subject: [PATCH] update readme, fix seaco bug

---
 funasr/utils/vad_utils.py |   19 ++++++++++++++++---
 1 files changed, 16 insertions(+), 3 deletions(-)

diff --git a/funasr/utils/vad_utils.py b/funasr/utils/vad_utils.py
index 58a5f89..f84e2b9 100644
--- a/funasr/utils/vad_utils.py
+++ b/funasr/utils/vad_utils.py
@@ -6,8 +6,8 @@
 	speech_lengths_list = []
 	for i, segment in enumerate(vad_segments):
 		
-		bed_idx = int(segment[0]*16)
-		end_idx = min(int(segment[1]*16), speech_lengths[0])
+		bed_idx = int(segment[0][0]*16)
+		end_idx = min(int(segment[0][1]*16), speech_lengths[0])
 		speech_i = speech[0, bed_idx: end_idx]
 		speech_lengths_i = end_idx-bed_idx
 		speech_list.append(speech_i)
@@ -15,4 +15,17 @@
 	feats_pad = pad_sequence(speech_list, batch_first=True, padding_value=0.0)
 	speech_lengths_pad = torch.Tensor(speech_lengths_list).int()
 	return feats_pad, speech_lengths_pad
-	
+
+
+def slice_padding_audio_samples(speech, speech_lengths, vad_segments):
+	speech_list = []
+	speech_lengths_list = []
+	for i, segment in enumerate(vad_segments):
+		bed_idx = int(segment[0][0] * 16)
+		end_idx = min(int(segment[0][1] * 16), speech_lengths)
+		speech_i = speech[bed_idx: end_idx]
+		speech_lengths_i = end_idx - bed_idx
+		speech_list.append(speech_i)
+		speech_lengths_list.append(speech_lengths_i)
+		
+	return speech_list, speech_lengths_list
\ No newline at end of file

--
Gitblit v1.9.1