Send completed bool with each segment
Completed bool represents if the segment is completely processed by the server Signed-off-by: makaveli10 <suryanvineet47@gmail.com>
This commit is contained in:
@@ -1001,7 +1001,7 @@ class ServeClientFasterWhisper(ServeClientBase):
|
||||
logging.error(f"[ERROR]: Failed to transcribe audio chunk: {e}")
|
||||
time.sleep(0.01)
|
||||
|
||||
def format_segment(self, start, end, text):
|
||||
def format_segment(self, start, end, text, completed=False):
|
||||
"""
|
||||
Formats a transcription segment with precise start and end times alongside the transcribed text.
|
||||
|
||||
@@ -1018,7 +1018,8 @@ class ServeClientFasterWhisper(ServeClientBase):
|
||||
return {
|
||||
'start': "{:.3f}".format(start),
|
||||
'end': "{:.3f}".format(end),
|
||||
'text': text
|
||||
'text': text,
|
||||
'completed': completed
|
||||
}
|
||||
|
||||
def update_segments(self, segments, duration):
|
||||
@@ -1058,7 +1059,7 @@ class ServeClientFasterWhisper(ServeClientBase):
|
||||
if s.no_speech_prob > self.no_speech_thresh:
|
||||
continue
|
||||
|
||||
self.transcript.append(self.format_segment(start, end, text_))
|
||||
self.transcript.append(self.format_segment(start, end, text_, completed=True))
|
||||
offset = min(duration, s.end)
|
||||
|
||||
# only process the segments if it satisfies the no_speech_thresh
|
||||
@@ -1067,7 +1068,8 @@ class ServeClientFasterWhisper(ServeClientBase):
|
||||
last_segment = self.format_segment(
|
||||
self.timestamp_offset + segments[-1].start,
|
||||
self.timestamp_offset + min(duration, segments[-1].end),
|
||||
self.current_out
|
||||
self.current_out,
|
||||
completed=False
|
||||
)
|
||||
|
||||
# if same incomplete segment is seen multiple times then update the offset
|
||||
@@ -1083,7 +1085,8 @@ class ServeClientFasterWhisper(ServeClientBase):
|
||||
self.transcript.append(self.format_segment(
|
||||
self.timestamp_offset,
|
||||
self.timestamp_offset + duration,
|
||||
self.current_out
|
||||
self.current_out,
|
||||
completed=True
|
||||
))
|
||||
self.current_out = ''
|
||||
offset = duration
|
||||
|
||||
Reference in New Issue
Block a user