Update app.py
Browse files
app.py
CHANGED
|
@@ -406,7 +406,7 @@ def create_subtitle_clip_pil(text, start_time, end_time, video_width, video_heig
|
|
| 406 |
logger.error(f"\u274c Failed to create subtitle clip: {e}")
|
| 407 |
return None
|
| 408 |
|
| 409 |
-
def process_entry(entry, i, tts_model, video_width, video_height, process_mode, target_language, font_path,
|
| 410 |
logger.debug(f"Processing entry {i}: {entry}")
|
| 411 |
error_message = None
|
| 412 |
|
|
@@ -427,7 +427,7 @@ def process_entry(entry, i, tts_model, video_width, video_height, process_mode,
|
|
| 427 |
speaker = entry.get("speaker", "default")
|
| 428 |
speaker_wav_path = f"speaker_{speaker}_sample.wav"
|
| 429 |
|
| 430 |
-
if
|
| 431 |
generate_voiceover_clone(entry['translated'], tts_model, desired_speed, target_language, speaker_wav_path, segment_audio_path)
|
| 432 |
|
| 433 |
else:
|
|
@@ -476,7 +476,7 @@ def add_transcript_voiceover(video_path, translated_json, output_path, process_m
|
|
| 476 |
## Need to implmenet backup option.
|
| 477 |
|
| 478 |
with concurrent.futures.ThreadPoolExecutor() as executor:
|
| 479 |
-
futures = [executor.submit(process_entry, entry, i, tts_model, video.w, video.h, process_mode, target_language, font_path,
|
| 480 |
for i, entry in enumerate(translated_json)]
|
| 481 |
|
| 482 |
results = []
|
|
|
|
| 406 |
logger.error(f"\u274c Failed to create subtitle clip: {e}")
|
| 407 |
return None
|
| 408 |
|
| 409 |
+
def process_entry(entry, i, tts_model, video_width, video_height, process_mode, target_language, font_path, speaker_sample_paths=None):
|
| 410 |
logger.debug(f"Processing entry {i}: {entry}")
|
| 411 |
error_message = None
|
| 412 |
|
|
|
|
| 427 |
speaker = entry.get("speaker", "default")
|
| 428 |
speaker_wav_path = f"speaker_{speaker}_sample.wav"
|
| 429 |
|
| 430 |
+
if process_mode>2 and speaker_wav_path and os.path.exists(speaker_wav_path):
|
| 431 |
generate_voiceover_clone(entry['translated'], tts_model, desired_speed, target_language, speaker_wav_path, segment_audio_path)
|
| 432 |
|
| 433 |
else:
|
|
|
|
| 476 |
## Need to implmenet backup option.
|
| 477 |
|
| 478 |
with concurrent.futures.ThreadPoolExecutor() as executor:
|
| 479 |
+
futures = [executor.submit(process_entry, entry, i, tts_model, video.w, video.h, process_mode, target_language, font_path, speaker_sample_paths)
|
| 480 |
for i, entry in enumerate(translated_json)]
|
| 481 |
|
| 482 |
results = []
|