Update app.py
Browse files
app.py
CHANGED
@@ -13,7 +13,8 @@ from moviepy import (
|
|
13 |
CompositeAudioClip,
|
14 |
AudioFileClip,
|
15 |
concatenate_videoclips,
|
16 |
-
concatenate_audioclips
|
|
|
17 |
)
|
18 |
from gtts import gTTS
|
19 |
import subprocess
|
@@ -228,7 +229,21 @@ def process_entry(entry, i, video_width, video_height, add_voiceover, target_lan
|
|
228 |
logger.info("Methods in AudioFileClip:")
|
229 |
for method in dir(audio_clip):
|
230 |
logger.info(method)
|
231 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
232 |
|
233 |
return i, txt_clip, audio_segment
|
234 |
|
|
|
13 |
CompositeAudioClip,
|
14 |
AudioFileClip,
|
15 |
concatenate_videoclips,
|
16 |
+
concatenate_audioclips,
|
17 |
+
silence
|
18 |
)
|
19 |
from gtts import gTTS
|
20 |
import subprocess
|
|
|
229 |
logger.info("Methods in AudioFileClip:")
|
230 |
for method in dir(audio_clip):
|
231 |
logger.info(method)
|
232 |
+
desired_duration = entry["end"] - entry["start"]
|
233 |
+
|
234 |
+
# Log duration of the audio clip and the desired duration for debugging.
|
235 |
+
logger.debug(f"Audio clip duration: {audio_clip.duration}, Desired duration: {desired_duration}")
|
236 |
+
|
237 |
+
if audio_clip.duration < desired_duration:
|
238 |
+
# Pad with silence if audio is too short
|
239 |
+
silence_duration = desired_duration - audio_clip.duration
|
240 |
+
|
241 |
+
# Concatenate the original audio and silence
|
242 |
+
audio_clip = concatenate_audioclips([audio_clip, silence(duration=silence_duration)])
|
243 |
+
logger.info(f"Padded audio with {silence_duration} seconds of silence.")
|
244 |
+
|
245 |
+
# Set the audio_segment to the required duration.
|
246 |
+
audio_segment = audio_clip.with_start(entry["start"]).with_duration(desired_duration)
|
247 |
|
248 |
return i, txt_clip, audio_segment
|
249 |
|