jhj0517 commited on
Commit
895b517
·
1 Parent(s): 28dc833

Fix LRC word translation

Browse files
Files changed (1) hide show
  1. modules/utils/subtitle_manager.py +15 -10
modules/utils/subtitle_manager.py CHANGED
@@ -8,7 +8,7 @@ import zlib
8
  from typing import Callable, List, Optional, TextIO, Union, Dict, Tuple
9
  from datetime import datetime
10
 
11
- from modules.whisper.data_classes import Segment
12
  from .files_manager import read_file
13
 
14
 
@@ -323,15 +323,20 @@ class WriteLRC(SubtitlesWriter):
323
  lines = block.strip()
324
  pattern = r'(\[.*?\])'
325
  parts = re.split(pattern, lines)
326
- start_str, sentence, end_str = [part.strip() for part in parts if part]
327
- start_str, end_str = start_str.replace("[", "").replace("]", ""), end_str.replace("[", "").replace("]", "")
328
- start, end = time_str_to_seconds(start_str, self.decimal_marker), time_str_to_seconds(end_str, self.decimal_marker)
329
-
330
- segments.append(Segment(
331
- start=start,
332
- end=end,
333
- text=sentence
334
- ))
 
 
 
 
 
335
 
336
  return segments
337
 
 
8
  from typing import Callable, List, Optional, TextIO, Union, Dict, Tuple
9
  from datetime import datetime
10
 
11
+ from modules.whisper.data_classes import Segment, Word
12
  from .files_manager import read_file
13
 
14
 
 
323
  lines = block.strip()
324
  pattern = r'(\[.*?\])'
325
  parts = re.split(pattern, lines)
326
+ parts = [part.strip() for part in parts if part]
327
+
328
+ for i, part in enumerate(parts):
329
+ sentence_i = i%2
330
+ if sentence_i == 1:
331
+ start_str, text, end_str = parts[sentence_i-1], parts[sentence_i], parts[sentence_i+1]
332
+ start_str, end_str = start_str.replace("[", "").replace("]", ""), end_str.replace("[", "").replace("]", "")
333
+ start, end = time_str_to_seconds(start_str, self.decimal_marker), time_str_to_seconds(end_str, self.decimal_marker)
334
+
335
+ segments.append(Segment(
336
+ start=start,
337
+ end=end,
338
+ text=text,
339
+ ))
340
 
341
  return segments
342