Sabbah13 commited on
Commit
94f759f
1 Parent(s): 4380489

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +36 -8
app.py CHANGED
@@ -7,15 +7,43 @@ import whisperx
7
  import torch
8
 
9
  def convert_segments_to_text(data):
10
- segments = data['segments']
11
  result = []
12
- for segment in segments:
13
- speaker = segment['speaker']
14
- start = segment['start']
15
- end = segment['end']
16
- text = segment['text']
17
- formatted_text = f'{speaker} ({start} : {end}) : {text}'
18
- result.append(formatted_text)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
19
  return '\n'.join(result)
20
 
21
  st.title('Audio Transcription App')
 
7
  import torch
8
 
9
  def convert_segments_to_text(data):
 
10
  result = []
11
+ for segment in data['segments']:
12
+ words = segment['words']
13
+ current_speaker = None
14
+ current_start = None
15
+ current_end = None
16
+ current_text = []
17
+
18
+ for word_info in words:
19
+ word = word_info['word']
20
+ start = word_info['start']
21
+ end = word_info['end']
22
+ speaker = word_info['speaker']
23
+
24
+ if current_speaker is None:
25
+ current_speaker = speaker
26
+ current_start = start
27
+
28
+ if speaker == current_speaker:
29
+ current_text.append(word)
30
+ current_end = end
31
+ else:
32
+ # Finish current segment
33
+ formatted_text = f'{current_speaker} ({current_start} : {current_end}) : {" ".join(current_text)}'
34
+ result.append(formatted_text)
35
+
36
+ # Start new segment
37
+ current_speaker = speaker
38
+ current_start = start
39
+ current_end = end
40
+ current_text = [word]
41
+
42
+ # Append the last segment
43
+ if current_text:
44
+ formatted_text = f'{current_speaker} ({current_start} : {current_end}) : {" ".join(current_text)}'
45
+ result.append(formatted_text)
46
+
47
  return '\n'.join(result)
48
 
49
  st.title('Audio Transcription App')